Najczęstsze pytania dotyczące KML


Co to jest KML?

KML to format pliku używany do wyświetlania danych geograficznych w przeglądarce Earth, np. w Google Earth. Możesz tworzyć pliki KML, aby wskazywać lokalizacje, dodawać nakładki obrazów i wyświetlać bogate dane w nowy sposób. KML to międzynarodowy standard utrzymywany przez Open Geospatial Consortium, Inc. (OGC).

Kto używa KML?

Społeczność KML jest duża i zróżnicowana, co widać na forum społeczności Google Earth. Użytkownicy okazjonalni tworzą pliki KML, aby oznaczać swoje domy, dokumentować podróże oraz planować piesze i rowerowe wycieczki po kraju. Naukowcy używają KML do tworzenia szczegółowych map zasobów, modeli i trendów, takich jak erupcje wulkanów, wzorce pogodowe, aktywność sejsmiczna i złoża minerałów. Specjaliści ds. nieruchomości, architekci i agencje rozwoju miast używają KML do proponowania budynków i wizualizacji planów. Uczniowie i nauczyciele używają KML do poznawania ludzi, miejsc i wydarzeń, zarówno historycznych, jak i współczesnych. Organizacje takie jak National Geographic, UNESCO i Smithsonian używają KML do wyświetlania bogatych zbiorów danych globalnych.

Jak utworzyć pliki KML?

Istnieją 3 główne narzędzia do tworzenia plików KML.

  • Google Earth. Jest to najważniejsze narzędzie, którego możesz użyć do tworzenia plików KML. Google Earth umożliwia tworzenie
    • Oznaczenia miejsc
    • Ścieżki
    • Wielokąty
    • Obrazy nad powierzchnią
    • Linki sieciowe
    • Umieszczanie modeli
    • foldery zawierające wszystkie powyższe elementy;
    • PhotoOverlays
  • Po utworzeniu jednego z tych obiektów kliknij go prawym przyciskiem myszy w panelu „Miejsca” i wybierz „Kopiuj”. Następnie możesz wkleić go do edytora tekstu lub edytora XML i zacząć go edytować.

  • Edytor tekstu. Po utworzeniu obiektu w Google Earth wklej go do edytora tekstu i zacznij edytować.
  • edytor XML, KML to język XML służący do opisywania treści geograficznych. Edytor XML to zaawansowany edytor tekstu, który udostępnia wiele narzędzi do tworzenia dokumentów XML, takich jak uzupełnianie tagów, które zapewnia, że elementy KML są zamykane za pomocą odpowiednich tagów zamykających.

Istnieje też wiele narzędzi utworzonych przez użytkowników w społeczności Google Earth. Odwiedź grupę dyskusyjną Google KML Developer Support.

Jak otworzyć plik KMZ?

Pliki KMZ to skompresowane zbiory co najmniej 1 pliku do wyświetlania w Google Earth. Są one skompresowane w formacie ZIP i można je otworzyć za pomocą dowolnego popularnego narzędzia do obsługi plików ZIP, np. „WinZip”, „7-Zip” lub domyślnego narzędzia do obsługi skompresowanych folderów w systemie Windows XP – w systemie Windows, „Stuffit” – w systemie Mac OS lub „zip” – w systemie Mac OS lub Linux. Może być konieczne zmiana rozszerzenia pliku z .kmz na .zip, aby plik był rozpoznawany przez narzędzie do obsługi plików ZIP. Pamiętaj, aby przed ponownym użyciem pliku zmienić format z powrotem na .kmz.

Jak utworzyć plik KML z danymi astronomicznymi?

Pliki KML mogą służyć do przedstawiania danych astronomicznych i wczytywania ich do Google Sky lub WorldWide Telescope firmy Microsoft. Więcej informacji znajdziesz w artykule Dane nieba w KML.

Które tagi KML są obsługiwane przez Google Earth?

Wszystkie tagi KML są obsługiwane przez Google Earth. Listę wszystkich tagów znajdziesz w specyfikacji KML.

Gdzie znajdę Przewodnik dla deweloperów?

Przewodnik dla deweloperów znajdziesz na stronie https://developers.google.com/kml/documentation/topicsinkml.html.


Dlaczego moje linie znikają?

Gdy element LineString ma atrybut clampToGround, bez problemu podąża za krzywizną globu. Jeśli jednak jest to „relativeToGround”, może być konieczne dodanie większej liczby punktów, w przeciwnym razie narysuje dłuższe linie po prostej ścieżce przez kulę ziemską lub teren.

Na przykład ta linia LineString przejdzie przez Ziemię i zniknie:

<kml xmlns="http://www.opengis.net/kml/2.2">
  <Placemark>
    <name>Untitled Path</name>
    <LineString>
      <tessellate>0</tessellate>
      <altitudeMode>absolute</altitudeMode>
      <coordinates>-115.415105,40.669016 -37.752364,34.879979</coordinates>
    </LineString>
  </Placemark>
</kml>

Dodanie większej liczby punktów zmniejszy długość linii znajdującej się pod ziemią. Aby linia była dopasowana do terenu, wartość <tessellate> powinna wynosić „1”.

<Placemark>
  <name>Untitled Path</name>
  <LineString>
    <tessellate>1</tessellate>
    <altitudeMode>relativeToGround</altitudeMode>
    <coordinates>
      -134.148103,37.752967 -128.917074,38.803008
      -125.166954,39.583592 -122.137625,39.656880
      -120.421783,40.036311 -118.298157,40.235316
      -114.348386,40.631532 -112.670431,40.761033
      -111.916045,40.681939 -110.177711,40.653055
      -109.544331,40.619327 -107.155697,40.642007
      -105.410526,40.421505 -103.192299,40.430138
      -102.853712,40.427904 -98.168302,40.363524
      -97.093391,40.308754 -94.831304,40.479175
      -93.760070,40.395392 -84.913828,39.466651
      -84.414888,39.387332 -81.380660,39.188551
      -80.276261,38.977744 -77.811560,38.872542
      -75.062267,38.521146 -72.006956,38.101733
      -66.67819,37.664687
    </coordinates>
  </LineString>
</Placemark>
Czy mogę narysować okrąg w KML?

W KML nie ma geometrii koła, ale możesz utworzyć coś bardzo podobnego do koła, używając elementu LineString z wieloma blisko siebie położonymi współrzędnymi. Oto przykład.

Czy mogę zmienić linię na przerywaną lub dodać do niej strzałki?

<LineStyle> umożliwia zmianę koloru, nieprzezroczystości i rozmiaru linii. Obecnie jednak KML nie obsługuje zmiany typów linii w KML.

Jak ukryć etykiety znaczników?

Etykieta wyświetlana obok znacznika miejsca w Google Earth jest oparta na elemencie <name>. Ustawiając element skali w stylu etykiety na 0, możesz ukryć etykietę.

<Style id="hideLabel">
  <LabelStyle>
    <scale>0</scale>
  </LabelStyle>
</Style>
Dlaczego pojawia się błąd analizowania?

Błędy analizowania mogą mieć 2 główne przyczyny:

  1. Wielkość liter: KML, podobnie jak wszystkie języki XML, uwzględnia wielkość liter. Wymaga to, aby wszystkie nazwy elementów były zapisane z użyciem odpowiednich wielkich i małych liter. Na przykład: <Placemark> zamiast <PLACEMARK> <href> zamiast <Href> <Link> zamiast <lInk>
  2. Niekompletne tagi: wszystkie elementy muszą zaczynać się i kończyć tym samym tagiem. Czasami użytkownicy zapominają zamknąć tag lub pominąć nawias ostry (< lub >).

    Na przykład:
    <name>Atlanta</name> jest prawidłowe
    <name>Atlanta jest nieprawidłowe
    <nameAtlanta</name> jest nieprawidłowe
    <nameAtlanta<name> jest nieprawidłowe

Skąd mam wiedzieć, czy napisany przeze mnie plik KML jest prawidłowy?

KML to język znaczników XML. Możesz to zrobić na kilka sposobów:

  • Możesz pobrać edytor XML, np. Oxygen lub Netbeans, i użyć go do sprawdzenia poprawności dokumentu. Zapoznaj się z dokumentacją wybranego edytora XML. Do przeprowadzenia weryfikacji potrzebujesz schematu KML.
  • Możesz to sprawdzić za pomocą walidatora online, np. FeedValidator.org, który pokaże Ci wszelkie błędy i zaproponuje kilka sugestii dotyczących stylu.
  • Niektóre edytory tekstu umożliwiają walidację XML. Do sprawdzania plików KML możesz na przykład używać jEdit. Zapoznaj się z tym samouczkiem przygotowanym przez zespół Google Earth Outreach.
Czy można kontrolować to, co pojawia się na ekranie, tak aby więcej szczegółów było widocznych, gdy użytkownik jest bliżej powierzchni Ziemi?

Tag regionu służy do kontrolowania, które funkcje są wyświetlane użytkownikowi. Najlepsze źródła informacji o regionach to:

Czy mogę przypisać różne kolory lub style do różnych geometrii w elemencie MultiGeometry?

Element MultiGeometry grupuje geometrie w tym samym elemencie Placemark. Dzięki temu geometrie mogą mieć ten sam styl i wyświetlać się jako jeden element na liście, np. w panelu Moje miejsca w Google Earth.

Style są ustawiane na poziomie znacznika miejsca za pomocą elementu styleUrl lub elementu Style. Dlatego poszczególne geometrie w tym obiekcie nie mogą mieć różnych stylów.

Często stosowanym obejściem jest utworzenie osobnego znacznika miejsca dla każdej geometrii, co pozwala przypisać do każdego z nich inny styl. Aby zapobiec rozrastaniu się listy, umieść elementy w folderze, który ma ListStyle z listItemType z checkHideChildren. W Google Earth na przykład wszystkie znaczniki zostaną umieszczone w tym samym elemencie folderu w sekcji Moje miejsca, co uniemożliwi użytkownikowi otwarcie go w celu wyświetlenia dużej liczby elementów.


Czy po otwarciu pliku KML może się wyświetlać dymek?

Obecnie KML nie obsługuje możliwości otwierania dymku po otwarciu pliku KML. Jeśli jednak użyjesz kotwicy funkcji, możesz utworzyć w dymku link, który otworzy drugi plik KML lub inny dymek.

Czy mogę pozostawić dymek otwarty, gdy odświeża się NetworkLink?

W tym momencie KML nie obsługuje zachowywania stanu dymku po odświeżeniu NetworkLink.

Czy mogę wyświetlać pliki KML utworzone przez moich użytkowników?

Obecnie nie można używać elementu NetworkLink do przechwytywania plików KML utworzonych przez użytkownika w Google Earth lub Mapach. Możesz jednak użyć interfejsu Google Maps JavaScript API jako narzędzia do tworzenia plików KML i przesyłać te informacje z powrotem na serwer. Przykład znajdziesz w GeoDataStore.

Czy mogę sterować suwakiem czasu za pomocą pliku KML?

Suwak czasu w KML otwiera się od razu po otwarciu pliku KML z elementem TimeStamp lub TimeSpan. Suwak czasu znajduje wszystkie aktualnie wybrane elementy TimeStamp i TimeSpan i dostosowuje się do wszystkich reprezentowanych dat. KML nie pozwala obecnie na większą kontrolę nad suwakiem czasu, np. na ustawienie wybranego czasu lub określenie, jak szeroki zakres czasu ma być reprezentowany. Więcej informacji o korzystaniu z obiektu Time znajdziesz w artykule Time and Animation (Czas i animacja).

Jak dodać interaktywność do pliku KML? Czy mogę umieszczać formularze w balonach z opisem w HTML w KML?

Obecnie KML w Google Earth obsługuje tylko podzbiór HTML, który opisuje prezentację, a nie interakcję.

Możesz jednak tworzyć formularze Flash w plikach KML używanych w Google Earth. Aby to zrobić, umieść aplikację Flash w HTML w dymku opisu KML.


Czy mogę automatycznie utworzyć plik KML z arkusza kalkulacyjnego?

Można to zrobić na kilka sposobów.

  • Zrób to samodzielnie za pomocą własnej aplikacji, która będzie analizować plik CSV i tworzyć na jego podstawie plik KML. Przykład znajdziesz w artykule Konwertowanie plików CSV na KML.
  • Użyj arkusza kalkulacyjnego online. Na przykład zespół Google Earth Outreach stworzył arkusz kalkulacyjny do tworzenia map na podstawie Arkuszy Google.
  • Użyj jednego z narzędzi do tworzenia plików KML z Excela, np. tego [link to tek's thread].
  • Użyj Google Earth Plus lub Pro, aby wczytać pliki, a następnie zapisać je jako pliki KML lub KMZ.
Dlaczego moje pliki KML nie pobierają się prawidłowo z serwera WWW?

Serwery internetowe muszą wiedzieć, jakie typy plików udostępniają. Niektóre przeglądarki, np. Firefox, będą próbować odgadnąć typ pliku. Inne, np. Internet Explorer, korzystają z ustawień typu MIME serwera WWW.

W przypadku serwera Apache te 2 wiersze należy umieścić w pliku httpd.conf:

AddType application/vnd.google-earth.kml+xml .kml
AddType application/vnd.google-earth.kmz .kmz

W przypadku serwera Microsoft Internet Information Server wykonaj te czynności:

IIS w wersji 6.0:

http://support.microsoft.com/kb/326965

IIS 4.0 i 5.0:

http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/iis/maintain/featusability/mimeiis.mspx

Jeśli zarządzasz własnym serwerem WWW, musisz zmienić konfigurację. W przeciwnym razie skontaktuj się z usługą hostingu witryny i poproś o wprowadzenie tych zmian.


Dlaczego w treści dymku pojawia się informacja, że może on używać nieprawidłowo sformatowanych adresów URL obrazów?

Ostatnia zmiana w Google Earth zmienia sposób przetwarzania linków do treści w dymku funkcji, aby wyjaśnić wcześniej nieokreślone zachowanie. W rezultacie kliknięcie linku w pliku KMZ o nieprawidłowej strukturze linku spowoduje przekierowanie użytkowników na stronę z komunikatem „Link, który Cię tu przekierował, może być nieprawidłowo sformatowany. Kliknij link poniżej, aby wypróbować tryb starszy”. Jeśli zobaczysz ten komunikat, zmień strukturę treści KML/KMZ, aby zapewnić pełną zgodność z przyszłymi wersjami Google Earth.

Więcej informacji, w tym szczegóły dotyczące prawidłowego przekształcenia treści KMZ, znajdziesz w  tym artykule.

Jakich treści dotyczą nowe reguły ścieżki względnej?

Obecnie ta zmiana dotyczy tylko linków (adresów URL) w treści dymków funkcji. Dotyczy to tagów <description> i <text> w tagach <BallonStyles>. Jednak przyszłe wersje Google Earth mogą być bardziej spójne, dlatego należy zawsze unikać używania katalogu nadrzędnego jako podstawowego adresu URL dla linku względnego w treści KMZ.


Czy pliki KML w sekcji Moje miejsca w Google Earth są wysyłane na serwery Google?

Nie. Pliki KML utworzone w Google Earth lub wczytane w Google Earth przez użytkownika nie są wysyłane do Google. Wszystkie dane są przetwarzane i przechowywane na urządzeniu lokalnym.

Powrót do góry