Bing 使用地标图标 href 时地图地标漂移

Bing Maps placemark drift when using an icon href for a placemark

我的地标图标是通过 google 地图文件中的 HREF 使用的,当我缩小时似乎 "drift"。在此示例中,地标可以一直到达挪威。

Bing maps V8 似乎不支持 kml,据说它可以帮助图标了解其中心位置,以便在缩小过程中保持锚定在地图中。此外,地标忽略了颜色样式。如果我删除标签之间的所有内容并仅使用 Bing 中的默认地标,颜色和缩放将正常工作。你们知道有什么方法可以让这个 Google 图标通过 KML 固定在 Bing 地图中吗?我目前的解决方法是不使用 Google 图标,而是使用默认的 Bing 地图图标,这很有效。在 bingmaps 对象上使用代码在此时需要进行过多的重构。

您可以在此处使用 Bing "drag and drop" 和我的代码来查看问题 - 只需将下面的 KML 粘贴到 "XML Panel" 中并单击 "Read XML"。然后缩小以查看地标移动。如果删除整个节点,则缩放和颜色会起作用(但使用默认图标)。 https://bingmapsv8samples.azurewebsites.net/#GeoXml%20-%20Drag%20and%20Drop

<?xml version="1.0" encoding="utf-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Style id="model_normal">
    <IconStyle>
      <color>FF00FF00</color>
      <scale>1</scale>
      <Icon>
        <href>http://maps.google.com/mapfiles/kml/shapes/shaded_dot.png</href>
      </Icon>
      <hotSpot x="0.5" y="0.5" xunits="fraction" yunits="fraction" />
    </IconStyle>
    <LabelStyle>
      <color>0000FF00</color>
    </LabelStyle>
    <LineStyle>
      <color>7F00FF00</color>
      <width>3</width>
    </LineStyle>
    <PolyStyle>
      <fill>1</fill>
      <color>7F00FF00</color>
    </PolyStyle>
  </Style>
  <Placemark>
    <name>Example placemark</name>
    <description></description>
    <visibility>1</visibility>
    <styleUrl>#model_normal</styleUrl>
    <MultiGeometry>
      <Point>
        <coordinates>7.003930,53.361905</coordinates>
      </Point>
    </MultiGeometry>
  </Placemark>
</kml>

Bing 地图期望的锚点格式以像素为单位,因此您可以将 IconStyle 中的 hotSpot 更新为:

<hotSpot x="32" y="32" xunits="pixels" yunits="pixels" />

默认情况下,Bing 地图上的自定义图钉锚定在底部中心 - 这就是观察到 "shifting" 的原因。