public class BBoxStrategy extends SpatialStrategy
SpatialOperations and
 has a custom overlap relevancy. It is based on GeoPortal's SpatialClauseAdapter.
 
 Characteristics:
 
 
SpatialOperations but not Overlaps.Implementation:
 This uses 4 double fields for minX, maxX, minY, maxY
 and a boolean to mark a dateline cross. Depending on the particular SpatialOperations, there are a variety of range queries on DoublePoints to be
 done.
 The makeOverlapRatioValueSource(org.locationtech.spatial4j.shape.Rectangle, double)
 works by calculating the query bbox overlap percentage against the indexed
 shape overlap percentage. The indexed shape's coordinates are retrieved from
 LeafReader.getNumericDocValues(java.lang.String).
| Modifier and Type | Field and Description | 
|---|---|
| static FieldType | DEFAULT_FIELDTYPEpointValues, docValues, and nothing else. | 
| static LegacyFieldType | LEGACY_FIELDTYPEDeprecated.  | 
| static String | SUFFIX_MAXX | 
| static String | SUFFIX_MAXY | 
| static String | SUFFIX_MINX | 
| static String | SUFFIX_MINY | 
| static String | SUFFIX_XDL | 
ctx| Constructor and Description | 
|---|
| BBoxStrategy(org.locationtech.spatial4j.context.SpatialContext ctx,
            String fieldNamePrefix,
            FieldType fieldType)Creates this strategy. | 
| Modifier and Type | Method and Description | 
|---|---|
| Field[] | createIndexableFields(org.locationtech.spatial4j.shape.Shape shape) | 
| FieldType | getFieldType()Returns a field type representing the set of field options. | 
| DoubleValuesSource | makeDistanceValueSource(org.locationtech.spatial4j.shape.Point queryPoint,
                       double multiplier) | 
| DoubleValuesSource | makeOverlapRatioValueSource(org.locationtech.spatial4j.shape.Rectangle queryBox,
                           double queryTargetProportion)Returns a similarity based on  BBoxOverlapRatioValueSource. | 
| Query | makeQuery(SpatialArgs args) | 
| ShapeValuesSource | makeShapeValueSource()Provides access to each rectangle per document | 
| static BBoxStrategy | newInstance(org.locationtech.spatial4j.context.SpatialContext ctx,
           String fieldNamePrefix)Creates a new  BBoxStrategyinstance that usesDoublePointandDoublePoint.newRangeQuery(java.lang.String, double, double) | 
| static BBoxStrategy | newLegacyInstance(org.locationtech.spatial4j.context.SpatialContext ctx,
                 String fieldNamePrefix)Deprecated. 
 LegacyNumerics will be removed | 
getFieldName, getSpatialContext, makeDistanceValueSource, makeRecipDistanceValueSource, toStringpublic static FieldType DEFAULT_FIELDTYPE
@Deprecated public static LegacyFieldType LEGACY_FIELDTYPE
public static final String SUFFIX_MINX
public static final String SUFFIX_MAXX
public static final String SUFFIX_MINY
public static final String SUFFIX_MAXY
public static final String SUFFIX_XDL
public BBoxStrategy(org.locationtech.spatial4j.context.SpatialContext ctx,
                    String fieldNamePrefix,
                    FieldType fieldType)
fieldType is used to customize the indexing options of the 4 number fields, and to a lesser degree the XDL
 field too. Search requires pointValues (or legacy numerics), and relevancy requires docValues. If these features
 aren't needed then disable them.public static BBoxStrategy newInstance(org.locationtech.spatial4j.context.SpatialContext ctx, String fieldNamePrefix)
BBoxStrategy instance that uses DoublePoint and DoublePoint.newRangeQuery(java.lang.String, double, double)@Deprecated public static BBoxStrategy newLegacyInstance(org.locationtech.spatial4j.context.SpatialContext ctx, String fieldNamePrefix)
BBoxStrategy instance that uses LegacyDoubleField for backwards compatibilitypublic FieldType getFieldType()
public Field[] createIndexableFields(org.locationtech.spatial4j.shape.Shape shape)
createIndexableFields in class SpatialStrategypublic ShapeValuesSource makeShapeValueSource()
public DoubleValuesSource makeDistanceValueSource(org.locationtech.spatial4j.shape.Point queryPoint, double multiplier)
makeDistanceValueSource in class SpatialStrategypublic DoubleValuesSource makeOverlapRatioValueSource(org.locationtech.spatial4j.shape.Rectangle queryBox, double queryTargetProportion)
BBoxOverlapRatioValueSource. This is just a
 convenience method.public Query makeQuery(SpatialArgs args)
makeQuery in class SpatialStrategyCopyright © 2000-2019 Apache Software Foundation. All Rights Reserved.