पॉलीगन्स की पहचान कैसे करें "ध्वज" स्लिवर त्रुटियों के साथ


12

ArcMap में काम करते हुए, मैं एक बहुभुज परत में त्रुटियों के पार आया हूं जिसे मैं "फ्लैग स्लिवर्स" कहूंगा (पार्सल में समान भाषा से लिया गया "फ्लैग लॉट")। ये स्लिवर पॉलीगॉन (नीचे की छवि देखें) आमतौर पर केवल एक अतिरिक्त नोड से बना होता है जिसे उपयोगकर्ता ने गलती से जोड़ा है।

नीचे की छवियों में, "झंडा" और "फ्लैगपोल" एक एकल-भाग की विशेषता है, जहां "फ्लैगपोल" केवल खुद को ओवरलैप करता है। बाएं हाथ की छवि में कुल 5 नोड हैं।

साधारण झंडा यहाँ छवि विवरण दर्ज करें

जब अकेले देखा जाता है तो त्रुटियां बहुत स्पष्ट होती हैं, लेकिन जब कई बहुभुज समीप होते हैं, तो उन्हें देखना लगभग असंभव होता है क्योंकि वे 2 बहुभुजों के बीच की सीमा प्रतीत होती हैं।

यह संभावना इसलिए होती है क्योंकि वे एक आकृति आधारित संपादक का उपयोग कर रहे हैं, और इसलिए मैं भविष्य में ऐसा होने से रोकने के लिए किसी भी टोपोलॉजी-आधारित संपादन नियम को लागू नहीं कर सकता।

क्या किसी के पास इस प्रकार की त्रुटियों को पहचानने और हल करने का एक तरीका है? मैं पहचान और संकल्प दोनों की एक स्वचालित पद्धति को प्राथमिकता दूंगा क्योंकि फील्ड उपयोगकर्ता वही हैं जिन्होंने त्रुटियां पैदा की हैं, लेकिन मैं उनके बाद भी सफाई कर रहा हूं। धन्यवाद।


3
मुझे आश्चर्य है कि एशरी लाइन फीचर्स के लिए आत्म-प्रतिच्छेदन नियम क्यों प्रदान करता है, लेकिन बहुभुज के लिए नहीं।
कर्क कुक्केंडल

क्या चेक ज्यामिति उपकरण उन्हें खोजता है?
mkennedy

दंगल और ओवरशूट पर भी सर्च करें। दोनों ने कुछ हथियारों को लाया, लेकिन पॉलीगन्स के बजाय पॉलीइन्स के लिए वर्तमान और कई कुछ भी नहीं।
mkennedy

रयान, क्या आपके लिए अपने डेटा के सबसेट की आपूर्ति करना संभव होगा? इसके अलावा, क्या आपने "चेक ज्यामिति" टूल के बारे में mkennedy की टिप्पणी की जांच की है?
एलन अदैर

Arcmap का क्या संस्करण?
कर्क कुक्केंडल

जवाबों:


5

यदि आपके पास सुरक्षित Fme टूल तक पहुंच है, तो आपको स्पाइक-रिमूवर नामक ट्रांसफार्मर उपयोगी मिलेगा, इसे एक रूप दें। आप SAFE FME का डाउनलोड करने योग्य सीमित संस्करण आज़मा सकते हैं या "ArcGIS के लिए FME एक्सटेंशन" के लिए अपने आर्कगिस लाइसेंस की जाँच कर सकते हैं

http://docs.safe.com/fme/html/FME_Transformers/Default.htm#Transformers/spikeremover.htm

http://cdn.safe.com/resources/fme/FME-Transformer-Reference-Guide.pdf


मैं स्पाइक को साफ करने के लिए आर्कगिस डेटा इंटरॉप एक्सटेंशन के भीतर स्पाइकमेवर का सफलतापूर्वक उपयोग करने में सक्षम था। इसमें आउटपुट भी होते हैं जो आपको अपरिवर्तित, परिवर्तित, और फ़्लैग्ड (स्पाइक्स) विशेषताओं को निर्दिष्ट करने की अनुमति देते हैं। ये सभी स्पाइक्स वाले फीचर्स की पहचान करने में वास्तव में बहुत आसान थे, और एक नई "स्पाइकलेस" लेयर बनाना बहुत आसान था, बस दोनों अपरिवर्तित और परिवर्तित आउटपुट को एक ही लेयर में पोस्ट करके, और एक क्यूसी लेयर को "फ्लैग्ड" आउटपुट दिया गया। आगे के निरीक्षण के लिए। esri.com/software/arcgis/extensions/datainteroperability/…
20:30 पर रयानKalton

2

मुझे यकीन नहीं है कि आपकी समस्या कहाँ होती है, या जहाँ आपको इससे बचने / ठीक करने की संभावना है। लेकिन मैंने अपने एसडीई-डेटाबेस में इसे बहुत देखा है, हालांकि एसडीई में ज्यामिति हमेशा सही होनी चाहिए। हमारे मामले में ऐसा इसलिए था क्योंकि हमने एसडीओ में आर्कओब्जेक्ट्स का उपयोग करके आकार-प्रकार का आयात किया था। जब ज्योमेट्रीज़ को स्टोर किया जाता था तो वे एसडीई के ग्रिड में तड़क जाते थे और इस तरह आपके द्वारा बताए गए स्लॉवर्स के साथ गलत जियोमेट्रीज बनाते थे जब जियोमेट्री एक पतली स्पाइक होती थी। यह इसलिए है क्योंकि शेपफाइल्स में निर्देशांक और एसडीई के लिए एक मोटे ग्रिड के लिए पूर्ण डबल परिशुद्धता है।

हमारा समाधान ज्यामिति को ठीक करने के लिए था जब वे इसके द्वारा आयात किए गए थे
। 1. ज्यामिति के स्थानिक संदर्भ को आकृति
एसडीएफ से संबंधित एसडीई फीचर वर्ग के स्थानिक संदर्भ में सेट करें। ज्यामितीय को स्थानिक संदर्भ में स्नैप करें (IGeometry.SnapToSpatialReference () )
3. सेट ITopologicalOperator2.IsKnownSimple = false (महत्वपूर्ण, अन्यथा सरलीकृत कुछ भी नहीं करता है)
4. कुछ सरल ऑपरेशन करें। बहुभुजों के लिए हमने IPolygon.SimplifyPreserveFromTo () का उपयोग किया


2

आर्कमैप 9.3.1 के साथ, मैं इस फ़ील्ड की गणना करने के लिए फ़ील्ड कैलकुलेटर में फ़्लैग (या शायद फ़्लैग्लैग?) नामक फ़ील्ड जोड़ूंगा और VBA कोड का उपयोग करूंगा।

VBA कोड ITopologicalOperator3 के रूप में एक चर को मंद कर देगा और इसे आकृति क्षेत्र में सेट कर देगा।

यह तो नहीं तो सरल IsSimpleEx विधि कहेंगे

EsriNonSimpleEnum पर ध्वज फ़ील्ड मान सेट करें । संभवत: आप जिस त्रुटि से चिंतित हैं वह वापस आ जाएगी esriNonSimpleSelfIntersections

10.0 के साथ कैलकुलेटर में अजगर के साथ ऐसा करने का एक तरीका हो सकता है (?) ... मुझे यकीन नहीं है। मैं ऐड-इन कमांड का उपयोग करूंगा। IMO Esri को क्षेत्र कैलकुलेटर में c # के लिए समर्थन प्रदान करना चाहिए। आखिरकार, c # कंपाइलर .NET फ्रेमवर्क के हिस्से के रूप में स्थापित है।

अपडेट करें

यदि आप यहाँ क्लिक किए गए कोड को ध्वज डंडे लगा सकते हैं यदि आप "Left_OID" = "Right_OID"परिणामस्वरूप पॉलीलाइन फीचरलेयर में एक परिभाषा अभिव्यक्ति लागू करते हैं ।


1

यह पायथन स्क्रिप्ट एक आसान उपकरण है

शेपफाइल्स से स्लिवर पॉलीगन्स को हटा दें

"एक बहुभुज आकार आकृति में सभी सुविधाओं के माध्यम से EliminateSlivers.py चक्रित करता है और आउटपुट आकृति से उन लोगों को निकालता है जो किसी दिए गए क्षेत्र सीमा से नीचे आते हैं।

जियोप्रोसेसिंग ऑपरेशन और क्लस्टर टॉलरेंस के परिणामस्वरूप अतिरिक्त, छोटे स्लिवर पॉलीगॉन का निर्माण हो सकता है। ये निरर्थक हो सकते हैं और स्थानिक डेटा की विश्वसनीयता को बिगाड़ सकते हैं। ”

नोट: आपको अपने डेटा के साथ अलग-अलग सहिष्णुता के साथ परीक्षण करना होगा (पहले अपने डेटा की एक प्रति लें)

http://arcscripts.esri.com/details.asp?dbid=14672


1
यह ArcInfo कवरेज> स्वच्छ आर्क्स> बहुभुज बिल्ड .... साथ आसान था
Mapperz

मुझे यकीन नहीं है कि यह उपकरण वास्तव में उन त्रुटियों को समाप्त कर देगा जो मैं चित्रित कर रहा हूं। आप देखते हैं, स्लिवर (फ्लैगपोल) और बहुभुज (ध्वज) का मुख्य शरीर वास्तव में एक विशेषता है। इसलिए यह स्क्रिप्ट एक ही समय में पूरे "ध्वज" सुविधा को हटाए बिना केवल बहुभुज के "फ्लैगपोल" भाग को नहीं हटाएगी।
रयानकेल्डन

1

रयान,

मैंने मृदा सर्वेक्षण कार्यालय के साथ काम किया, और मैंने समय-समय पर उनकी मिट्टी के बहुभुजों की जाँच की। मैं स्लिवर्स के लिए क्या जाँच करता हूँ। मैंने फीचरक्लास को कवरेज के लिए भेजा और फिर त्रुटियों की पहचान करने के लिए उन्हें लेबल करने के लिए बनाया। यदि आप एक बहुभुज में 2 लेबल देखते हैं, तो यह एक त्रुटि है। यदि यह प्रति बहुभुज में एक लेबल है, तो आप जानते हैं कि यह सही है। मैं त्रुटि को चिह्नित करने के लिए एक बिंदु के रूप में एक फीचरक्लास बनाऊंगा। या आप एक नए फीचरक्लास में एक या कई लेबल का चयन कर सकते हैं। इस तरह आप वापस आ सकते हैं और त्रुटि को ठीक कर सकते हैं। यह मिट्टी के बहुभुजों के साथ मेरे लिए बहुत अच्छा काम करता है। मैं मिट्टी वैज्ञानिकों को समस्या को ठीक करने के लिए सूचित करने के लिए उपयोग करता हूं।

यह समस्या की पहचान करने का एक तरीका है। बस वही आपके साथ साझा कर रहा हूं।


1

यदि पहचान एक प्रमुख बिंदु नहीं है और बस स्वचालित फिक्स यह कोशिश करते हैं। डेटा को एक नए रिक्त मानचित्र दस्तावेज़ में जोड़ें, फिर;

  • एक मानचित्र टोपोलॉजी बनाएँ
  • सभी सुविधाओं का चयन करें
  • मौजूदा सुविधाओं को विभाजित करने के लिए निर्माण सुविधाओं का उपयोग करें

मैंने इसका परीक्षण किया है और यह काम करने लगता है लेकिन मैं अनिश्चित हूं यदि मैंने आपके डेटा स्रोत को बिल्कुल दोहराया है

मस्ती करो, सी.डी.बी.


1

यहाँ हम जाते हैं कि इसके माध्यम से काम करने के कुछ तरीके हैं और मेरी राय में सबसे सुरुचिपूर्ण जीआईएस डेटा समीक्षक नामक एक एक्सटेंशन का उपयोग कर रहा है । जीआईएस डेटा समीक्षक आपको कोर टोपोलॉजी के अलावा स्थानिक और विशेषता सटीकता पर अनुकूलित और सरलीकृत चेक बनाने की अनुमति देता है। टोपोलॉजी के भीतर ऐसी चीजें उपलब्ध नहीं हैं जो डेटा समीक्षक लाइक के मानक जांच का हिस्सा हैं

  • 3 डी क्लोजर
  • अमान्य होल
  • एसक्यूएल अभिव्यक्ति
  • स्थानिक संदर्भ से कम क्षेत्र
  • फ़ीचर पर फ़ीचर
  • और बहुत सारे

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

आशा है कि यह मदद करता है, सी.डी.बी.

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