[[java-query-dsl-geo-distance-range-query]]
==== Geo Distance Range Query

See {ref}/query-dsl-geo-distance-range-query.html[Geo Distance Range Query]

[source,java]
--------------------------------------------------
QueryBuilder qb = geoDistanceRangeQuery("pin.location",         <1>
        new GeoPoint(40, -70))                                  <2>
    .from("200km")                                              <3>
    .to("400km")                                                <4>
    .includeLower(true)                                         <5>
    .includeUpper(false)                                        <6>
    .optimizeBbox("memory")                                     <7>
    .geoDistance(GeoDistance.ARC);                              <8>
--------------------------------------------------
<1> field
<2> center point
<3> starting distance from center point
<4> ending distance from center point
<5> include lower value means that `from` is `gt` when `false` or `gte` when `true`
<6> include upper value means that `to` is `lt` when `false` or `lte` when `true`
<7> optimize bounding box: `memory`, `indexed` or `none`
<8> distance computation mode: `GeoDistance.SLOPPY_ARC` (default), `GeoDistance.ARC` (slightly more precise but
    significantly slower) or `GeoDistance.PLANE` (faster, but inaccurate on long distances and close to the poles)