# All Classes and Interfaces

Class
Description
AbstractPrefixTreeQuery
Base class for Lucene Queries on SpatialPrefixTree fields.
AbstractVisitingPrefixTreeQuery
Traverses a `SpatialPrefixTree` indexed field, using the template and visitor design patterns for subclasses to guide the traversal and collect matching documents.
AbstractVisitingPrefixTreeQuery.VNode
A visitor node/cell found via the query shape for `AbstractVisitingPrefixTreeQuery.VisitorTemplate`.
BBoxOverlapRatioValueSource
The algorithm is implemented as envelope on envelope (rect on rect) overlays rather than complex polygon on complex polygon overlays.
BBoxSimilarityValueSource
A base class for calculating a spatial relevance rank per document from a provided `ShapeValuesSource` returning a `Rectangle` per-document.
BBoxStrategy
A SpatialStrategy for indexing and searching Rectangles by storing its coordinates in numeric fields.
BytesRefIteratorTokenStream
A TokenStream used internally by `PrefixTreeStrategy`.
CachingDoubleValueSource
Caches the doubleVal of another value source in a HashMap so that it is computed only once.
Cell
Represents a grid cell.
CellCanPrune
Grid cells that share nothing with other cells when calling `Cell.getNextLevelCells(Shape)` might implement this interface.
CellIterator
An Iterator of SpatialPrefixTree Cells.
CellToBytesRefIterator
A reset'able `BytesRefIterator` wrapper around an `Iterator` of `Cell`s.
CompositeSpatialStrategy
A composite `SpatialStrategy` based on `RecursivePrefixTreeStrategy` (RPT) and `SerializedDVStrategy` (SDV).
CompositeVerifyQuery
A Query that considers an "indexQuery" to have approximate results, and a follow-on ShapeValuesSource is called to verify each hit from `TwoPhaseIterator.matches()`.
ContainsPrefixTreeQuery
Finds docs where its indexed shape `CONTAINS` the query shape.
DateRangePrefixTree
A PrefixTree for date ranges in which the levels of the tree occur at natural periods of time (e.g.
DistanceToShapeValueSource
The distance from a provided Point to a Point retrieved from an ShapeValuesSource.
DistanceValueSource
A DoubleValuesSource that returns the distance for a `PointVectorStrategy`.
Geo3dBinaryCodec
Geo3d implementation of `BinaryCodec`
Geo3dCircleShape
Specialization of a `Geo3dShape` which represents a `Circle`.
Geo3dDistanceCalculator
Geo3d implementation of `DistanceCalculator`
Geo3dPointShape
Specialization of a `Geo3dShape` which represents a `Point`.
Geo3dRectangleShape
Specialization of a `Geo3dShape` which represents a `Rectangle`.
Geo3dShape<T>
A Spatial4j Shape wrapping a `GeoAreaShape` ("Geo3D") -- a 3D planar geometry based Spatial4j Shape implementation.
Geo3dShapeFactory
Geo3d implementation of `S2ShapeFactory`
Geo3dSpatialContextFactory
Geo3d implementation of `SpatialContextFactory`
GeohashPrefixTree
A `SpatialPrefixTree` based on Geohashes.
GeohashPrefixTree.Factory
Factory for creating `GeohashPrefixTree` instances with useful defaults
HeatmapFacetCounter
Computes spatial facets in two dimensions as a grid of numbers.
HeatmapFacetCounter.Heatmap
Response structure
IntersectsPrefixTreeQuery
A Query matching documents that have an `SpatialRelation.INTERSECTS` (i.e.
IntersectsRPTVerifyQuery
A spatial Intersects predicate that distinguishes an approximated match from an exact match based on which cells are within the query shape.
LegacyCell
The base for the original two SPT's: Geohash and Quad.
NumberRangePrefixTree
A SpatialPrefixTree for single-dimensional numbers and number ranges of fixed precision values (not floating point).
NumberRangePrefixTree.NRShape
Base interface for `Shape`s this prefix tree supports.
NumberRangePrefixTree.UnitNRShape
A unit value Shape implemented as a stack of numbers, one for each level in the prefix tree.
NumberRangePrefixTreeStrategy
A PrefixTree based on Number/Date ranges.
NumberRangePrefixTreeStrategy.Facets
Facet response information
NumberRangePrefixTreeStrategy.Facets.FacetParentVal
Holds a block of detailLevel counts aggregated to their parent level.
PackedQuadPrefixTree
Uses a compact binary representation of 8 bytes to encode a spatial quad trie.
PackedQuadPrefixTree.Factory
Factory for creating `PackedQuadPrefixTree` instances with useful defaults.
PointPrefixTreeFieldCacheProvider
Implementation of `ShapeFieldCacheProvider` designed for `PrefixTreeStrategy`s that index points (AND ONLY POINTS!).
PointVectorStrategy
Simple `SpatialStrategy` which represents Points in two numeric fields.
PrefixTreeFacetCounter
Computes facets on cells for `PrefixTreeStrategy`.
PrefixTreeFacetCounter.FacetVisitor
A callback/visitor of facet counts.
PrefixTreeStrategy
An abstract SpatialStrategy based on `SpatialPrefixTree`.
QuadPrefixTree
A `SpatialPrefixTree` which uses a quad tree in which an indexed term will be generated for each cell, 'A', 'B', 'C', 'D'.
QuadPrefixTree.Factory
Factory for creating `QuadPrefixTree` instances with useful defaults
ReciprocalDoubleValuesSource
Transforms a DoubleValuesSource using the formula v = k / (v + k)
RecursivePrefixTreeStrategy
A `PrefixTreeStrategy` which uses `AbstractVisitingPrefixTreeQuery`.
S2PrefixTree
Spatial prefix tree for S2 Geometry.
S2PrefixTree.Factory
Factory for creating `S2PrefixTree` instances with useful defaults
S2ShapeFactory
Shape factory for Spatial contexts that support S2 geometry.
SerializedDVStrategy
A SpatialStrategy based on serializing a Shape stored into BinaryDocValues.
ShapeAreaValueSource
The area of a Shape retrieved from an ShapeValuesSource
ShapeFieldCache<T>
Bounded Cache of Shapes associated with docIds.
ShapeFieldCacheDistanceValueSource
A DoubleValuesSource that returns the spatial distance between an input point and a document's points in `ShapeFieldCacheProvider`.
ShapeFieldCacheProvider<T>
Provides access to a `ShapeFieldCache` for a given `LeafReader`.
ShapeValues
Iterator over `Shape` objects for an index segment
ShapeValuesPredicate
Compares a shape from a provided `ShapeValuesSource` with a given Shape and sees if it matches a given `SpatialOperation` (the predicate).
ShapeValuesSource
Produces `ShapeValues` per-segment
SpatialArgs
Principally holds the query `Shape` and the `SpatialOperation`.
SpatialArgsParser
Parses a string that usually looks like "OPERATION(SHAPE)" into a `SpatialArgs` object.
SpatialOperation
A predicate that compares a stored geometry to a supplied geometry.
SpatialPrefixTree
A spatial Prefix Tree, or Trie, which decomposes shapes into prefixed strings at variable lengths corresponding to variable precision.
SpatialPrefixTreeFactory
Abstract Factory for creating `SpatialPrefixTree` instances with useful defaults and passed on configurations defined in a Map.
SpatialStrategy
The SpatialStrategy encapsulates an approach to indexing and searching based on shapes.
TermQueryPrefixTreeStrategy
A basic implementation of `PrefixTreeStrategy` using a large `TermInSetQuery` of all the cells from `SpatialPrefixTree.getTreeCellIterator(org.locationtech.spatial4j.shape.Shape, int)`.
UnsupportedSpatialOperation
Exception thrown when the `SpatialStrategy` cannot implement the requested operation.
WithinPrefixTreeQuery
Finds docs where its indexed shape is `WITHIN` the query shape.