Package org.apache.lucene.document
Class LatLonShapeBoundingBoxQuery
- java.lang.Object
-
- org.apache.lucene.search.Query
-
- org.apache.lucene.document.ShapeQuery
-
- org.apache.lucene.document.LatLonShapeBoundingBoxQuery
-
final class LatLonShapeBoundingBoxQuery extends ShapeQuery
Finds all previously indexed geo shapes that intersect the specified bounding box.The field must be indexed using
LatLonShape.createIndexableFields(java.lang.String, org.apache.lucene.geo.Polygon)
added per document.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
LatLonShapeBoundingBoxQuery.EncodedRectangle
Holds spatial logic for a bounding box that works in the encoded space
-
Field Summary
Fields Modifier and Type Field Description private LatLonShapeBoundingBoxQuery.EncodedRectangle
encodedRectangle
private Rectangle
rectangle
-
Fields inherited from class org.apache.lucene.document.ShapeQuery
field, queryRelation
-
-
Constructor Summary
Constructors Constructor Description LatLonShapeBoundingBoxQuery(java.lang.String field, ShapeField.QueryRelation queryRelation, Rectangle rectangle)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
equalsTo(java.lang.Object o)
class specific equals checkint
hashCode()
Override and implement query hash code properly in a subclass.protected boolean
queryContains(byte[] t, ShapeField.DecodedTriangle scratchTriangle)
returns true if the provided triangle is within the queryprotected boolean
queryIntersects(byte[] t, ShapeField.DecodedTriangle scratchTriangle)
returns true if the provided triangle intersects the queryprotected Component2D.WithinRelation
queryWithin(byte[] t, ShapeField.DecodedTriangle scratchTriangle)
Return the within relationship between the query and the indexed shape.protected PointValues.Relation
relateRangeBBoxToQuery(int minXOffset, int minYOffset, byte[] minTriangle, int maxXOffset, int maxYOffset, byte[] maxTriangle)
relates an internal node (bounding box of a range of triangles) to the target query Note: logic is specific to query type seeShapeQuery.relateRangeToQuery(byte[], byte[], org.apache.lucene.document.ShapeField.QueryRelation)
andShapeQuery.relateRangeToQuery(byte[], byte[], org.apache.lucene.document.ShapeField.QueryRelation)
java.lang.String
toString(java.lang.String field)
Prints a query to a string, withfield
assumed to be the default field and omitted.-
Methods inherited from class org.apache.lucene.document.ShapeQuery
createWeight, equals, getField, getQueryRelation, queryMatches, relateRangeToQuery, visit
-
Methods inherited from class org.apache.lucene.search.Query
classHash, rewrite, sameClassAs, toString
-
-
-
-
Field Detail
-
rectangle
private final Rectangle rectangle
-
encodedRectangle
private final LatLonShapeBoundingBoxQuery.EncodedRectangle encodedRectangle
-
-
Constructor Detail
-
LatLonShapeBoundingBoxQuery
LatLonShapeBoundingBoxQuery(java.lang.String field, ShapeField.QueryRelation queryRelation, Rectangle rectangle)
-
-
Method Detail
-
relateRangeBBoxToQuery
protected PointValues.Relation relateRangeBBoxToQuery(int minXOffset, int minYOffset, byte[] minTriangle, int maxXOffset, int maxYOffset, byte[] maxTriangle)
Description copied from class:ShapeQuery
relates an internal node (bounding box of a range of triangles) to the target query Note: logic is specific to query type seeShapeQuery.relateRangeToQuery(byte[], byte[], org.apache.lucene.document.ShapeField.QueryRelation)
andShapeQuery.relateRangeToQuery(byte[], byte[], org.apache.lucene.document.ShapeField.QueryRelation)
- Specified by:
relateRangeBBoxToQuery
in classShapeQuery
-
queryIntersects
protected boolean queryIntersects(byte[] t, ShapeField.DecodedTriangle scratchTriangle)
Description copied from class:ShapeQuery
returns true if the provided triangle intersects the query- Specified by:
queryIntersects
in classShapeQuery
-
queryContains
protected boolean queryContains(byte[] t, ShapeField.DecodedTriangle scratchTriangle)
Description copied from class:ShapeQuery
returns true if the provided triangle is within the query- Specified by:
queryContains
in classShapeQuery
-
queryWithin
protected Component2D.WithinRelation queryWithin(byte[] t, ShapeField.DecodedTriangle scratchTriangle)
Description copied from class:ShapeQuery
Return the within relationship between the query and the indexed shape.- Specified by:
queryWithin
in classShapeQuery
-
equalsTo
protected boolean equalsTo(java.lang.Object o)
Description copied from class:ShapeQuery
class specific equals check- Overrides:
equalsTo
in classShapeQuery
-
hashCode
public int hashCode()
Description copied from class:Query
Override and implement query hash code properly in a subclass. This is required so thatQueryCache
works properly.- Overrides:
hashCode
in classShapeQuery
- See Also:
Query.equals(Object)
-
-