List of usage examples for org.apache.lucene.spatial.bbox BBoxOverlapRatioValueSource BBoxOverlapRatioValueSource
public BBoxOverlapRatioValueSource(ShapeValuesSource rectValueSource, boolean isGeo, Rectangle queryExtent, double queryTargetProportion, double minSideLength)
From source file:org.apache.solr.legacy.BBoxStrategy.java
License:Apache License
/** Returns a similarity based on {@link BBoxOverlapRatioValueSource}. This is just a * convenience method. *///from www. j a va 2 s .co m public DoubleValuesSource makeOverlapRatioValueSource(Rectangle queryBox, double queryTargetProportion) { return new BBoxOverlapRatioValueSource(makeShapeValueSource(), ctx.isGeo(), queryBox, queryTargetProportion, 0.0); }
From source file:org.apache.solr.schema.BBoxField.java
License:Apache License
@Override protected ValueSource getValueSourceFromSpatialArgs(QParser parser, SchemaField field, SpatialArgs spatialArgs, String scoreParam, BBoxStrategy strategy) { if (scoreParam == null) { return null; }/*from www . j a v a 2 s . c o m*/ switch (scoreParam) { //TODO move these to superclass after LUCENE-5804 ? case OVERLAP_RATIO: double queryTargetProportion = 0.25;//Suggested default; weights towards target area String v = parser.getParam(PARAM_QUERY_TARGET_PROPORTION); if (v != null) queryTargetProportion = Double.parseDouble(v); double minSideLength = 0.0; v = parser.getParam(PARAM_MIN_SIDE_LENGTH); if (v != null) minSideLength = Double.parseDouble(v); return new BBoxOverlapRatioValueSource(strategy.makeShapeValueSource(), ctx.isGeo(), (Rectangle) spatialArgs.getShape(), queryTargetProportion, minSideLength); case AREA: return new ShapeAreaValueSource(strategy.makeShapeValueSource(), ctx, ctx.isGeo()); case AREA2D: return new ShapeAreaValueSource(strategy.makeShapeValueSource(), ctx, false); default: return super.getValueSourceFromSpatialArgs(parser, field, spatialArgs, scoreParam, strategy); } }