你好我在KML中有一个Multigeometry,但是当我在地标上设置一个名称时,我的地标中的两个点都有相同的名称,任何地标中的点都有不同的名称,这是我的代码示例
<Placemark>
<name>TEST</name>
<description></description>
<visibility>1</visibility>
<tessellate>1</tessellate>
<styleUrl>#StyTEST</styleUrl>
<MultiGeometry>
<Point>
<coordinates>-3.6655,40.4364</coordinates>
</Point>
<Point>
<coordinates>-3.6726,40.4308</coordinates>
</Point>
<LineString>
<tessellate>1</tessellate>
<coordinates>
-3.6655,40.4364
-3.6726,40.4308
</coordinates>
</LineString>
</MultiGeometry>
</Placemark>
答案 0 :(得分:5)
即使使用多维几何体,KML也不允许在单个要素中使用多个名称/标签。如果MultiGeometry中有多个点,则会在所有点上显示相同的要素名称。一个地标点==一个标签,所以如果你想在地图上使用KML不同的标签,那么必须在该行的每一端都有两个地标。
简单的解决方案是使用多个地标构建您的KML,您可以使用 checkHideChildren listItemType隐藏在文档/文件夹中。然后它会在Google地球的“位置”面板中显示为单个“功能”,但您可以根据需要在地图上显示多个名称标签。这里的技巧是文件夹名称出现在“位置”面板中,而地标名称在地图上显示为标签。
以下示例说明了这样的KML文件。
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document>
<name>Example</name>
<open>1</open>
<Style id="hide">
<ListStyle>
<listItemType>checkHideChildren</listItemType>
</ListStyle>
</Style>
<Folder>
<name>TEST1</name>
<styleUrl>#hide</styleUrl>
<Placemark>
<name>TEST1</name>
<MultiGeometry>
<Point>
<coordinates>-3.6726,40.4308</coordinates>
</Point>
<LineString>
<tessellate>1</tessellate>
<coordinates>
-3.6655,40.4364
-3.6726,40.4308
</coordinates>
</LineString>
</MultiGeometry>
</Placemark>
<Placemark>
<name>TEST2</name>
<Point>
<coordinates>-3.6655,40.4364</coordinates>
</Point>
</Placemark>
</Folder>
</Document>
</kml>
答案 1 :(得分:2)
Placemark只有一个名字。如果您需要让每个Point都有自己的名称,则需要将它们分开放置。
答案 2 :(得分:0)
用户一次看不到40,000个地标。看看一些提供的地球图库页面,如FlightWise(http://mw1.google.com/mw-weather/flightwise/pointer.kml),看看他们如何使用NetworkLink,Region和Lod标签分割他们的数据集,并在正确的视图中将正确的数据呈现在正确的位置时间。