Как я могу ссылаться на локальные пользовательские значки в kml?

#icons #kml #kmz

#Значки #kml #kmz

Вопрос:

Я буквально никогда раньше не пытался редактировать файл kml, поэтому я не совсем уверен в том, что я пытаюсь спросить, но я сделаю все возможное.

Я пытаюсь использовать пользовательские значки для своих меток размещения. Я попытался загрузить изображения на хостинг-сайт и создать на них ссылку, а также попытался поместить их во вложенную папку и сослаться на локальный адрес. Вот эти попытки.

   <Style id="1">
    <IconStyle>
      <Icon>
    <href>https://cdn1.imggmi.com/uploads/2019/3/8/63626b5bc964d76ca0d5bdb30fb44afd-full.png</href>
      </Icon>
    </IconStyle>
    </Style>
  

И второй способ:

   <Style id="1">
    <IconStyle>
      <Icon>
        <href>files/number_1.png</href>
      </Icon>
    </IconStyle>
    </Style>
  

И метка места ссылается на стиль следующим образом:

         <Placemark>
            <styleUrl>#1</styleUrl>
            <Point>
                <coordinates>-86.78824404543640,36.41901416833124,1005.84</coordinates>
                <altitudeMode>absolute</altitudeMode>
            </Point>
        </Placemark>
  

Что бы я ни делал, я не могу заставить значок отображаться в GE. Я прочитал кучу разных руководств, попробовал назвать папку и вложенную папку по-разному и попытался создать kmz с kml в основной папке и значками во вложенной папке. Кажется, ничего не работает. Такое чувство, что я упускаю что-то основное или фундаментально недопонимаю какой-то аспект этого, но, хоть убейте, я не могу в этом разобраться!

Приветствуется любая помощь!

Комментарии:

1. URL-адрес в вашей первой попытке, вероятно, не работает, потому что первое, что сервер выдает в ответ, — это какая-то динамическая страница, в которой говорится что-то о «проверке вашего браузера …». Вам нужно разместить его где-нибудь, чтобы фактический файл изображения был прямым и общедоступным. Ваша вторая попытка должна сработать, если у вас есть папка «files» на том же уровне, что и ваш KML, либо на вашем жестком диске, либо в файле KMZ. Какую версию Earth вы используете? Earth Pro (7.x / настольное приложение) должен справиться с этим нормально. Earth for web (9.x) может пока неправильно обрабатывать локальные файлы, хотя должен работать в KMZ.

2. Я попробовал несколько разных веб-сайтов для размещения изображений и, похоже, не смог найти тот, который будет работать. Вероятно, это как-то связано с тем, что веб-страница не является фактическим файлом изображения. Я использовал Earth для Web, потому что настольное приложение не работало, и оно не отображало изображение даже в KMZ. После небольшой возни я запустил настольное приложение, и локальный файл работал просто отлично. Спасибо за вашу помощь.

Ответ №1:

Этот KML работает для меня в Google Планета Земля в файле KMZ / zip:

 <?xml version="1.0" encoding="utf-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Document>
  <Style id="1">
    <IconStyle>
      <Icon>
        <href>files/number_1.png</href>
      </Icon>
    </IconStyle>
    </Style>
    <Placemark>
      <styleUrl>#1</styleUrl>
      <Point>
          <coordinates>-86.78824404543640,36.41901416833124,1005.84</coordinates>
          <altitudeMode>absolute</altitudeMode>
      </Point>
    </Placemark>
  </Document>
</kml>
  

Файл number_1.png находится в каталоге «files».
Содержимое файла KMZ

отображается на картах Google

в Google Планета Земля: отображается в Google Планета Земля

Ответ №2:

Я просто боролся с этим для… неважно. Это смущает.

Та же проблема: kmz со встроенными значками работал на GE Desktop, но значки не импортировались в Google Мои карты. Я был так расстроен, что готов был причинить кому-нибудь боль.

Конечно, это была полностью моя вина.

<href>Images/Icon-1.png</href> работал в GE desktop, но не в maps.

<href>images/icon-1.png</href> работал в обоих.

Проблема: все для Интернета чувствительно к регистру, поэтому имя папки «Изображения» не работало в Интернете, потому что папка в zip-файле была названа «изображения» (в нижнем регистре ‘)

Ого!