* некоторые * метки не отображаются в простом KML
Вот ссылка в качестве примера:
Очень простой KML, с некоторыми метками (#10-21), которые просто не отображаются на карте. Я не очень знаком с KML, но я читал, отлаживал и искал эту проблему и не могу понять это. Ссылки на иконки выглядят нормально, а метки # 10-21 появляются, если я стираю большинство других (скажем, вынимаю 22-44).
Есть идеи?
Спасибо!
3 ответа
Я считаю этот валидатор полезным, но раздражающим: KML Validator. Кажется, у вас есть проблемы с вашим <description>
тег не рядом с <name>
,
Насколько я знаю, вы должны ссылаться на стиль, а не включать его в определение точки. Смотрите: Справочник KML
Google Earth не является хорошим местом для их создания; Мало того, что многие вещи отображаются по-разному, по моему опыту, это также сломает ваши теги.
Что касается конкретного ответа на ваш вопрос: не так много идей, почему это произойдет. Попробуйте переименовать или назначить идентификаторы своим точкам, и посмотрите, что произойдет.
Карты Google гораздо строже относятся к применению правил схемы KML, чем Google Планета Земля. Вот где живет схема KML: http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd. Пространство имен идентифицирует ваш KML как версию 2.0, которая никогда не имела официальной спецификации. Текущая официальная версия - KML 2.2. Пространство имен 2.2 - "http://www.opengis.net/kml/2.2".
В общем, если вы реструктурируете свои метки KML, это должно сработать. Геометрия (ваши элементы Point) должна быть последней в вашем элементе Placemark. Для элементов, которые вы используете, порядок должен быть:
Название Описание Стиль Точка
Кроме того, нет creator
атрибут, вместо этого вы должны использовать atom:author
элемент прямо под тегом документа: https://developers.google.com/kml/documentation/kmlreference
Это известная проблема с рендерингом KML в Картах Google. Есть внутренняя ошибка, но пока нет разрешения по времени.