Class LineStringBuilder
java.lang.Object
org.elasticsearch.common.geo.builders.ShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,org.elasticsearch.geometry.Geometry,LineStringBuilder>
org.elasticsearch.common.geo.builders.LineStringBuilder
- All Implemented Interfaces:
NamedWriteable
,Writeable
,org.elasticsearch.common.xcontent.ToXContent
,org.elasticsearch.common.xcontent.ToXContentObject
public class LineStringBuilder
extends ShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,org.elasticsearch.geometry.Geometry,LineStringBuilder>
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.common.geo.builders.ShapeBuilder
ShapeBuilder.Edge
Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
org.elasticsearch.common.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.common.xcontent.ToXContent.MapParams, org.elasticsearch.common.xcontent.ToXContent.Params
Nested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
Field Summary
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
ConstructorDescriptionLineStringBuilder(List<org.locationtech.jts.geom.Coordinate> coordinates)
Construct a new LineString.LineStringBuilder(CoordinatesBuilder coordinates)
Read from a stream. -
Method Summary
Modifier and TypeMethodDescriptionorg.elasticsearch.geometry.Geometry
build lucene geometry.org.locationtech.spatial4j.shape.jts.JtsGeometry
buildS4J()
Create a new Shape from this builder.close()
Closes the current lineString by adding the starting point as the end point.int
tracks number of dimensions for this shapeorg.elasticsearch.common.xcontent.XContentBuilder
toXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)
type()
get the shapes typeMethods inherited from class org.elasticsearch.common.geo.builders.ShapeBuilder
contentToWKT, coordinate, coordinate, coordinateListToWKT, coordinates, coordinates, coordinates, coordinatesToXcontent, debugEnabled, equals, getWriteableName, hashCode, intersection, intersections, jtsGeometry, 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 Details
-
TYPE
-
-
Constructor Details
-
LineStringBuilder
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:
IllegalArgumentException
- if there are less then two coordinates defined
-
LineStringBuilder
-
LineStringBuilder
Read from a stream.- Throws:
IOException
-
-
Method Details
-
toXContent
public org.elasticsearch.common.xcontent.XContentBuilder toXContent(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws IOException- Throws:
IOException
-
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
Description copied from class:ShapeBuilder
get the shapes type- Specified by:
type
in classShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,org.elasticsearch.geometry.Geometry,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,org.elasticsearch.geometry.Geometry,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,org.elasticsearch.geometry.Geometry,LineStringBuilder>
- Returns:
- new
Shape
defined by the builder
-
buildGeometry
public org.elasticsearch.geometry.Geometry buildGeometry()Description copied from class:ShapeBuilder
build lucene geometry.- Specified by:
buildGeometry
in classShapeBuilder<org.locationtech.spatial4j.shape.jts.JtsGeometry,org.elasticsearch.geometry.Geometry,LineStringBuilder>
- Returns:
- GeoPoint, double[][], Line, Line[], Polygon, Polygon[], Rectangle, Object[]
-