【问题标题】:KML <IconStyle> Tag is not working in google mapKML <IconStyle> 标签在谷歌地图中不起作用
【发布时间】:2023-03-15 03:51:01
【问题描述】:

我有一个包含一些多几何形状的 KMl 文件。当我在 Google 地球中导入这个 KML 文件时,它看起来像这张图片。

但是当我在谷歌地图中导入相同的 KML 时会显示这样

代替标签,它显示默认的蓝色图标。

这是一个多几何的我的示例 KMl

<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://www.opengis.net/kml/2.2"><Document><Style id="Yellow"><IconStyle><scale>0</scale></IconStyle><PolyStyle><color>6414F0FF</color></PolyStyle></Style><Placemark><styleUrl>#Yellow</styleUrl><name>0,15</name><MultiGeometry><Point><coordinates>-97.04983000000001,32.81053</coordinates></Point><Polygon><outerBoundaryIs><LinearRing><coordinates>-97.05083000000002,32.81083 -97.04667,32.81083 -97.04667,32.8075 -97.05083000000002,32.8075 -97.05083000000002,32.81083</coordinates></LinearRing></outerBoundaryIs></Polygon></MultiGeometry></Placemark></Document></kml>

我已经google了很多次了,请帮忙。

【问题讨论】:

  • 嗨,你找到解决办法了吗?

标签: google-maps kml google-earth


【解决方案1】:

Google 地图的 MultiGeometry 地标存在问题。

如果想要从该点添加标签并使用多边形,那么最好使用 LabelStyle/IconStyle 为 Point 设置单独的地标,为 Polygon 设置另一个地标。 Google 地球的 MultiGeometry 功能没有此类问题。

更新: 使用 Google Maps KmlLayer 不允许标签名称出现在地图上 - 标签仅在单击地标图标时出现。如果您想继续使用 Google Maps,那么您可以尝试使用 geoxml3 库来解析 KML,然后枚举地标并使用 Google Maps API 创建Markers。或者,可以使用OpenlayersCesium来解析KML并正确显示。

【讨论】:

  • 但是在谷歌地图中,​​当我们点击标记时,它会显示地标名称,不像谷歌地球。请看谷歌地球图片,
  • 在附加的谷歌地球图片中,我显示了一些文本,如 (3,42) (2,42) 作为地标名称,所有文本在谷歌地球中都正确显示,但在谷歌地图中显示为弹出和加载时,谷歌地图仅显示默认标记来代替这些名称。
  • 如果 Google 地图忽略了 IconStyle 比例,请尝试在其中添加空的 href 标签&lt;IconStyle&gt; &lt;scale&gt;0&lt;/scale&gt; &lt;Icon&gt; &lt;href/&gt; &lt;/Icon&gt; &lt;/IconStyle&gt;
  • 它不起作用,谷歌地图显示蓝色默认标记。
  • Google Maps API 和 KmlLayer 忽略了出现在其地图上的 iconStyle 和名称标签。这是一个错误或未记录的功能。您是否尝试过使用openlayerscesium 或geoxml3 来加载KML 文件?
猜你喜欢
  • 2017-03-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-06
  • 1970-01-01
  • 2013-03-06
  • 2015-11-12
相关资源
最近更新 更多