我有一個地圖上有很多標記。我有兩個不相交的多邊形(Box)。我想獲得由這些多邊形覆蓋的所有標記。如何在MultiPolygon或多個多邊形上進行空間查找「包含」?
qb_1 = Polygon.from_bbox((-35.19153, -5.84512, -35.24054, -5.78552))
qb_2 = Polygon.from_bbox((64.16016, 50.26125, 61.80359, 52.04911))
q_box = MultiPolygon(qb_1, qb_2)
test1 = Marker.objects.filter(point__contained=qb_1)
test2 = Marker.objects.filter(point__contained=qb_2)
test = Marker.objects.filter(point__contained=q_box)
print "Count of Polygon 1 = %s" % test1.count()
print "Count of Polygon 2 = %s" % test2.count()
print "Count of MultiPolygon = %s" % test.count()
但結果是:
Count of Polygon 1 = 4
Count of Polygon 2 = 12
Count of MultiPolygon = 237
爲什麼多邊形1 + 2多邊形不等於的MultiPolygon?
現在我明白了!謝謝!但是我怎樣才能得到一個具有Polygon 1和Polygon 2覆蓋點的查詢集呢? – Anton
更新回答這個 – e4c5
嗯,它真的有用!我認爲|它是OR並且我得到qb_1或qb_2,但它工作正確,因爲我需要。謝謝! – Anton