Razširitev kml. KML razširitev datoteke Geografska informacijska platforma ArcGIS Server
KML (Keyhole Markup Language) je oblika datoteke, ki se uporablja za prikaz geografskih podatkov v programih Google Earth, Google Maps in Google Maps za mobilne aplikacije.
KML uporablja strukturo, ki temelji na oznakah, z ugnezdenimi elementi in atributi ter temelji na standardu XML.
Za ustvarjanje datotek KML lahko uporabite Google Earth, urejevalnik XML ali preprost urejevalnik besedil.
Datoteke KML in povezane slike (če so na voljo) je mogoče stisniti v formatu ZIP v arhive KMZ.
Z datotekami KML lahko:
- nastavite različne ikone in naredite podpise za označevanje krajev na površini Zemlje,
- ustvarite različne kote za izbrane predmete s spreminjanjem položaja kamere,
- uporabite različne prekrivne slike,
- definirajte sloge za prilagoditev prikaza predmeta, uporabite kodo HTML za ustvarjanje hiperpovezav in slik v vrstici,
- uporabite mape za hierarhično združevanje elementov,
- dinamično prejemanje in posodabljanje datotek KML z oddaljenih ali lokalnih gostiteljev,
- prejemanje podatkov KML glede na spremembe v pregledovalniku 3D,
- prikaz teksturiranih 3D objektov COLLADA
Kot objekte v datotekah KML lahko uporabite naslednje:
Oznake položaja (object Placemark) - najpreprostejši element, ki določa oznako položaja - označevanje položaja na zemeljskem površju z ikono v obliki rumenega gumba.
Poti - črte določene debeline in barve
Poligoni - določa barvo črt in barvo podpisa.
Slike - Prekrivne slike zemeljskega površja vam omogočajo prekrivanje slike na zemeljsko pokrajino, lahko so premične in razširljive ali nepremične, na primer logotip.
Tridimenzionalni model - omogoča povezovanje opisa tridimenzionalnih predmetov (na primer zgradb in objektov). Tridimenzionalni model je mogoče nastaviti na dva načina: z nastavitvijo višine ravnih figur (s vlečenjem) in s povezavo do popolnega modela v formatu COLLADA (Google SketchUp).
Najenostavnejši primer datoteke KML.
Opisal bom strukturo te datoteke.
Prva vrstica je glava XML. To je 1. vrstica v vsaki datoteki KML. Pred to vrstico ne sme biti presledkov ali znakov.
Druga vrstica se uporablja za deklariranje imenskega prostora KML. To je 2. vrstica v vsaki datoteki KML 2.1.
Oznaka položaja, ki vsebuje naslednje elemente:
- ime, bližnjica za označevanje oznake
- opis, opis, ki se pojavi v polju za komentarje, ki je priloženo oznaki
- Točka, označuje položaj oznake na zemeljski površini (dolžina, širina in po želji višina).
To datoteko lahko naložite v program Google Earth tako, da v meniju izberete Datoteka - Odpri.
Prenesete ga lahko tudi s pomočjo API-ja za Google Zemljevide.
Primer kode:
type=»text/javascript»>
Če ga naložimo v brskalnik, bomo videli
Datoteko KML si lahko ogledate tudi v Google Zemljevidih.
Predpogoj je, da mora biti vaša datoteka KML postavljena na spletno mesto v internetu.
Od začetka morate iti na http://maps.google.ru/
Nato v iskalno vrstico vnesite naslov vaše datoteke KML na internetu, na primer http://site/examples/kml/prim_kml_1.kml in kliknite gumb »Išči na zemljevidu«.
Vaša datoteka KML bo prikazana na Googlovem zemljevidu.
Se nadaljuje…
Obvestilo
Format datoteke KML Misc
Datoteke KML so shranjene v formatu XML in so bile prvotno razvite za program za preslikavo Keyhole. Leta 2004 je Google kupil Keyhole Inc., zato datoteke KML zdaj močno uporabljajo Googlovi storitvi za kartiranje Google Maps in Google Earth.
Tehnične podrobnosti datotek KML
Datoteke KML vsebujejo informacije, ki so shranjene v formatu XML. Te informacije vključujejo slike in preprostejše podatke, kot so črte, mnogokotniki in točke. Te datoteke se uporabljajo za shranjevanje informacij o določeni lokaciji na zemljevidu. Datoteka KML omogoča uporabniku, da ne samo označi lokacijo na zemljevidu, temveč tudi doda vsebino (format HTML), teksturo in pogled iz različnih zornih kotov. Za odpiranje datotek KML v Google Zemljevidih je potrebna samo datoteka KML, ki gostuje v spletu. Odprla jo bo ločena povezava razširitve v iskalni vrstici Google Zemljevidov.
Več informacij o formatu datoteke KML
Razširitev datoteke | .kml |
Kategorija datoteke | |
Primer datoteke | (2,05 KB) |
Povezani programi | Blender (Windows, Mac & Linux) Blue Marble Geographics Global Mapper (Windows) ESRI ArcGIS for Desktop (Windows) Google Earth (Windows, Mac in Linux) Google Zemljevidi (splet) Merkaartor (Windows, Mac in Linux) Keyhole PRO (Windows in Mac) |
KML je oblika datoteke, ki se uporablja za prikaz geografskih podatkov v brskalniku Earth, kot je Google Earth. KML uporablja strukturo, ki temelji na oznakah, z ugnezdenimi elementi in atributi ter temelji na standardu XML. Vse oznake so občutljive na velike in male črke in morajo biti prikazane točno tako, kot so navedene v referenci KML. Referenca označuje, katere oznake so neobvezne. Znotraj danega elementa se morajo oznake pojaviti v vrstnem redu, ki je prikazan v referenci. Če ste novi v KML, raziščite ta dokument in priložene vzorčne datoteke ( SamplesInEarth), da začnete spoznavati osnovno strukturo datoteke KML in najpogosteje uporabljene oznake. Prvi razdelek opisuje funkcije, ki jih je mogoče ustvariti z uporabniškim vmesnikom Google Earth. Te funkcije vključujejo oznake položaja, opise, prekrivanja tal, poti in poligone. Drugi razdelek opisuje funkcije, ki zahtevajo avtorsko delo KML z urejevalnikom besedil. Ko je besedilna datoteka shranjena z a .kml oz .kmz razširitev, brskalniki Earth vedo, kako jo prikazati. |
Nasvet:Če si želite ogledati "kodo" KML za funkcijo v programu Google Earth, lahko preprosto z desno tipko miške kliknete funkcijo v pregledovalniku 3D programa Google Earth in izberete Kopiraj. Nato prilepite vsebino odložišča v kateri koli urejevalnik besedil. Vizualna funkcija, prikazana v programu Google Earth, se pretvori v njen ekvivalent besedila KML. Ne pozabite eksperimentirati s to funkcijo.
Za razpravo o uporabi nekaterih ključnih funkcij v KML glejte Vodnik za razvijalce.
Kazalo
Osnovni dokumenti KML
Najpreprostejša vrsta dokumentov KML so tisti, ki jih je mogoče ustvariti neposredno v programu Google Earth – to pomeni, da vam ni treba urejati ali ustvarjati nobenega KML-ja v urejevalniku besedil. Oznake položaja, prekrivanja tal, poti in poligone lahko ustvarite neposredno v programu Google Earth.
Oznake položaja
Oznaka položaja je ena najpogosteje uporabljenih funkcij v programu Google Earth. Označuje položaj na Zemljini površini z rumenim gumbom kot ikono. Najpreprostejša oznaka položaja vključuje samo
Na primer omogočite mapo »Absolutno pozicioniranje: zgoraj levo« v datoteki z vzorci KML in v zgornjem levem kotu okna pogleda boste videli prekrivanje zaslona. To je bilo ustvarjeno z naslednjo kodo KML:
Pozicioniranje je nadzorovano s preslikavo točke na sliki, določeno z
Preverite druge primere v mapi, da vidite, kako je mogoče pridobiti druge fiksne položaje in ustvariti slike, ki so dinamične velikosti glede na velikost zaslona. (Upoštevajte, da xunits in yunits lahko določite tudi kot "piksle" za natančno kontrolo.) Za nadaljnje podrobnosti glejte Referenca KML 2.2.
Omrežne povezave
Omrežna povezava vsebuje a element z an
The
- Slikovna datoteka, ki jo uporabljajo ikone v slogih ikon, talnih prekritvah in zaslonskih prekritvah
- Datoteka modela, uporabljena v
element - Datoteka KML ali KMZ, ki jo naloži omrežna povezava
Navedena datoteka je lahko bodisi lokalna datoteka bodisi datoteka na oddaljenem strežniku. V svoji najpreprostejši obliki so omrežne povezave koristen način za razdelitev ene velike datoteke KML na manjše, bolj obvladljive datoteke v istem računalniku.
Doslej so vsi naši primeri zahtevali, da se koda KML dostavi v Google Earth z lokalnega računalnika. Omrežne povezave vam dajejo moč za prikazovanje vsebine z oddaljene lokacije in se običajno uporabljajo za distribucijo podatkov velikemu številu uporabnikov. Na ta način, če je treba podatke spremeniti, jih je treba spremeniti samo na izvorni lokaciji, vsi uporabniki pa samodejno prejemajo posodobljene podatke.
CGI skript za KML
Poleg tega, da kaže na datoteke, ki vsebujejo statične podatke, omrežna povezava "s
Za dostavo KML prek omrežnega CGI sta potrebni dve stvari:
Ko je opravljen klic od odjemalca (Google Earth) v strežnik, mora strežnik (1) vrniti odzivno kodo HTTP 200 in (2) nastaviti vrsto vsebine odgovora na besedilo / navaden ali application / vnd.google -zemlja.kml + xml.
Odgovor mora biti veljaven KML. Za zapletene aplikacije je zelo pomembno pravilno ravnanje z napakami.
Nasvet: Preprost način za ravnanje z napakami je, da napako strežnika razčlenite kot besedilo za ime mape. Na primer, lahko vrnete strežnik
Naslednji primeri uporabljajo Python, vendar so enako veljavni v katerem koli drugem skriptnem jeziku.
Ustvarjanje naključne oznake položaja
Naslednji skript Python generira naključne celoštevilske vrednosti za zemljepisna širina in dolžino in nato te vrednosti vstavi v
#! / usr / bin / python import random latitude = random.randrange (-90, 90) longitude = random.randrange (-180, 180) kml = ("\ n ""
Tukaj je primer datoteke KML, ki vsebuje omrežno povezavo, ki naloži ta skript Python:
oznaka položaja pri vsakem klicu
Osvežitvene poizvedbe na podlagi pogleda
Standardna omrežna povezava je enosmerna povezava: podatki tečejo samo iz strežnika v Google Zemljo. Osvežitev na podlagi pogleda omogoča dvosmerno komunikacijo. Ko je osvežitev na podlagi pogleda aktivna, Google Earth vrne koordinate pogleda strežniku ob določenem času. To je lahko vsak n sekunde, minute ali ure ali ko je preteklo določeno količino časa, odkar se pogled preneha premikati. Glej
Koordinate se vrnejo strežniku s pomočjo HTTP GET, ki doda koordinate, kot sledi (to so informacije o privzetem mejnem polju):
GET / pot / do / strežnika / skripta / poizvedbe? BBOX = HTTP / 1.1
Če je bila zahteva podana, medtem ko je uporabnik gledal navzdol v San Francisco, bi lahko koordinate izgledale takole:
GET /path/to/server/script/query?BBOX=-122.497790,37.730385,-122.380087,37.812331 HTTP / 1.1
To funkcijo je mogoče uporabiti za nekatere zelo kreativne aplikacije, a za začetek je spodaj predstavljen preprost primer.
Sledenje točki neposredno pod vašim pogledom
Naslednji skript Python na strani strežnika razčleni povratno sporočilo, ki ga je poslala Google Zemlja, in odgovori z oznako položaja na sredini zaslona. Vsakič, ko se omrežna povezava osveži, se ustvari nova oznaka položaja.
#! / usr / bin / python uvoz cgi url = cgi.FieldStorage () bbox = url ["BBOX"]. vrednost bbox = bbox.split (",") zahod = float (bbox) jug = float (bbox) vzhod = float (bbox) sever = float (bbox) center_lng = ((vzhod - zahod) / 2) + zahod center_lat = ((sever - jug) / 2) + južni kml = ("\ n ""
In tukaj je KML za omrežno povezavo, ki naloži skript Python:
sredino zaslona in vrnite oznako položaja.
Načelo, prikazano v tem primeru, je mogoče uporabiti za nekatere zelo zapletene aplikacije. Če imate na primer zbirko geografskih informacij, lahko izvlečete koordinate pregledovalnika, pokličete bazo podatkov za podatke, specifične za pogled, in jih vrnete v Google Earth kot KML.
3 vrste KML MIME
Ko se odzove na zahtevo programa Google Earth (ali katerega koli brskalnika Earth), mora strežnik KML upoštevati določen niz pravil, da lahko Google Earth pravilno razlaga svoje odgovore.
Po uspehu mora strežnik vrniti odzivno kodo HTTP 200 in nastaviti tip vsebine odgovora na ustrezen tip MIME, kot je opisano tukaj.
Google Earth bere datoteke KML in KMZ. Vrsta MIME za datoteke KML je
- aplikacija / vnd.google-earth.kml + xml
Vrsta MIME za datoteke KMZ je
- aplikacija / vnd.google-earth.kmz
Za Apache dodajte te vrstice v httpd.conf mapa:
- Aplikacija AddType / vnd.google-earth.kml + xml .kml
- Aplikacija AddType / vnd.google-earth.kmz .kmz
Oglejte si Microsoftovo dokumentacijo za podrobnosti o nastavitvi vrst MIME na Microsoftovem IIS.
Telo odgovora mora vsebovati veljavne podatke KML, vključno z izjavo XML (). Če strežnik vrne neveljaven KML, se bo omrežna povezava ustavila, deaktivirala in izpisala sporočilo o napaki.
Datoteka KML shranjuje podatke geo-modeliranja v formatu XML. Vsebuje točke, črte in slike. Uporabite XML za izražanje geografskih opomb in vizualizacije s shranjevanjem lokacij, prekrivanj slik, video povezav in informacij o modeliranju, kot so črte, oblike, 3D slike in točke. Različne geoprostorske programske rešitve uporabljajo format KML za shranjevanje podatkov v format, ki ga drugi programi in spletne storitve zlahka uporabljajo.
Uvod
Keyhole Markup Language - zapis XML za izražanje geografskih opomb in upodabljanje v 2D zemljevidih in 3D brskalnikih. KML je bil zasnovan za uporabo s programom Google Earth, ki se je prvotno imenoval Keyhole Earth Viewer. Ustvaril ga je Keyhole. Inc, ki jo je Google kupil leta 2004. Ta format je leta 2008 postal mednarodni standard Open Geospatial Consortium.
Google Earth je bil prvi program, ki je sposoben pregledovati in grafično urejati takšne datoteke. Drugi projekti, kot je Marble, so prav tako začeli razvijati podporo za KML.
Aplikacija: kako ustvariti format KML?
Datoteko s to razširitvijo lahko odprete v Google Zemljevidih. Če želite to narediti, morate njegovo lokacijo postaviti na splet in nato vnesti URL v iskalno polje v Google Zemljevidih.
Google Earth je bil prvi program, ki si je lahko ogledal in urejal te datoteke, in ostaja eden izmed najbolj priljubljenih načinov dela z geopodatki na internetu. Ko je spletna stran odprta, uporabite točko menija Moja mesta (ikona zaznamka), da prenesete datoteko KML iz računalnika ali računa Google Drive.
Datoteke lahko odprete tudi s katerim koli urejevalnikom besedil (na primer Notepad ++). To vam bo omogočilo ogled besedilne različice, ki vključuje koordinate, povezave do slik, kote nagiba kamere in časovne žige.
Če želite pretvoriti KML v XML, vam pretvorbe ni treba izvesti. Ker oblika dejansko uporablja samo razširitev formata KML), lahko .KML preimenujete v .XML, tako da se odpre v pregledovalniku XML.
Datoteko lahko uvozite tudi neposredno v Google Zemljevide. To se naredi na strani Google Moji zemljevidi pri dodajanju vsebine v novo plast zemljevida. Ko je zemljevid odprt, izberite Uvozi na kateri koli ravni, da prenesete datoteko iz računalnika ali Google Drive. Nov sloj lahko ustvarite z gumbom Dodaj plast.
Druga možnost je, da ustvarite svojo datoteko KML in njen URL v Google Zemljevidih, tako da najprej povežete URL svoje datoteke s pomočjo http://maps.google.com/maps?q=. Če želite na primer odpreti isti URL, lahko uporabite naslednji URL: http://maps.google.com/maps?q=http://mywebsite.com/myfile.kml.
Enako deluje za Google Earth, vtičnik za ogled 3D za naš planet, ki ga je mogoče dodati v spletni brskalnik.
Struktura
Format datoteke KML določa nabor funkcij (oznake, slike, poligoni, 3D modeli, besedilni opisi) za prikaz v Google Zemljevidih, Google Earth, Zemljevidih, mobilnih napravah ali kateri koli drugi geoprostorski programski opremi, ki izvaja kodiranje KML. Vsaka lokacija ima zemljepisno dolžino in širino. Ta oblika ima nekaj enakih strukturnih slovnic kot GML. Nekaterih informacij ni mogoče videti v Google Zemljevidih ali mobilnih napravah.
Podatki se zelo pogosto distribuirajo v formatu KMZ, ki so šifrirane datoteke KML s končnico .kmz. Biti morajo združljivi s starim (ZIP 2.0) stiskanjem, sicer datoteke .kmz morda ne boste odpakirali.
Geodetski referenčni sistemi v KML
Za svoj referenčni okvir KML uporablja 3D geografske koordinate: dolžino, širino in nadmorsko višino. Zemljepisne dolžine, komponente zemljepisne širine (decimalne stopinje) so določene po Svetovnem geodetskem sistemu 1984 (WGS84). Navpična komponenta (višina) se meri v metrih od navpične osnove geoida WGS84 EGM96. Če nadmorska višina ni določena v koordinatni vrstici (na primer -77,03647, 38,89763), je privzeta vrednost za komponento nadmorske višine 0 (približno morska gladina), to je (-77,03647, 38,89763, 0).
Formalna definicija koordinatnega sistema (kodirano kot GML), ki se uporablja v KML, je vsebovana v specifikaciji OGC KML 2.2. Ta definicija se nanaša na komponente EPSG CRS.
Dokumentacija
Specifikacija KML 2.2 je bila predložena odprtemu geoprostorskemu konzorciju, da se zagotovi njen status odprtega standarda za vse geoobjekte. Novembra 2007 je bila v okviru OGC ustanovljena nova delovna skupina za formalizacijo standarda. Pred 4. januarjem 2008 so bili zahtevani komentarji na predlagani standard, uradni standard OGC pa je postal 14. aprila 2008.
Delovna skupina za standarde je dokončala zahteve za spremembo KML 2.2 in vključila sprejete spremembe. Uradni standard OGC KML 2.3 je bil objavljen 4. avgusta 2015.