2012-10-02 14 views
9

यहां मैं क्या करने के लिए संघर्ष कर रहा हूं: पृष्ठ पर एक नक्शा प्रदर्शित करें (Google मानचित्र या इसमें से कोई भी प्रतियोगियों, मुफ़्त संभव है ...) और इस मानचित्र पर कुछ देशों को हाइलाइट करें (सिद्धांतों की सूची उदाहरण के अनुसार एक चर में संग्रहित की जाएगी)।मानचित्र प्रदर्शित करें और कुछ देशों को हाइलाइट करें

मैंने नक्शा पर बहुभुज को लगभग सभी देशों की भू-जेसन सूची के साथ आकर्षित करने की कोशिश की लेकिन यह बहुत भारी है।

कोई विचार?

उत्तर

18

मेरा मानना ​​है कि आपको ऐसा करने के लिए बहुभुज की आवश्यकता होगी।

http://code.google.com/apis/maps/documentation/overlays.html#Polygons_Overview
http://code.google.com/apis/maps/documentation/reference.html#GPolygon

इस नमूने की तरह: http://gmaps-samples-v3.googlecode.com/svn/trunk/poly/pentagon.html

sample

या इस साइट है कि आप के लिए कड़ी मेहनत कर सकते हैं :)
http://www.dyngeometry.com/web/WorldRegion.aspx

ss जाँच

अंत में, यह भी गूगल Geochart
है यह यहाँ देखें: https://developers.google.com/chart/interactive/docs/gallery/geochart

gc

+0

+1, जानकारीपूर्ण। –

+0

उनके साथ समस्या यह है कि वे पर्याप्त विशिष्ट नहीं हैं, मेरा मतलब है, मुझे मानचित्र में किसी शहर या पड़ोस को चिह्नित करने की आवश्यकता है। क्या कोई प्लगइन/कोड है जो ऐसा करता है? –

+0

http://www.dyngeometry.com/web/WorldRegion.aspx Google मानचित्र API संस्करण _2_ का उपयोग करता है, जिसे लंबे समय से बहिष्कृत किया गया है। – Oliver

3

आप अलग अलग रंग के साथ देशों के आप jVectorMap कोशिश कर सकते हैं की सिर्फ एक सीमाओं की जरूरत है।

10

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

यहां एक sample of a project है, जहां मैंने जर्मनी के संघीय राज्यों में से एक के लिए केएमएल मास्क का उपयोग किया है।

एक त्वरित समीक्षा के लिए केएमएल फ़ाइलों को सीधे Google मानचित्र सार्वजनिक वेबसाइट (खोज क्षेत्र में अपना यूआरएल दर्ज करके) में लोड किया जा सकता है। यहां केएमएल फ़ाइल है जिसे मैंने उपरोक्त प्रोजेक्ट में उपयोग किया है, loaded directly into Google Maps। (मैंने वास्तव में यहां एक केएमजेड फ़ाइल का उपयोग किया है, लेकिन यह एक ज़िप संग्रह में पैक की गई एक केएमएल फ़ाइल है। आप इसे सामान्य ज़िप उपकरण के साथ पैक और अनपैक कर सकते हैं।) [अद्यतन: यह अब नए मानचित्र संस्करण में काम नहीं करता है (2014 में शुरू हुआ)।]

कृपया ध्यान रखें कि Google केएमएल/केएमजेड फाइलों (वर्तमान में 10 एमबी असम्पीडित, 3 एमबी संपीड़ित - details see here) के लिए आकार सीमा का तात्पर्य है। यदि आपकी केएमएल फाइलें बड़ी होनी चाहिए, तो जटिलता को कम करने के लिए सॉफ्टवेयर उपलब्ध है (उदाहरण here और here देखें)।

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

संबंधित मुद्दे