Class LineStringBuilder
- java.lang.Object
-
- org.elasticsearch.common.geo.builders.ShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,LineStringBuilder>
-
- org.elasticsearch.common.geo.builders.LineStringBuilder
-
- All Implemented Interfaces:
NamedWriteable
,Writeable
,ToXContent
,ToXContentObject
public class LineStringBuilder extends ShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,LineStringBuilder>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.elasticsearch.common.geo.builders.ShapeBuilder
ShapeBuilder.Edge, ShapeBuilder.Orientation
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
-
Field Summary
Fields Modifier and Type Field Description static GeoShapeType
TYPE
-
Fields inherited from class org.elasticsearch.common.geo.builders.ShapeBuilder
AUTO_INDEX_JTS_GEOMETRY, AUTO_VALIDATE_JTS_GEOMETRY, coordinates, DATELINE, FACTORY, INTERSECTION_ORDER, LOGGER, MULTI_POLYGON_MAY_OVERLAP, SPATIAL_CONTEXT, wrapdateline, ZERO_ZERO
-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
Constructor Summary
Constructors Constructor Description LineStringBuilder(java.util.List<org.locationtech.jts.geom.Coordinate> coordinates)
Construct a new LineString.LineStringBuilder(CoordinatesBuilder coordinates)
LineStringBuilder(StreamInput in)
Read from a stream.
-
Method Summary
Modifier and Type Method Description java.lang.Object
buildLucene()
build lucene geometry.org.locationtech.spatial4j.shape.jts.JtsGeometry
buildS4J()
Create a new Shape from this builder.LineStringBuilder
close()
Closes the current lineString by adding the starting point as the end point.int
numDimensions()
tracks number of dimensions for this shapeXContentBuilder
toXContent(XContentBuilder builder, ToXContent.Params params)
GeoShapeType
type()
get the shapes type-
Methods inherited from class org.elasticsearch.common.geo.builders.ShapeBuilder
contentToWKT, coordinate, coordinate, coordinateListToWKT, coordinates, coordinates, coordinates, coordinatesToXcontent, debugEnabled, equals, getWriteableName, hashCode, intersection, intersections, jtsGeometry, parse, readFromStream, shift, toString, toWKT, toXContent, writeCoordinateTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentObject
isFragment
-
-
-
-
Field Detail
-
TYPE
public static final GeoShapeType TYPE
-
-
Constructor Detail
-
LineStringBuilder
public LineStringBuilder(java.util.List<org.locationtech.jts.geom.Coordinate> coordinates)
Construct a new LineString. Per GeoJSON spec (http://geojson.org/geojson-spec.html#linestring) a LineString must contain two or more coordinates- Parameters:
coordinates
- the initial list of coordinates- Throws:
java.lang.IllegalArgumentException
- if there are less then two coordinates defined
-
LineStringBuilder
public LineStringBuilder(CoordinatesBuilder coordinates)
-
LineStringBuilder
public LineStringBuilder(StreamInput in) throws java.io.IOException
Read from a stream.- Throws:
java.io.IOException
-
-
Method Detail
-
toXContent
public XContentBuilder toXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
- Throws:
java.io.IOException
-
close
public LineStringBuilder close()
Closes the current lineString by adding the starting point as the end point. This will have no effect if starting and end point are already the same.
-
type
public GeoShapeType type()
Description copied from class:ShapeBuilder
get the shapes type- Specified by:
type
in classShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,LineStringBuilder>
- Returns:
- type of the shape
-
numDimensions
public int numDimensions()
Description copied from class:ShapeBuilder
tracks number of dimensions for this shape- Specified by:
numDimensions
in classShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,LineStringBuilder>
-
buildS4J
public org.locationtech.spatial4j.shape.jts.JtsGeometry buildS4J()
Description copied from class:ShapeBuilder
Create a new Shape from this builder. Since calling this method could change the defined shape. (by inserting new coordinates or change the position of points) the builder looses its validity. So this method should only be called once on a builder- Specified by:
buildS4J
in classShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,LineStringBuilder>
- Returns:
- new
Shape
defined by the builder
-
buildLucene
public java.lang.Object buildLucene()
Description copied from class:ShapeBuilder
build lucene geometry.- Specified by:
buildLucene
in classShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,LineStringBuilder>
- Returns:
- GeoPoint, double[][], Line, Line[], Polygon, Polygon[], Rectangle, Object[]
-
-