GeoDistance Filter

edit

See Geo Distance Filter

FilterBuilders.geoDistanceFilter("pin.location")
    .point(40, -70)
    .distance(200, DistanceUnit.KILOMETERS)
    .optimizeBbox("memory")                    // Can be also "indexed" or "none"
    .geoDistance(GeoDistance.ARC);            // Or GeoDistance.PLANE

Note that you can cache the result using GeoDistanceFilterBuilder#cache(boolean) method. See Caching.