Class CircleBuilder

java.lang.Object
org.opensearch.common.geo.builders.ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
org.opensearch.common.geo.builders.CircleBuilder
All Implemented Interfaces:
org.opensearch.core.common.io.stream.NamedWriteable, org.opensearch.core.common.io.stream.Writeable, org.opensearch.core.xcontent.ToXContent, org.opensearch.core.xcontent.ToXContentObject

public class CircleBuilder extends ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
Builds a circle geometry
Opensearch.internal:
  • Field Details

    • FIELD_RADIUS

      public static final org.opensearch.core.ParseField FIELD_RADIUS
    • TYPE

      public static final GeoShapeType TYPE
  • Constructor Details

    • CircleBuilder

      public CircleBuilder()
      Creates a circle centered at [0.0, 0.0]. Center can be changed by calling center(Coordinate) later.
    • CircleBuilder

      public CircleBuilder(org.opensearch.core.common.io.stream.StreamInput in) throws IOException
      Read from a stream.
      Throws:
      IOException
  • Method Details

    • writeTo

      public void writeTo(org.opensearch.core.common.io.stream.StreamOutput out) throws IOException
      Specified by:
      writeTo in interface org.opensearch.core.common.io.stream.Writeable
      Overrides:
      writeTo in class ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
      Throws:
      IOException
    • center

      public CircleBuilder center(org.locationtech.jts.geom.Coordinate center)
      Set the center of the circle
      Parameters:
      center - coordinate of the circles center
      Returns:
      this
    • center

      public CircleBuilder center(double lon, double lat)
      set the center of the circle
      Parameters:
      lon - longitude of the center
      lat - latitude of the center
      Returns:
      this
    • center

      public org.locationtech.jts.geom.Coordinate center()
      Get the center of the circle
    • radius

      public CircleBuilder radius(String radius)
      Set the radius of the circle. The String value will be parsed by DistanceUnit
      Parameters:
      radius - Value and unit of the circle combined in a string
      Returns:
      this
    • radius

      public CircleBuilder radius(DistanceUnit.Distance radius)
      Set the radius of the circle
      Parameters:
      radius - radius of the circle (see DistanceUnit.Distance)
      Returns:
      this
    • radius

      public CircleBuilder radius(double radius, String unit)
      Set the radius of the circle
      Parameters:
      radius - value of the circles radius
      unit - unit name of the radius value (see DistanceUnit)
      Returns:
      this
    • radius

      public CircleBuilder radius(double radius, DistanceUnit unit)
      Set the radius of the circle
      Parameters:
      radius - value of the circles radius
      unit - unit of the radius value (see DistanceUnit)
      Returns:
      this
    • radius

      public double radius()
      Get the radius of the circle without unit
    • unit

      public DistanceUnit unit()
      Get the radius unit of the circle
    • toXContent

      public org.opensearch.core.xcontent.XContentBuilder toXContent(org.opensearch.core.xcontent.XContentBuilder builder, org.opensearch.core.xcontent.ToXContent.Params params) throws IOException
      Throws:
      IOException
    • buildS4J

      public org.locationtech.spatial4j.shape.Circle 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 class ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
      Returns:
      new Shape defined by the builder
    • buildGeometry

      public org.opensearch.geometry.Circle buildGeometry()
      Description copied from class: ShapeBuilder
      build lucene geometry.
      Specified by:
      buildGeometry in class ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
      Returns:
      GeoPoint, double[][], Line, Line[], Polygon, Polygon[], Rectangle, Object[]
    • type

      public GeoShapeType type()
      Description copied from class: ShapeBuilder
      get the shapes type
      Specified by:
      type in class ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
      Returns:
      type of the shape
    • toWKT

      public String toWKT()
      Overrides:
      toWKT in class ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
    • numDimensions

      public int numDimensions()
      Description copied from class: ShapeBuilder
      tracks number of dimensions for this shape
      Specified by:
      numDimensions in class ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class ShapeBuilder<org.locationtech.spatial4j.shape.Circle,org.opensearch.geometry.Circle,CircleBuilder>