com.vividsolutions.jts.io
Class WKBWriter

java.lang.Object
  extended bycom.vividsolutions.jts.io.WKBWriter

public class WKBWriter
extends java.lang.Object

Writes a Geometry into Well-Known Binary format. Supports use of an OutStream, which allows easy use with arbitary byte stream sinks.

The WKB format is specified in the OGC Simple Features for SQL specification. This implementation supports the extended WKB standard for representing 3-dimensional coordinates. The presence of 3D coordinates is signified by setting the high bit of the wkbType word.

Empty Points cannot be represented in WKB; an IllegalArgumentException will be thrown if one is written. The WKB specification does not support representing LinearRings; they will be written as LineStrings.

This class is designed to support reuse of a single instance to read multiple geometries. This class is not thread-safe; each thread should create its own instance.

See Also:
WKBReader

Constructor Summary
WKBWriter()
          Creates a writer that writes Geometrys with output dimension = 2 and BIG_ENDIAN byte order
WKBWriter(int outputDimension)
          Creates a writer that writes Geometrys with the given output dimension (2 or 3) and BIG_ENDIAN byte order
WKBWriter(int outputDimension, int byteOrder)
          Creates a writer that writes Geometrys with the given output dimension (2 or 3) and byte order
 
Method Summary
static java.lang.String bytesToHex(byte[] bytes)
           
 byte[] write(Geometry geom)
          Writes a Geometry into a byte array.
 void write(Geometry geom, OutStream os)
          Writes a Geometry to an OutStream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WKBWriter

public WKBWriter()
Creates a writer that writes Geometrys with output dimension = 2 and BIG_ENDIAN byte order


WKBWriter

public WKBWriter(int outputDimension)
Creates a writer that writes Geometrys with the given output dimension (2 or 3) and BIG_ENDIAN byte order

Parameters:
outputDimension - the dimension to output (2 or 3)

WKBWriter

public WKBWriter(int outputDimension,
                 int byteOrder)
Creates a writer that writes Geometrys with the given output dimension (2 or 3) and byte order

Parameters:
outputDimension - the dimension to output (2 or 3)
byteOrder - the byte ordering to use
Method Detail

bytesToHex

public static java.lang.String bytesToHex(byte[] bytes)

write

public byte[] write(Geometry geom)
Writes a Geometry into a byte array.

Parameters:
geom - the geometry to write
Returns:
the byte array containing the WKB

write

public void write(Geometry geom,
                  OutStream os)
           throws java.io.IOException
Writes a Geometry to an OutStream.

Parameters:
geom - the geometry to write
os - the out stream to write to
Throws:
java.io.IOException - if an I/O error occurs