Class SpatialFilterQParserPlugin

  • All Implemented Interfaces:
    AutoCloseable, SolrInfoBean, SolrMetricProducer, NamedListInitializedPlugin
    Direct Known Subclasses:
    SpatialBoxQParserPlugin

    public class SpatialFilterQParserPlugin
    extends QParserPlugin
    Creates a spatial Filter based on the type of spatial point used.

    The field must implement SpatialQueryable

    All units are in Kilometers

    Syntax:

    {!geofilt sfield=<location_field> pt=<lat,lon> d=<distance>}

    Parameters:

    • sfield - The field to filter on. Required.
    • pt - The point to use as a reference. Must match the dimension of the field. Required.
    • d - The distance in km. Required.
    The distance measure used currently depends on the FieldType. LatLonPointSpatialField defaults to using haversine, PointType defaults to Euclidean (2-norm).

    Examples:

    fq={!geofilt sfield=store pt=10.312,-20.556 d=3.5}
    fq={!geofilt sfield=store}&pt=10.312,-20&d=3.5
    fq={!geofilt}&sfield=store&pt=10.312,-20&d=3.5

    Note: The geofilt for LatLonPointSpatialField is capable of also producing scores equal to the computed distance from the point to the field, making it useful as a component of the main query or a boosting query.