Class LatLonShapeDocValues

  • public final class LatLonShapeDocValues
    extends Object
    A concrete implementation of ShapeDocValues for storing binary doc value representation of LatLonShape geometries in a LatLonShapeDocValuesField

    Note: This class cannot be instantiated directly. See LatLonShape for factory API based on different geometries.

    WARNING: This API is experimental and might change in incompatible ways in the next release.
    • Field Detail

      • VERSION

        protected static final byte VERSION
        doc value format version; used to support bwc for any encoding changes
        See Also:
        Constant Field Values
      • shapeComparator

        protected final org.apache.lucene.document.ShapeDocValues.ShapeComparator shapeComparator
        the geometry comparator used to check relations
      • centroid

        protected final Geometry centroid
        the centroid of the shape docvalue
      • boundingBox

        protected final Geometry boundingBox
        the bounding box of the shape docvalue
    • Constructor Detail

      • LatLonShapeDocValues

        protected LatLonShapeDocValues​(List<ShapeField.DecodedTriangle> tessellation)
        protected ctor for instantiating a lat lon doc value based on a tessellation
      • LatLonShapeDocValues

        protected LatLonShapeDocValues​(BytesRef binaryValue)
        protected ctor for instantiating a lat lon doc value based on an already retrieved binary format
    • Method Detail

      • getCentroid

        public Point getCentroid()
      • getBoundingBox

        public Rectangle getBoundingBox()
      • computeCentroid

        protected Point computeCentroid()
      • computeBoundingBox

        protected Rectangle computeBoundingBox()
      • getEncoder

        protected org.apache.lucene.document.ShapeDocValues.Encoder getEncoder()
      • binaryValue

        protected BytesRef binaryValue()
        returns the encoded doc values field as a BytesRef
      • numberOfTerms

        public int numberOfTerms()
        Returns the number of terms (tessellated triangles) for this shape
      • getEncodedMinX

        public int getEncodedMinX()
        returns the min x value for the shape's bounding box
      • getEncodedMinY

        public int getEncodedMinY()
        returns the min y value for the shape's bounding box
      • getEncodedMaxX

        public int getEncodedMaxX()
        returns the max x value for the shape's bounding box
      • getEncodedMaxY

        public int getEncodedMaxY()
        returns the max y value for the shape's bounding box
      • getEncodedCentroidX

        protected int getEncodedCentroidX()
        Retrieves the encoded x centroid location for the geometry(s)
      • getEncodedCentroidY

        protected int getEncodedCentroidY()
        Retrieves the encoded y centroid location for the geometry(s)
      • getHighestDimension

        public ShapeField.DecodedTriangle.TYPE getHighestDimension()
        Retrieves the highest dimensional type (POINT, LINE, TRIANGLE) for computing the geometry(s) centroid
      • vLongSize

        protected static int vLongSize​(long i)
        Computes the variable Long size in bytes
      • vIntSize

        protected static int vIntSize​(int i)
        Computes the variable Integer size in bytes