Задать вопрос
@EugeneVKruglov

Как правильно импортировать файлы KMZ и KML в карту Гугл?

Подскажите. пожалуйста, почему с ошибками импортируются файлы KMZ и KML?
Пытаюсь импортировать файл следующей структуры:
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Document>
    <name>Название карты</name>
    <description>Карта</description>
    <Style id="simple_member-normal">
      <IconStyle>
        <scale>1</scale>
        <Icon>
          <href>images/simple_member.png</href>
        </Icon>
        <hotSpot x="32" xunits="pixels" y="64" yunits="insetPixels"/>
      </IconStyle>
      <LabelStyle>
        <scale>0</scale>
      </LabelStyle>
    </Style>
    <Style id="simple_member-highlight">
      <IconStyle>
        <scale>1</scale>
        <Icon>
          <href>images/simple_member.png</href>
        </Icon>
        <hotSpot x="32" xunits="pixels" y="64" yunits="insetPixels"/>
      </IconStyle>
      <LabelStyle>
        <scale>1</scale>
      </LabelStyle>
    </Style>
    <StyleMap id="simple_member">
      <Pair>
        <key>normal</key>
        <styleUrl>#simple_member-normal</styleUrl>
      </Pair>
      <Pair>
        <key>highlight</key>
        <styleUrl>#simple_member-highlight</styleUrl>
      </Pair>
    </StyleMap>
    <Style id="active_member-normal">
      <IconStyle>
        <scale>1.1</scale>
        <Icon>
          <href>images/active_member.png</href>
        </Icon>
      </IconStyle>
      <LabelStyle>
        <scale>0</scale>
      </LabelStyle>
    </Style>
    <Style id="active_member-highlight">
      <IconStyle>
        <scale>1.1</scale>
        <Icon>
          <href>images/active_member.png</href>
        </Icon>
      </IconStyle>
      <LabelStyle>
        <scale>1.1</scale>
      </LabelStyle>
    </Style>
    <StyleMap id="active_member">
      <Pair>
        <key>normal</key>
        <styleUrl>#active_member-normal</styleUrl>
      </Pair>
      <Pair>
        <key>highlight</key>
        <styleUrl>#active_member-highlight</styleUrl>
      </Pair>
    </StyleMap>
    <Folder>
      <name>Другое название</name>
        <Placemark>
          <name>Иванов Иван Иванович</name>
          ... дальше всякие тэги
          <styleUrl>#active_member</styleUrl>
          <ExtendedData>
          ... тоже всякие тэги
          </ExtendedData>
          <Point>
            <coordinates>37.74131,55.70726,0</coordinates>
          </Point>
        </Placemark>
        <Placemark>
        ... таких <Placemark> может быть много, генерируются автоматически
        </Placemark>
    </Folder>
  </Document>
</kml>

Все содержимое генерируется безупречно, импортируется нормально, пока дело не доходит до
<styleUrl>#active_member</styleUrl>
Этот раздел в Гугл-карте должен отвечать за загрузку соответствующего значка из раздела . В каждом он может быть разным. Структуру в точности скопировал с валидного файла. По документации, здесь можно указать относительный путь к картинке в файле KMZ, например,
<Icon>
  <href>images/active_member.png</href>
</Icon>

Потом файлы пакуются ZIP-ом с сохранением относительных путей, меняется расширение на KMZ, и все это, по идее, импортируется в Гугл-карту. Можно также указать абсолютный URL, например
<Icon>
  <href>https://drive.google.com/file/d/1MzJzemDsRe4DKtUgpP5dEZifc-LZ6jNP/view?usp=share_link</href>
</Icon>

Но что бы я ни делал, относительный путь указывал или абсолютный URL, при импорте KML в лучшем случае получается, что все значки на карте становятся одинаковыми и, похоже, заменяются стандартными значками Гугла.
Файл KMZ с компьютера вообще не загружается: при попытке его загрузить Гугл пишет "Ошибка сервера. Попробуйте повторить". На Гугл-диске файлы KMZ и KML не показываются (только Гугл-таблицы).
Карта находится на моем Гугл-диске, файлы значков тоже. Ссылки на файлы расшарены.
При проверке XML-валидатором ошибок нет.
Что я делаю не так?
  • Вопрос задан
  • 339 просмотров
Подписаться 1 Средний 2 комментария
Пригласить эксперта
Ответы на вопрос 1
@EugeneVKruglov Автор вопроса
Частично решил проблему, разместив файлы иконок на стороннем хостинге и прописав путь к ним. Но с KMZ проблема не решена...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы