PostGIS में बिंदु और बहुभुज परतों का एक स्थानिक जुड़ाव कैसे करें?


13

मेरे पास घरों का प्रतिनिधित्व करने वाला एक बिंदु डेटासेट है जिसे मैं पार्सल लेयर के साथ जोड़ना चाहता हूं (अर्थात इसके पार्सल_आईडी असाइन करें)। ArcMap के साथ, मैं स्थानिक रूप से बहुभुजों को बिंदुओं में शामिल कर सकता हूं और निर्दिष्ट कर सकता हूं कि जुड़ने के लिए एक निश्चित खोज त्रिज्या है और निकटतम बहुभुज का उपयोग करें।

मैं पोस्टग्रेट्स के साथ यह प्रदर्शन करना चाहता हूं और सोच रहा था कि ऐसा करने का सबसे विवेकपूर्ण तरीका क्या है। मैं ST_contains का उपयोग नहीं कर सकता क्योंकि अंक सड़कों पर आते हैं और वास्तविक पार्सल पर नहीं। ST_contains के स्थान पर, निकटता जांच के लिए एक और फ़ंक्शन की अनुमति है?

update households h set parcel_id = p.parcel_id 
from parcels p where ST_contains(p.the_geom, h.xy);

जवाबों:


8

जो आप पूरा करना चाहते हैं, मुझे लगता है कि ST_DWithin काम करेगा। PostGIS साइट प्रलेखन से:

ST_DWithin - यदि जियोमेट्री एक दूसरे की निर्दिष्ट दूरी के भीतर हैं तो सही है। ज्यामिति इकाइयों के लिए स्थानिक संदर्भ में हैं और भूगोल इकाइयों के लिए मीटर में हैं और माप का उपयोग करने के लिए डिफ़ॉल्ट है।


यह शायद काम कर सकता है, लेकिन चाल एक उचित खोज सीमा निर्धारित करना है। इसे बहुत अधिक सेट करें और मुझे एक से अधिक मैच मिले, इसे बहुत कम सेट करें और मुझे कोई नहीं मिले। या इसे उच्च सेट करें और अतिरिक्त मैच रिकॉर्ड को त्याग दें।
एको
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.