2010-02-23 11 views
5

बहुत सरल सवाल।केएमएल + Google धरती: पॉलीगॉन या ग्राउंड ओवरले क्लिक करें?

मुझे कुछ बहुभुज और ग्राउंड ओवरलेज़ केएमएल में परिभाषित किया गया है। क्या यह निर्दिष्ट करने का कोई तरीका है कि उन्हें क्लिक करने योग्य होना चाहिए, और (Google धरती में, कम से कम) एक जानकारी बुलून या समान क्लिक करते समय पॉप अप करें?

इसी प्रकार, क्या बहुभुज/ग्राउंड ओवरलेज़ किसी भी तरह के माउसओवर व्यवहार देना संभव है? जैसे जब moused पर आइकन या रंग बदलें?

उत्तर

10

हां। प्लेमार्क को एक नाम और विवरण देने से यह Google धरती में एक क्लिक करने योग्य ऑब्जेक्ट बन जाएगा और दोनों को दिखाए गए एक जानकारी विंडो के साथ खुल जाएगा। आप स्टाइलमैप्स का उपयोग करके रोलओवर/माउसओवर व्यवहार बना सकते हैं, यहां एक उदाहरण है जो दोनों करता है:

<?xml version="1.0" encoding="UTF-8"?> 
<kml xmlns="http://www.opengis.net/kml/2.2"> 
<Document> 
<name>Highlighted Icon</name> 
<description>Place your mouse over the icon to see it display the new 
     icon</description> 
<StyleMap id="exampleStyleMap"> 
    <Pair> 
    <key>normal</key> 
    <!-- you could also use a <styleUrl> here instead of inlining --> 
    <Style> 
     <PolyStyle> 
     <color>7dff0000</color> 
     </PolyStyle> 
    </Style> 
    </Pair> 
    <Pair> 
    <key>highlight</key> 
    <!-- you could also use a <styleUrl> here instead of inlining --> 
    <Style> 
     <PolyStyle> 
     <color>7dffffff</color> 
     </PolyStyle> 
    </Style> 
    </Pair> 
</StyleMap> 

<!-- and now, a Placemark that uses the StyleMap --> 
<Placemark> 
    <name>Roll over this polygon</name> 
    <description>this will show up when clicked</description> 
    <visibility>1</visibility> 
    <styleUrl>#exampleStyleMap</styleUrl> 
    <Polygon> 
    <tessellate>1</tessellate> 
    <altitudeMode>absolute</altitudeMode> 
    <outerBoundaryIs> 
     <LinearRing> 
     <coordinates> 
      -112.3372510731295,36.14888505105317,1784 
      -112.3356128688403,36.14781540589019,1784 
      -112.3368169371048,36.14658677734382,1784 
      -112.3384408457543,36.14762778914076,1784 
      -112.3372510731295,36.14888505105317,1784 
     </coordinates> 
     </LinearRing> 
    </outerBoundaryIs> 
    </Polygon> 
</Placemark> 
</Document> 
</kml> 
+0

धन्यवाद !! बहुत सराहना की। – DanM

+0

एक प्रश्न: क्या आप प्रत्येक प्लेमार्क के लिए व्यक्तिगत रूप से दो-भाग शैली कर सकते हैं? उदाहरण के लिए, 100 जेपीईजी छवियों की एक लाइब्रेरी है, और मानचित्र पर रखे 100 ठोस-रंग बहुभुज हैं, जहां हर बार जब आप उनमें से एक पर माउस करते हैं, तो 100 छवियों में से एक इसकी जगह में दिखाई देता है? – DanM

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