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`