Мой значок метки, используемый через HREF из файлов Google Map, кажется, "смещается", когда я уменьшаю масштаб. В этом примере метка может пройти весь путь до Норвегии.
Похоже, что карты Bing V8 не поддерживают kml, который предположительно мог бы помочь значку понять, где находится его центр, чтобы он оставался на якоре на карте во время уменьшения масштаба. Кроме того, метка игнорирует стиль цвета. Если я уберу все между тегами и просто использую метку по умолчанию из Bing, цвета и масштаб будут работать правильно. Кто-нибудь из вас знает, как заставить этот значок Google оставаться на якоре с помощью KML в Bingmaps? Мой текущий обходной путь - просто не использовать значок Google, а вместо этого использовать значок карт Bing по умолчанию, который работает. Использование кода для этого на объекте bingmaps в настоящее время потребует слишком большого количества рефакторинга.
Вы можете использовать «перетаскивание» Bing здесь с моим кодом, чтобы увидеть проблему - просто вставьте приведенный ниже KML в «Панель XML» и нажмите «Читать 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>