GeoQuerySet.distance(geom, **kwargs)
Deprecated since version 1.9: Use the Distance
function instead.
This method takes a geometry as a parameter, and attaches a distance
attribute to every model in the returned queryset that contains the distance (as a Distance
object) to the given geometry.
In the following example (taken from the GeoDjango distance tests), the distance from the Tasmanian city of Hobart to every other PointField
in the AustraliaCity
queryset is calculated:
>>> pnt = AustraliaCity.objects.get(name='Hobart').point >>> for city in AustraliaCity.objects.distance(pnt): print(city.name, city.distance) Wollongong 990071.220408 m Shellharbour 972804.613941 m Thirroul 1002334.36351 m Mittagong 975691.632637 m Batemans Bay 834342.185561 m Canberra 598140.268959 m Melbourne 575337.765042 m Sydney 1056978.87363 m Hobart 0.0 m Adelaide 1162031.83522 m Hillsdale 1049200.46122 m
Note
Because the distance
attribute is a Distance
object, you can easily express the value in the units of your choice. For example, city.distance.mi
is the distance value in miles and city.distance.km
is the distance value in kilometers. See Measurement Objects for usage details and the list of Supported units.
Please login to continue.