我可以使用KML显示多边形,圆圈等。 现在我想只使用KML显示一些名称。这可能吗?
答案 0 :(得分:8)
如果您想要取消在Google地球地图上显示地标标签(通过KML),那么您可以使用0比例向地标添加LabelStyle(请参阅 sn_hide 在下面的例子中的风格)。如果您想要停留地图上的标签名称,直到将鼠标悬停在图标上,那么StyleMaps是您最好的选择。
下面示例中的第一个地标的名称显示在“地点”面板中,但使用 LabelStyle 从地图中隐藏。第二个地标#2使用 StyleMap 隐藏标签,直到用户突出显示或鼠标悬停在图标上,该图标激活显示标签的高亮样式。第三个地标#3使用始终显示标签的默认样式。
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<name>Hide and show labels</name>
<Style id="sn_hide">
<LabelStyle>
<scale>0</scale>
</LabelStyle>
</Style>
<Style id="sh_style">
<LabelStyle>
<scale>1.1</scale>
</LabelStyle>
</Style>
<StyleMap id="msn_hide">
<Pair>
<key>normal</key>
<styleUrl>#sn_hide</styleUrl>
</Pair>
<Pair>
<key>highlight</key>
<styleUrl>#sh_style</styleUrl>
</Pair>
</StyleMap>
<Placemark>
<name>Placemark 1</name>
<description>Label name always hidden</description>
<styleUrl>#sn_hide</styleUrl>
<Point>
<coordinates>-119.232195,36.016021</coordinates>
</Point>
</Placemark>
<Placemark>
<name>Placemark 2</name>
<description>Hover over place to show label</description>
<styleUrl>#msn_hide</styleUrl>
<Point>
<coordinates>-119.2324,36.0155</coordinates>
</Point>
</Placemark>
<Placemark>
<name>Placemark 3</name>
<description>Always showing</description>
<Point>
<coordinates>-119.232672,36.014837</coordinates>
</Point>
</Placemark>
</Document>
</kml>