public class SimpleWKTShapeParser
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
SimpleWKTShapeParser.ShapeType
Enumerated type for Shapes
|
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
COMMA |
static java.lang.String |
EMPTY |
private static java.lang.String |
EOF |
private static java.lang.String |
EOL |
static java.lang.String |
LPAREN |
static java.lang.String |
NAN |
private static java.lang.String |
NUMBER |
static java.lang.String |
RPAREN |
static java.lang.String |
SPACE |
Modifier | Constructor and Description |
---|---|
private |
SimpleWKTShapeParser() |
Modifier and Type | Method and Description |
---|---|
private static void |
checkEOF(java.io.StreamTokenizer stream)
next word in the stream
|
private static boolean |
isNumberNext(java.io.StreamTokenizer stream)
checks if the next token is a number
|
private static java.lang.String |
nextCloser(java.io.StreamTokenizer stream)
checks if next token is a closing paren
|
private static java.lang.String |
nextCloserOrComma(java.io.StreamTokenizer stream)
expects either a closing LPAREN or comma as the next token
|
private static java.lang.String |
nextComma(java.io.StreamTokenizer stream)
expects a comma as next token
|
private static java.lang.String |
nextEmptyOrOpen(java.io.StreamTokenizer stream)
checks if next token is an EMPTY or open paren
|
private static double |
nextNumber(java.io.StreamTokenizer stream)
next number in the stream
|
private static java.lang.String |
nextOpener(java.io.StreamTokenizer stream)
expects an open RPAREN as the next toke
|
private static java.lang.String |
nextWord(java.io.StreamTokenizer stream)
next word in the stream
|
static java.lang.Object |
parse(java.lang.String wkt) |
private static Rectangle |
parseBBox(java.io.StreamTokenizer stream)
parses an ENVELOPE
|
private static void |
parseCoordinate(java.io.StreamTokenizer stream,
java.util.ArrayList lats,
java.util.ArrayList lons)
parses a single coordinate, w/ optional 3rd dimension
|
private static void |
parseCoordinates(java.io.StreamTokenizer stream,
java.util.ArrayList lats,
java.util.ArrayList lons)
Parses a list of points into latitude and longitude arraylists
|
static java.lang.Object |
parseExpectedType(java.lang.String wkt,
SimpleWKTShapeParser.ShapeType shapeType) |
private static java.lang.Object |
parseGeometry(java.io.StreamTokenizer stream,
SimpleWKTShapeParser.ShapeType shapeType)
parse geometry from the stream tokenizer
|
private static java.lang.Object[] |
parseGeometryCollection(java.io.StreamTokenizer stream)
parses a GEOMETRYCOLLECTION
|
private static Line |
parseLine(java.io.StreamTokenizer stream)
parses a LINESTRING
|
private static Line[] |
parseMultiLine(java.io.StreamTokenizer stream)
parses a MULTILINESTRING
|
private static double[][] |
parseMultiPoint(java.io.StreamTokenizer stream)
parses a MULTIPOINT type
|
private static Polygon[] |
parseMultiPolygon(java.io.StreamTokenizer stream)
parses a MULTIPOLYGON
|
private static double[] |
parsePoint(java.io.StreamTokenizer stream)
Parses a point as a double array
|
private static Polygon |
parsePolygon(java.io.StreamTokenizer stream)
parses a POLYGON
|
private static Polygon |
parsePolygonHole(java.io.StreamTokenizer stream)
parses the hole of a polygon
|
private static java.lang.String |
tokenString(java.io.StreamTokenizer stream)
next token in the stream
|
public static final java.lang.String EMPTY
public static final java.lang.String SPACE
public static final java.lang.String LPAREN
public static final java.lang.String RPAREN
public static final java.lang.String COMMA
public static final java.lang.String NAN
private static final java.lang.String NUMBER
private static final java.lang.String EOF
private static final java.lang.String EOL
public static java.lang.Object parse(java.lang.String wkt) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
public static java.lang.Object parseExpectedType(java.lang.String wkt, SimpleWKTShapeParser.ShapeType shapeType) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static java.lang.Object parseGeometry(java.io.StreamTokenizer stream, SimpleWKTShapeParser.ShapeType shapeType) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static double[] parsePoint(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static void parseCoordinates(java.io.StreamTokenizer stream, java.util.ArrayList lats, java.util.ArrayList lons) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static void parseCoordinate(java.io.StreamTokenizer stream, java.util.ArrayList lats, java.util.ArrayList lons) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static double[][] parseMultiPoint(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static Line parseLine(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static Line[] parseMultiLine(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static Polygon parsePolygonHole(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static Polygon parsePolygon(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static Polygon[] parseMultiPolygon(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static Rectangle parseBBox(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static java.lang.Object[] parseGeometryCollection(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static java.lang.String nextWord(java.io.StreamTokenizer stream) throws java.text.ParseException, java.io.IOException
java.text.ParseException
java.io.IOException
private static double nextNumber(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static java.lang.String tokenString(java.io.StreamTokenizer stream)
private static boolean isNumberNext(java.io.StreamTokenizer stream) throws java.io.IOException
java.io.IOException
private static java.lang.String nextEmptyOrOpen(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static java.lang.String nextCloser(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static java.lang.String nextComma(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static java.lang.String nextOpener(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static java.lang.String nextCloserOrComma(java.io.StreamTokenizer stream) throws java.io.IOException, java.text.ParseException
java.io.IOException
java.text.ParseException
private static void checkEOF(java.io.StreamTokenizer stream) throws java.text.ParseException, java.io.IOException
java.text.ParseException
java.io.IOException