final class LatLonShapePolygonQuery extends ShapeQuery
Note:
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 |
|---|---|
private Component2D |
poly2D |
(package private) Polygon[] |
polygons |
field, queryRelation| Constructor and Description |
|---|
LatLonShapePolygonQuery(java.lang.String field,
ShapeField.QueryRelation queryRelation,
Polygon... polygons)
Creates a query that matches all indexed shapes to the provided polygons
|
| Modifier and Type | Method and Description |
|---|---|
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 provided triangle matches the query
|
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, equals, getField, getQueryRelation, relateRangeToQuery, visitclassHash, rewrite, sameClassAs, toStringfinal Polygon[] polygons
private final Component2D poly2D
public LatLonShapePolygonQuery(java.lang.String field,
ShapeField.QueryRelation queryRelation,
Polygon... polygons)
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)
ShapeQueryqueryMatches in class ShapeQueryprotected Component2D.WithinRelation queryWithin(byte[] t, ShapeField.DecodedTriangle scratchTriangle)
ShapeQueryqueryWithin in class ShapeQuerypublic java.lang.String toString(java.lang.String field)
Queryfield assumed to be the
default field and omitted.protected boolean equalsTo(java.lang.Object o)
equalsTo in class ShapeQuerypublic int hashCode()
QueryQueryCache works properly.hashCode in class ShapeQueryQuery.equals(Object)