public class CrsWktDecoder extends AbstractWktDecoder<CoordinateReferenceSystem>
CoordinateReferenceSystem definitions in WKT.
The current implementation ensures that the postgis CRS WKT's are correctly interpreted. There are some minor differences with the OGC specification: "Coordinate Transformation Services (rev. 1.00)".
The implementation uses a recursive-decent parsing approach.
This class is not thread-safe.
| Modifier and Type | Field and Description |
|---|---|
private static CrsWktVariant |
CRS_TOKENS |
private int |
srid |
currentToken| Constructor and Description |
|---|
CrsWktDecoder()
Initiates a new
CrsWktDecoder that uses the CrsWktVariant. |
| Modifier and Type | Method and Description |
|---|---|
private CoordinateReferenceSystem<? extends Position> |
decode()
Determines the WKT variant and calls the according method to decode the WKT.
|
CoordinateReferenceSystem<? extends Position> |
decode(java.lang.String wkt,
int srid)
Decodes a WKT representation of a
CoordinateReferenceSystem. |
private <T extends CoordinateReferenceSystem> |
decodeAxis(Unit unit,
java.lang.Class<T> crsClass) |
private <P extends Position> |
decodeCompoundCrs() |
private Datum |
decodeDatum() |
private GeocentricCartesianCoordinateReferenceSystem |
decodeGeocentricCrs()
e * Currently not used in Postgis and also not implemented here!
|
private Geographic2DCoordinateReferenceSystem |
decodeGeographicCrs()
Implementation to decode a Geographic CRS.
|
private java.lang.String |
decodeName() |
private CrsId |
decodeOptionalAuthority() |
private CrsId |
decodeOptionalAuthority(int srid) |
private <T extends CoordinateReferenceSystem> |
decodeOptionalAxes(int num,
Unit unit,
java.lang.Class<T> crsClass) |
private Extension |
decodeOptionalExtension() |
private CrsParameter |
decodeOptionalParameter() |
private java.util.List<CrsParameter> |
decodeOptionalParameters() |
private double[] |
decodeOptionalToWGS84() |
private PrimeMeridian |
decodePrimem() |
private ProjectedCoordinateReferenceSystem |
decodeProjectedCrs()
Implementation to decode a Projected CRS.
|
private Projection |
decodeProjection() |
private Ellipsoid |
decodeSpheroid() |
private Unit |
decodeUnit(boolean isLinear) |
private VerticalCoordinateReferenceSystem |
decodeVertCS() |
private VerticalDatum |
decodeVertDatum() |
private <T extends CoordinateReferenceSystem> |
defaultCRS(Unit unit,
java.lang.Class<T> crsClass) |
decodeInt, decodeNumber, decodeText, getTokenizerPosition, getWktVariant, matchesCloseList, matchesElementSeparator, matchesOpenList, nextToken, setTokenizerprivate static final CrsWktVariant CRS_TOKENS
private int srid
public CrsWktDecoder()
CrsWktDecoder that uses the CrsWktVariant.public CoordinateReferenceSystem<? extends Position> decode(java.lang.String wkt, int srid)
CoordinateReferenceSystem.wkt - the WKT string to decodeCoordinateReferenceSystem that is encoded in the input WKT.private CoordinateReferenceSystem<? extends Position> decode()
CoordinateReferenceSystem object.private GeocentricCartesianCoordinateReferenceSystem decodeGeocentricCrs()
UnsupportedConversionException - Geocentric CRS is currently not implementedprivate Geographic2DCoordinateReferenceSystem decodeGeographicCrs()
GeographicCoordinateReferenceSystem that is decoded from the WKT.private ProjectedCoordinateReferenceSystem decodeProjectedCrs()
ProjectedCoordinateReferenceSystem that is decoded from the WKT.private <P extends Position> CompoundCoordinateReferenceSystem<P> decodeCompoundCrs()
private VerticalCoordinateReferenceSystem decodeVertCS()
private VerticalDatum decodeVertDatum()
private java.util.List<CrsParameter> decodeOptionalParameters()
private CrsParameter decodeOptionalParameter()
private Projection decodeProjection()
private <T extends CoordinateReferenceSystem> CoordinateSystemAxis[] decodeOptionalAxes(int num, Unit unit, java.lang.Class<T> crsClass)
private <T extends CoordinateReferenceSystem> CoordinateSystemAxis[] defaultCRS(Unit unit, java.lang.Class<T> crsClass)
private <T extends CoordinateReferenceSystem> CoordinateSystemAxis decodeAxis(Unit unit, java.lang.Class<T> crsClass)
private Unit decodeUnit(boolean isLinear)
private PrimeMeridian decodePrimem()
private Datum decodeDatum()
private double[] decodeOptionalToWGS84()
private Ellipsoid decodeSpheroid()
private CrsId decodeOptionalAuthority()
private Extension decodeOptionalExtension()
private CrsId decodeOptionalAuthority(int srid)
private java.lang.String decodeName()