Got it. So what you want to do is a list comprehension over the geometry object, which *should* give you individual geometries is what it sounds like. Then you can calculate distance() from each of these. Something like this?
interesting_point = Point(x, y) collection = result.geom min_dist = min([g.distance(interesting_point) for g in collection]) or for every geometrycollection in a queryset: result = MyModel.objects.all() min_dist = min([min([g.distance(interesting_point) for g in coll]) for coll in result]) Brute force and thus a bit slow, but it should work if I understand you correctly... -- Jeff On Tue, Jan 31, 2012 at 8:45 PM, Alex Kopp <loafer...@gmail.com> wrote: > Here's a more concrete example, say I am storing shapes of all > countries. Now, the US can't be stored in one polygon (we have hawaii and > alaska), therefore I have to store the many polygons in one > geometrycollection. > > Now, say I have another point on the map, I would like to know how ar it > is from ANY of the polygons... > > > On Tue, Jan 31, 2012 at 8:41 PM, Alex Kopp <loafer...@gmail.com> wrote: > >> Perhaps I didn't explain it well, Jeff. I am just trying to get the >> smallest distance from one point to any of the points, lines, or polygons >> inside of a queryset. The data I am receiving from the queryset is a >> geometrycollection already... That is how it is being stored in the >> database. >> >> On Tue, Jan 31, 2012 at 8:36 PM, Jeff Heard >> <jefferson.r.he...@gmail.com>wrote: >> >>> You should be able to create a geometrycollection object from a queryset >>> (you may have to use a list comprehension for this), then calculate the >>> centroid and take the distance from that. Taking the distance from the edge >>> should only be a little more >>> Complicated. Check the django GEOS API docs For complete details >>> >>> >>> >>> On Jan 31, 2012, at 6:36 PM, Loafer <loafer...@gmail.com> wrote: >>> >>> > I have a model that currently stores a Geographic Point (Using Django >>> > GIS (GeoDjango)) and another model that has a field to store a >>> > geometry collection (A collection of polygons, lines, and or points). >>> > >>> > I am trying to find the distance from the point to any one of the >>> > shapes in the geometry collection. Apparently the distance function >>> > only works on single shapes, not a collection. Are there any >>> > workarounds to this? >>> > >>> > Any help is appreciated. >>> > >>> > Thanks. >>> > >>> > -- >>> > You received this message because you are subscribed to the Google >>> Groups "Django users" group. >>> > To post to this group, send email to django-users@googlegroups.com. >>> > To unsubscribe from this group, send email to >>> django-users+unsubscr...@googlegroups.com. >>> > For more options, visit this group at >>> http://groups.google.com/group/django-users?hl=en. >>> > >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Django users" group. >>> To post to this group, send email to django-users@googlegroups.com. >>> To unsubscribe from this group, send email to >>> django-users+unsubscr...@googlegroups.com. >>> For more options, visit this group at >>> http://groups.google.com/group/django-users?hl=en. >>> >>> >> > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To post to this group, send email to django-users@googlegroups.com. > To unsubscribe from this group, send email to > django-users+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/django-users?hl=en. > -- You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com. To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-users?hl=en.