XYShapeDocValuesField (Lucene 10.5.0 core API)
Description: declaration: package: org.apache.lucene.document, class: XYShapeDocValuesField

Package org.apache.lucene.document

# Class XYShapeDocValuesField

java.lang.Object
org.apache.lucene.document.Field
org.apache.lucene.document.ShapeDocValuesField
org.apache.lucene.document.XYShapeDocValuesField

All Implemented Interfaces:
  `IndexableField`

public final class XYShapeDocValuesField extends ShapeDocValuesField
Concrete implementation of a `ShapeDocValuesField` for cartesian geometries.

This field should be instantiated through `XYShape.createDocValueField(String, XYLine)`

- `XYShape.createDocValueField(String, XYPolygon)` for indexing a cartesian polygon doc value field.
- `XYShape.createDocValueField(String, XYLine)` for indexing a cartesian linestring doc value.
- `XYShape.createDocValueField(String, float, float)` for indexing a x, y cartesian point doc value.
- `XYShape.createDocValueField(String, List)` for indexing a cartesian doc value from a precomputed tessellation.
- `XYShape.createDocValueField(String, BytesRef)` for indexing a cartesian doc value from existing encoding.

WARNING: Like `LatLonPoint`, vertex values are indexed with some loss of precision from the original `double` values.

See Also:
  - `PointValues`
  - `XYDocValuesField`
WARNING: This API is experimental and might change in incompatible ways in the next release.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class org.apache.lucene.document.Field

  `Field.Store`

- ## Field Summary

  ### Fields inherited from class org.apache.lucene.document.ShapeDocValuesField

  `FIELD_TYPE, shapeDocValues`

  ### Fields inherited from class org.apache.lucene.document.Field

  `fieldsData, name, type`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `XYShapeDocValuesField(String name, List<ShapeField.DecodedTriangle> tessellation)`
  constructs a `XYShapeDocValueField` from a pre-tessellated geometry
  `protected`
  `XYShapeDocValuesField(String name, BytesRef binaryValue)`
  Creates a `XYShapeDocValueField` from a given serialized value

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected double`
  `decodeX(int encoded)`
  decodes x coordinates from encoded space
  `protected double`
  `decodeY(int encoded)`
  decodes y coordinates from encoded space
  `XYRectangle`
  `getBoundingBox()`
  retrieves the bounding box for the geometry
  `XYPoint`
  `getCentroid()`
  retrieves the centroid location for the geometry

  ### Methods inherited from class org.apache.lucene.document.ShapeDocValuesField

  `fieldType, getHighestDimensionType, name, newGeometryQuery, numberOfTerms, stringValue, tokenStream`

  ### Methods inherited from class org.apache.lucene.document.Field

  `binaryValue, getCharSequenceValue, invertableType, numericValue, readerValue, setBytesValue, setBytesValue, setByteValue, setDoubleValue, setFloatValue, setIntValue, setLongValue, setReaderValue, setShortValue, setStringValue, setTokenStream, storedValue, tokenStreamValue, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### XYShapeDocValuesField

    protected XYShapeDocValuesField(String name, List<ShapeField.DecodedTriangle> tessellation)
    constructs a `XYShapeDocValueField` from a pre-tessellated geometry

  - ### XYShapeDocValuesField

    protected XYShapeDocValuesField(String name, BytesRef binaryValue)
    Creates a `XYShapeDocValueField` from a given serialized value

- ## Method Details

  - ### getCentroid

    public XYPoint getCentroid()
    retrieves the centroid location for the geometry
    Specified by:
      `getCentroid` in class `ShapeDocValuesField`

  - ### getBoundingBox

    public XYRectangle getBoundingBox()
    Description copied from class: `ShapeDocValuesField`
    retrieves the bounding box for the geometry
    Specified by:
      `getBoundingBox` in class `ShapeDocValuesField`

  - ### decodeX

    protected double decodeX(int encoded)
    Description copied from class: `ShapeDocValuesField`
    decodes x coordinates from encoded space
    Specified by:
      `decodeX` in class `ShapeDocValuesField`

  - ### decodeY

    protected double decodeY(int encoded)
    Description copied from class: `ShapeDocValuesField`
    decodes y coordinates from encoded space
    Specified by:
      `decodeY` in class `ShapeDocValuesField`