【问题标题】:How to filter points in range with geodjango如何使用 geodjango 过滤范围内的点
【发布时间】:2015-08-07 11:59:11
【问题描述】:

如果我有如下所示的 max-min lng 和 lat,我如何获取给定区域中的所有位置。

models.py

class Location(models.Model):
    ......
    point = models.PointField(srid=4326, blank=True, null=True)

现在如何使用给定的 min_lat、max_lat 和 min_lng、max_lng 过滤所有位置

观看次数

Location.objects.filter(point__in=())

【问题讨论】:

  • 我没有答案,但是搜索“信封”和/或“边界框”,您可能会看到一些技巧
  • @MikeT 你能看看我的trouble with GeoDjango吗?

标签: django postgis geodjango


【解决方案1】:

从这个问题中得到帮助GeoDjango within a NE, SW box 终于这样解决了

from django.contrib.gis.geos import Polygon

bbox = (-6.9145,53.5958,-5.6085,53.1023)#min_lat,max_lat,min_lng,max_lng 
geom = Polygon.from_bbox(bbox)

Location.objects.filter(point__within=geom)

【讨论】:

    猜你喜欢
    • 2015-12-23
    • 1970-01-01
    • 2014-12-30
    • 2019-12-09
    • 2014-04-18
    • 2019-01-11
    • 1970-01-01
    • 2016-12-23
    • 1970-01-01
    相关资源
    最近更新 更多