GeMLer में KML और शैली की जानकारी आयात करना


9

इसलिए मैं एक ऐसी परियोजना पर काम कर रहा हूं जो एक साल से अधिक समय से विकास में है, लेकिन मैं केवल हाल ही में शामिल हुआ। मेरे कार्य में लगभग 2,500 KML फ़ाइलों को एक अन्य प्रारूप में परिवर्तित करना, इन फ़ाइलों को जियोसेवर में आयात करना और फिर प्रत्येक फ़ाइल के लिए संबंधित शैली जानकारी की प्रतिलिपि बनाना शामिल है। मुझे एहसास है कि जियोसेवर आपको केएमएल फाइलों को सीधे आयात करने की अनुमति देता है, हालांकि, हमारी फाइलें कभी भी सही तरीके से प्रस्तुत नहीं होती हैं, और मेरे मालिक दार्शनिक कारणों से केएमएल प्रारूप से दूर जाना चाहते हैं।

Ogr2ogr का उपयोग करते हुए, मैंने इन फाइलों को ESRI शेपफाइल्स में बदलने की कोशिश की है, हालांकि रूपांतरण प्रक्रिया ने लगभग एक तिहाई फाइलों पर ही काम किया है और कुछ मेटाडेटा को मिटा दिया है, जिन्हें स्टाइल की जानकारी के लिए कहा जाता है। फ़ाइलें जो बहुभुज और बिंदुओं के लिए कोड परिवर्तित नहीं करती हैं, जो मैंने पढ़ा है वह QGIS जैसे अन्य कार्यक्रमों के लिए एक त्रुटि हो सकती है।

मैंने KML की सभी फाइलों को पोस्टजीआईएस डेटाबेस में डालने और उन्हें उसी तरह बदलने की कोशिश की है। हालाँकि, ऐसा लगता है कि आयात के लिए अनिवार्य रूप से रिक्त तालिकाओं को छोड़कर सभी डेटा को हटा दिया गया है।

टीएल; डीआर मुझे 2,500 केएमएल फाइलों को जियोसेवर द्वारा प्रयोग करने योग्य प्रारूप में बदलने का एक तरीका खोजने की आवश्यकता है, और एक्सएमएल शैली की जानकारी के साथ काम करेगा। मैं एक पूर्ण जीआईएस नोब हूं और यह मेरी पहली पोस्टिंग है, इसलिए मुझे खेद है अगर यह थोड़ा हास्यास्पद लगता है।


क्या शैली अनिवार्य रूप से सभी KML फ़ाइलों के लिए समान है या वे सभी पूरी तरह से अलग हैं? यदि पूर्व में आपको लग सकता है कि आप जियोसर्वर के लिए बस एक स्टाइल फाइल (या फाइलों का सेट) रोल कर सकते हैं जो SLD (XML आधारित प्रारूप) का उपयोग करता है।
nmtoken


मुझे नहीं पता कि मैं यह सवाल कहां से पूछ सकता हूं लेकिन मुझे यकीन है कि आपको मेरा जवाब पता होगा। यहाँ वैसे भी जियोसर्वर पर KML को नए डेटा स्रोत के रूप में अपलोड करना है? @samane
मुस्तफा फलाह

जवाबों:


1

जियोसर्वर में डेटा और स्टाइल अलग हो जाते हैं, उन्हें मिलाने का कोई तरीका नहीं है। आप एक एसएलडी को ऑटोजेनरेट कर सकते हैं। अब तक, मुझे नहीं पता कि क्या कोई कनवर्टर किमी स्टाइल से जियोसर्वर स्टाइल के लिए मौजूद है।


1

सबसे पहले, जियोसर्वर स्टाइल (एसएलडी) और डेटा (केएमएल) कुल अलग-अलग हैं। Geoserver में KML फ़ाइल को आयात करें और बाद में, स्टाइल एडिटर में SLD फ़ाइल बनाएं या दर्शक (Mapfishapp) की तरह स्टाइल बनाएं और अगला, XML के भीतर लिखे बिना sld प्राप्त करने के लिए .sld फ़ाइल को सहेजें (वर्गीकरण का एहसास करना अधिक कठिन)। अन्य विशिष्ट शैली जब कुछ प्रणाली आसानी से इसका एहसास करती है)।

बाद में, मैंने जीआईएस डेटा और हर समय बचाने के लिए केएमएल फाइलों का उपयोग किया है, मैंने विशेषता खो दी है (= डेटा खो गया)। केएमएल सिर्फ ज्यामिति की जानकारी रखता है। अपने नैटिव डेटा को दूसरे प्रारूप में सहेजना बेहतर होता है (CSV की विशेषता रखें) या केवल डेटा टेबल बनाएं और उसके बाद, भौगोलिक जानकारी दें या सीधे लेयर बनाएं। (शेपफाइल, Csv ...)।

मुझे आशा है कि मैं आपकी मदद करूंगा ...


1

Kml फ़ाइल में अतिरिक्त जानकारी जिसे आप उपयोग करना चाहते हैं और आप "मेटाडेटा" के रूप में संदर्भित करते हैं, KML शब्दजाल में हो सकती है:

  1. स्टाइल्स और स्टाइलमैप्स
  2. ExtendedData
  3. प्लेसमार्क के विवरण क्षेत्र में कस्टम जानकारी, आमतौर पर HTML तालिकाओं के रूप में

चूंकि प्रत्येक kml फ़ाइल एक ASCII फ़ाइल है, इसे टेक्स्ट-प्रोसेसिंग स्क्रिप्ट के माध्यम से संसाधित किया जा सकता है। मेरी समझ के अनुसार, प्रत्येक प्रकार की वस्तु के लिए एक अलग "लेयर" बनाया जाना चाहिए, जिसे आप जियोसेवर में प्रस्तुत करना और शैली करना चाहते हैं। इसका मतलब है कि प्रत्येक किमी फ़ाइल से, आप ऑब्जेक्ट प्रकारों के अपने वर्गीकरण के आधार पर कई फ़ाइलों के साथ समाप्त हो जाएंगे।

ऑफ-द-शेल्फ उपकरण के लिए एक सीधा काम नहीं है। उम्मीद है, अगर सभी 2.500 किमी फाइलें एक ही एप्लिकेशन के साथ बनाई गई हैं, तो उनके पास एक ही संरचना होगी। उस स्थिति में, आपको इस संरचना के विस्तृत विश्लेषण और बहुत सारी कस्टम स्क्रिप्टिंग की आवश्यकता होगी।


1

किमी को खोलें और अंदर देखें ऐसा लगता है जैसे आप वास्तव में चाहते हैं डेटा है क्योंकि अन्य पोस्टर ने सुझाव दिया है कि शैली कार्ड पर नहीं हैं इसलिए आपकी समस्या सभी फ़ाइलों का रूपांतरण है जो अनिवार्य रूप से सिर्फ पाठ फ़ाइलें हैं कुछ अजगर जानें

फिर आकृति में कुछ इस तरह हैक करें : https://gist.github.com/linwoodc3/0306734dfe17076dfd34e09660c198c0

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