Package org.geotools.geometry.jts
Class WKBReader
- Object
-
- WKBReader
-
public class WKBReader extends Object
Reads aGeometryfrom a byte stream in Postgis Extended Well-Known Binary format. Supports use of anInStream, which allows easy use with arbitrary byte stream sources.This class reads the format describe in
WKBWriter. It also partially handles the Extended WKB format used by PostGIS and SQLServer, by parsing and storing SRID values and supporting . The reader repairs structurally-invalid input (specifically, LineStrings and LinearRings which contain too few points have vertices added, and non-closed rings are closed).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:
for a formal format specification
-
-
Constructor Summary
Constructors Constructor Description WKBReader()WKBReader(GeometryFactory geometryFactory)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static byte[]hexToBytes(String hex)Converts a hexadecimal string to a byte array.Geometryread(byte[] bytes)Reads a singleGeometryin WKB format from a byte array.Geometryread(InStream is)protected PolygonreadCurvePolygon()protected GeometryreadGeometry()protected GeometryreadGeometry(int geometryType)protected PolygonreadPolygon()
-
-
-
Constructor Detail
-
WKBReader
public WKBReader()
-
WKBReader
public WKBReader(GeometryFactory geometryFactory)
-
-
Method Detail
-
hexToBytes
public static byte[] hexToBytes(String hex)
Converts a hexadecimal string to a byte array. The hexadecimal digit symbols are case-insensitive.- Parameters:
hex- a string containing hex digits- Returns:
- an array of bytes with the value of the hex string
-
read
public Geometry read(byte[] bytes) throws ParseException
Reads a singleGeometryin WKB format from a byte array.- Parameters:
bytes- the byte array to read from- Returns:
- the geometry read
- Throws:
ParseException- if the WKB is ill-formed
-
read
public Geometry read(InStream is) throws IOException, ParseException
- Parameters:
is- the stream to read from- Returns:
- the Geometry read
- Throws:
IOException- if the underlying stream creates an errorParseException- if the WKB is ill-formed
-
readGeometry
protected Geometry readGeometry() throws IOException, ParseException
- Throws:
IOExceptionParseException
-
readGeometry
protected Geometry readGeometry(int geometryType) throws IOException, ParseException
- Throws:
IOExceptionParseException
-
readPolygon
protected Polygon readPolygon() throws IOException, ParseException
- Throws:
IOExceptionParseException
-
readCurvePolygon
protected Polygon readCurvePolygon() throws IOException, ParseException
- Throws:
IOExceptionParseException
-
-