final class LatLonShapeBoundingBoxQuery extends ShapeQuery
The field must be indexed using
LatLonShape.createIndexableFields(java.lang.String, org.apache.lucene.geo.Polygon) added per document.
| Modifier and Type | Field and Description |
|---|---|
(package private) Rectangle |
rectangle |
(package private) Rectangle2D |
rectangle2D |
field, queryRelation| Constructor and Description |
|---|
LatLonShapeBoundingBoxQuery(java.lang.String field,
ShapeField.QueryRelation queryRelation,
double minLat,
double maxLat,
double minLon,
double maxLon) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(java.lang.Object o)
Override and implement query instance equivalence properly in a subclass.
|
protected boolean |
equalsTo(java.lang.Object o) |
int |
hashCode()
Override and implement query hash code properly in a subclass.
|
protected boolean |
queryMatches(byte[] t,
ShapeField.DecodedTriangle scratchTriangle,
ShapeField.QueryRelation queryRelation)
returns true if the query matches the encoded triangle
|
protected 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
see
ShapeQuery.relateRangeToQuery(byte[], byte[], org.apache.lucene.document.ShapeField.QueryRelation) and ShapeQuery.relateRangeToQuery(byte[], byte[], org.apache.lucene.document.ShapeField.QueryRelation) |
java.lang.String |
toString(java.lang.String field)
Prints a query to a string, with
field assumed to be the
default field and omitted. |
createWeight, getField, getQueryRelation, relateRangeToQuery, visitclassHash, rewrite, sameClassAs, toStringfinal Rectangle rectangle
final Rectangle2D rectangle2D
public LatLonShapeBoundingBoxQuery(java.lang.String field,
ShapeField.QueryRelation queryRelation,
double minLat,
double maxLat,
double minLon,
double maxLon)
protected PointValues.Relation relateRangeBBoxToQuery(int minXOffset, int minYOffset, byte[] minTriangle, int maxXOffset, int maxYOffset, byte[] maxTriangle)
ShapeQueryShapeQuery.relateRangeToQuery(byte[], byte[], org.apache.lucene.document.ShapeField.QueryRelation) and ShapeQuery.relateRangeToQuery(byte[], byte[], org.apache.lucene.document.ShapeField.QueryRelation)relateRangeBBoxToQuery in class ShapeQueryprotected boolean queryMatches(byte[] t,
ShapeField.DecodedTriangle scratchTriangle,
ShapeField.QueryRelation queryRelation)
queryMatches in class ShapeQueryprotected Component2D.WithinRelation queryWithin(byte[] t, ShapeField.DecodedTriangle scratchTriangle)
ShapeQueryqueryWithin in class ShapeQuerypublic boolean equals(java.lang.Object o)
QueryQueryCache works properly.
Typically a query will be equal to another only if it's an instance of
the same class and its document-filtering properties are identical that other
instance. Utility methods are provided for certain repetitive code.equals in class ShapeQueryQuery.sameClassAs(Object),
Query.classHash()protected boolean equalsTo(java.lang.Object o)
equalsTo in class ShapeQuerypublic int hashCode()
QueryQueryCache works properly.hashCode in class ShapeQueryQuery.equals(Object)