QGIS में टोपोलॉजी बनाए रखते हुए बहुभुज फ़ाइल को सामान्य करना?


35

मेरे पास एक बहुभुज शेपफाइल है, जिसे मुझे सामान्य करने की आवश्यकता है। मैं पॉलिगन्स को कैसे सामान्य कर सकता हूं और यह सुनिश्चित कर सकता हूं कि "स्लॉवर्स" जैसी कोई सामयिक त्रुटियां नहीं हैं।

मैंने पहले ही कोशिश की:

  1. वेक्टर -> ज्यामिति उपकरण -> लाइनों के लिए बहुभुज
  2. वेक्टर -> ज्यामिति उपकरण -> सरल ज्यामितीय ... यहां मैं पहले से ही स्क्रीन पर देख सकता हूं, कि मैं अब ओवरलैप और अंतराल पैदा कर रहा हूं, फिर भी मैं कोशिश करता हूं
  3. वेक्टर -> ज्यामिति उपकरण -> पॉलीगोन के लिए लाइनें

और यहाँ प्रोग्राम एक त्रुटि दिखाता है और क्रैश हो जाता है

यहाँ छवि विवरण दर्ज करें


क्या इस मुद्दे पर कोई खबर है?
ओएस्टिन

दुर्भाग्य से: नहीं
कर्ट

जवाबों:


16

GRASS टोपोलॉजी-जागरूक है। आप पॉलीगॉन को सरल बनाने के लिए प्रोसेसिंग टूलबॉक्स से v.generalize का उपयोग कर सकते हैं और यदि इनपुट डेटा topologically सही है तो आउटपुट होगा।

यहाँ छवि विवरण दर्ज करें


जब मैं v.generalize चलाने की कोशिश करता हूं तो मुझे विंडोज-इंस्टॉलर का उपयोग करने में एक त्रुटि (लापता निर्भरता) मिल रही है। क्या एक विशेष विन्यास की आवश्यकता है?
कुर्त

@ कर्ट: स्टैंड-अलोन इंस्टॉलर? निश्चित नहीं है कि इसमें कौन सा GRASS संस्करण शामिल है। प्रसंस्करण सेटिंग्स में आप यह निर्दिष्ट कर सकते हैं कि GRASS 6.x या 7.x और जहाँ यह स्थापित है। इन कॉन्फ़िगरेशन को अपने सेटअप में समायोजित करने का प्रयास करें।
UnderDark

हां, मैं स्टैनलोन इंस्टॉलर का उपयोग करता हूं। आपकी सलाह के बाद, मैंने प्रसंस्करण विकल्पों के माध्यम से घास 7 को निष्क्रिय कर दिया और सही 6 तक मार्ग को कॉन्फ़िगर किया। यह रास्ता सही नहीं था, एक पुराने qgis से बचा हुआ। अब मैं v.generalize चला सकता हूं, लेकिन अंत में मुझे एक नई त्रुटि मिलती है: आउटपुट परत को खोला नहीं जा सका और अंत में संदेश कहता है कि घास सही ढंग से स्थापित और कॉन्फ़िगर किया गया लगता है। क्या आप मुझे कोई सुझाव या संकेत दे सकते हैं?
कर्ट

आमतौर पर इस त्रुटि का मतलब है कि कुछ स्तर पर जियोप्रोसेसिंग विफल रही। आपको उस लॉग की जांच करनी होगी जो कि उपकरण के चलने के दौरान उत्पन्न होता है, जहां त्रुटि होती है।
UnderDark

7

इसे @ अंडरडार्क के उत्तर के प्रारंभिक के रूप में देखा जा सकता है, जिससे आप सामान्य होने से पहले वेक्टर लेयर के टोपोलॉजी को साफ कर सकते हैं । GRASS में v.clean फ़ंक्शन होता है जिसमें परत को ठीक करने के लिए कई उपकरण होते हैं जैसे:

  • स्नैप करें जो 'स्नैप' लाइनों को निकटतम शीर्ष पर ले जाता है
  • rmdangle जो किसी भी कष्टप्रद खतरों को दूर करता है
  • rmdupl जो डुप्लिकेट किए गए ज्यामिति सुविधाओं को हटाता है

और नीचे दी गई छवि में दिखाए गए विभिन्न अन्य:

v.clean

आप उपकरण को चलाने के लिए कितना संवेदनशील चाहते हैं, इसके आधार पर आप थ्रेशोल्ड भी सेट कर सकते हैं। व्यक्तिगत रूप से, मैं किसी भी त्रुटि के लिए जाँच करने के लिए QGIS ( वेक्टर > ज्यामिति उपकरण > चेक ज्यामिति वैधता ) में चेक ज्यामिति वैधता सुविधा का उपयोग करता हूं और यदि कोई मौजूद है, तो v.clean में उपयुक्त उपकरण का उपयोग करें । एक बार त्रुटियों को हटा देने के बाद, आपको सामान्य स्थिति में बेहतर स्थिति में होना चाहिए।

उम्मीद है की यह मदद करेगा!


3
और अगर एक साधारण वर्टेक्स में कमी पर्याप्त है, तो v.generalize आवश्यक नहीं है, क्योंकि prune टूल ऐसा कर सकता है।
गाबोर फार्कस

@ अंडरडार्क के उत्तर के लिए आपके प्रारंभिक के लिए धन्यवाद, जिसमें मूल्यवान infos शामिल हैं। हालाँकि, मैंने इसे स्पष्ट रूप से नहीं कहा था, निश्चित रूप से बहुभुज-फ़ाइल, जिसे मैं सामान्य बनाना चाहता था, टोपोलॉजिकल रूप से साफ है - क्योंकि; कचरा - कचरा बाहर :-)]
कर्ट

@ कर्ट, जो समझ में आता है :)
यूसुफ

2

क्या आपने MapShaper का उपयोग करने की कोशिश की है ? मैंने इसे बहुभुज को सामान्य बनाने का एक अच्छा तरीका पाया है; यदि आप कोड डाउनलोड करना चाहते हैं तो एक ऑफ़लाइन संस्करण भी है।

एक विकल्प को जियोसन में परिवर्तित किया जा सकता है, और फिर TopoJson जो "टोपोलॉजी-संरक्षण आकार सरलीकरण" का समर्थन करता है, https://github.com/mbostock/topojson


Mapshaper की कोशिश की है, यह वास्तव में एक महान उपकरण है
Kurt

1
एक और टिप्पणी: जैसा कि शीर्षक कहता है: मैं क्यूगिस के साथ एक समाधान की तलाश कर रहा हूं। Mapshaper imho यह टोपोलॉजी (बहुत मजबूत सामान्यीकरण करके खुद के लिए सबूत!) को संरक्षित नहीं करता है। Topojson: यह जावास्क्रिप्ट-सोर्सकोड का एक समूह है, जो केवल प्रोग्रामर के लिए उपयोगी है
कर्ट

उफ़, QGIS केवल पहलू से चूक गया। QGIS हालांकि जियोजोन को संभालता है; मुझे आश्चर्य है कि अगर यह एक गैर-प्रोग्रामर के लिए सुलभ बनाने के लिए QGIS प्लगइन में टॉपोजेन सरलीकरण कार्यक्षमता में काम करने के लिए समझ में आता है
djq

मैं ऑफ-टॉपिक लाइन जारी रखता हूं: इस उद्देश्य के लिए OpenJUMP में एक उपकरण "सरलीकृत बहुभुज कवरेज" है।
user30184

0

मैंने सिर्फ एक त्वरित परीक्षण किया था, और वेक्टर मेनू के तहत "सरलीकृत ज्यामितीय उपकरण" टोपोलॉजी का सम्मान करने के लिए प्रतीत होता है। मैंने स्नैपिंग विकल्पों के तहत "सक्षम टोपोलॉजिकल एडिटिंग" की जाँच के साथ और उसके बिना कोशिश की है। क्या आपने यह कोशिश की है?

संपादित करें: यह सीधे बहुभुज फ़ाइल पर किया गया था - आप पहले लाइनों में क्यों बदलेंगे?


हाय डैरेन, संकेत के लिए धन्यवाद मैं इसे enablr सामयिक संपादन के साथ कोशिश करूँगा
कर्ट

1
हाय डैरेन, यह जो टोपोलॉजी का सम्मान नहीं करता है। "सक्षम सामयिक संपादन सक्षम करें" के साथ कोई अंतर नहीं है। मैं तर्क देता हूं, ऐसा इसलिए है क्योंकि सामान्यकरण एक नई परत उत्पन्न करता है , जबकि "टोपोलॉजिकल एडिटिंग सक्षम करें" केवल -selected - मौजूदा परतों के साथ काम करने लगता है। क्या आप बहुत मजबूत gerneralization कर सकते हैं और फिर से जांच कर सकते हैं, अगर आपके पास अभी एक सही टोपोलॉजी है? धन्यवाद
कर्ट

1
कर्ट; दिलचस्प। जब आप एक मजबूत सामान्यीकरण करते हैं, तो आप सही प्रतीत होते हैं! माफ़ कीजिये!
डैरेन कोप

1
यदि कोई भी खोज करेगा, तो यह चेकबॉक्स QGIS 2.2 (शायद पहले) में चला गया है।
lynxlynxlynx

0

यहाँ एक ही चर्चा है , मेरा अंतिम उत्तर यह है कि सागा आपके लिए काम करता है।


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