Što su kml datoteke? Kako otvoriti KMZ datoteku. Priprema slojeva i karata za pretvorbu u KML

08.04.2020 Zanimljiv

KML format je proširenje u kojem se spremaju geografski podaci o objektima u programu Google zemlja. Takve informacije uključuju oznake na karti, proizvoljno područje u obliku poligona ili linija, trodimenzionalni model i sliku dijela karte.

Pogledajmo aplikacije koje su u interakciji s ovim formatom.

Google zemlja
  • Nakon pokretanja kliknite na "Otvoren" u glavnom izborniku.
  • Pronađite direktorij s izvornim objektom. U našem slučaju, datoteka sadrži informacije o lokaciji. Kliknite na njega i kliknite na "Otvoren".
  • Programsko sučelje koje označava lokaciju u obliku oznake.

    Bilježnica

    Bilježnica - ugrađena Windows aplikacija za stvaranje tekstualni dokumenti. Može djelovati i kao uređivač koda za određene formate.

  • Pokrenite ovaj softver. Za pregled datoteke morate odabrati "Otvoren" na jelovniku.
  • Odaberite "Sve datoteke" u odgovarajuće polje. Nakon odabira željenog objekta kliknite na "Otvoren".
  • Vizualni prikaz sadržaja datoteke u Notepadu.

    Možemo reći da KML ekstenzija nije široko korištena i koristi se isključivo u Google Earthu, a pregled takve datoteke kroz Notepad malo će ljudima biti od koristi.

    KML je format datoteke koji se koristi za prikaz geografskih podataka u pregledniku Zemlje kao što je Google Earth. KML koristi strukturu temeljenu na oznakama s ugniježđenim elementima i atributima i temelji se na XML standardu. Sve oznake razlikuju velika i mala slova i moraju izgledati točno onako kako su navedene u . Referenca pokazuje koje su oznake izborne. Unutar zadanog elementa moraju se pojaviti oznake Redoslijed prikazano u Referenci.

    Ako ste novi u KML-u, istražite ovaj dokument i popratne ogledne datoteke () kako biste počeli učiti o osnovnoj strukturi KML datoteke i najčešće korištenim oznakama. Prvi odjeljak opisuje značajke koje se mogu stvoriti s korisnikom Google Earth sučelje. Ove značajke uključuju oznake mjesta, opise, slojeve tla, staze i poligone. Drugi odjeljak opisuje značajke koje zahtijevaju autorski KML s uređivačem teksta. Kada se tekstualna datoteka spremi s .kml ili .kmz proširenje, preglednici Zemlje znaju kako to prikazati.

    Savjet: Da biste vidjeli KML "kod" za značajku u Google Earthu, možete jednostavno desnom tipkom miša kliknuti značajku u 3D pregledniku Google Eartha i odabrati Kopiraj. Zatim zalijepite sadržaj međuspremnika u bilo koji uređivač teksta. Vizualna značajka prikazana u Google Earthu pretvara se u svoj KML tekstualni ekvivalent. Svakako eksperimentirajte s ovom značajkom.

    Za raspravu o tome kako koristiti neke od ključnih značajki u KML-u, pogledajte .

    Sadržaj Osnovni KML dokumenti

    Najjednostavnija vrsta KML dokumenata su oni koji se mogu kreirati izravno u programu Google Earth—to jest, ne morate uređivati ​​ili stvarati KML u uređivaču teksta. Oznake mjesta, preklapanja tla, staze i poligoni mogu biti autorski izravno u Google Earthu.

    Oznake mjesta

    Oznaka mjesta jedna je od najčešće korištenih značajki u programu Google Earth. Označava položaj na Zemljinoj površini koristeći žutu pribadaču kao ikonu. Najjednostavnija oznaka mjesta uključuje samo element koji određuje lokaciju oznake mjesta. Možete navesti naziv i prilagođenu ikonu za oznaku mjesta, a također možete dodajte mu druge elemente geometrije.

    Kao primjer, omogućite mapu "Apsolutno pozicioniranje: gore lijevo" u datoteci i vidjet ćete preklapanje zaslona u gornjem lijevom kutu prozora prikaza. Ovo je stvoreno sa sljedećim KML kodom:




    Apsolutno pozicioniranje: gore lijevo

    http://site/kml/documentation/images/top_left.jpg






    Pozicioniranjem se upravlja preslikavanjem točke na slici koju odredi u točku na ekranu koju odredi . U ovom slučaju, gornji lijevi kut slike (0,1) usklađen je s istom točkom na ekranu.

    Provjerite ostale primjere u mapi kako biste vidjeli kako je moguće dobiti druge fiksne položaje i stvoriti slike čija veličina dinamički odgovara veličini zaslona. (Imajte na umu da xjedinice i jedinice također se može navesti kao "pikseli" za preciznu kontrolu.) Za daljnje pojedinosti pogledajte .

    Mrežne veze

    Mrežna veza sadrži element s (hipertekstualnom referencom) koji učitava datoteku. Može biti specifikacija lokalne datoteke ili apsolutni URL. Unatoč nazivu, a ne mora nužno učitavati datoteke s mreže.

    In poveznica navodi lokaciju bilo čega od sljedećeg:

    • Datoteka slike koju koriste ikone u stilovima ikona, preklapanje tla i preklapanje zaslona
    • Datoteka modela koja se koristi u elementu
    • KML ili KMZ datoteka koju učitava mrežna veza

    Navedena datoteka može biti ili lokalna datoteka ili datoteka na udaljenom poslužitelju. U svom najjednostavnijem obliku, mrežne veze su koristan način za dijeljenje jedne velike KML datoteke u manje datoteke kojima se lakše upravlja na istom računalu.

    Do sada su svi naši primjeri zahtijevali isporuku KML koda u Google Earth s lokalnog stroja. Mrežne veze vam daju moć posluživanja sadržaja s udaljene lokacije i obično se koriste za distribuciju podataka velikom broju korisnika. Na taj način, ako podatke treba dopuniti, oni se moraju mijenjati samo na mjestu izvora, a svi korisnici automatski dobivaju ažurirane podatke.

    CGI skriptiranje za KML

    Osim što pokazuju na datoteke koje sadrže statične podatke, mrežne veze mogu upućivati ​​na podatke koji su dinamički generirani—na primjer, pomoću CGI skripte koja se nalazi na mrežnom poslužitelju. Uz nešto znanja o skriptnom jeziku kao što su PHP, Python, ili Perl, možete stvoriti skriptu koja isporučuje tok (ili datoteku) KML podataka svakoj mrežnoj vezi.

    Za isporuku KML-a kroz mrežni CGI potrebne su dvije stvari:

    Kada se od klijenta (Google Earth) uputi poziv poslužitelju, poslužitelj mora (1) vratiti kod odgovora HTTP 200 i (2) postaviti vrstu sadržaja odgovora na text/plain ili application/vnd.google -zemlja.kml+xml.

    Odgovor mora biti važeći KML. Za složene aplikacije vrlo je važno pravilno rukovanje pogreškama.

    Savjet: Jednostavan način rješavanja pogrešaka je raščlanjivanje pogreške poslužitelja kao teksta za naziv mape. Na primjer, možete imati da poslužitelj vrati bazu podataka nedostupnu kao niz. Ovo je informativnije (i jednostavnije za korištenje) nego dopustiti da veza padne.

    Sljedeći primjeri koriste Python, ali su jednako važeći u bilo kojem drugom skriptnom jeziku.

    Generiranje nasumične oznake mjesta

    Sljedeća Python skripta generira nasumične vrijednosti cijelog broja za zemljopisna širina i zemljopisna dužina a zatim umeće te vrijednosti u element Kad god se mrežna veza osvježi, Python skripta se ponovno pokreće i generira KML s novim vrijednostima zemljopisne širine i dužine.

    #!/usr/bin/python import slučajna širina = random.randrange(-90, 90) dužina = random.randrange(-180, 180) kml = ("\n" "\n" "\n" "Nasumična oznaka mjesta \n" "\n" "%d,%d\n" "\n" "\n" "") %(dužina, širina) print "Content-Type: application/vnd.google-earth.kml+xml \n" ispis kml

    Evo primjera KML datoteke koja sadrži mrežnu vezu koja učitava ovu Python skriptu:




    Mrežne veze
    0
    0
    Primjer mrežne veze 1

    Nasumična oznaka mjesta
    0
    0
    Jednostavna skripta na strani poslužitelja koja generira novi nasumični
    oznaku mjesta na svakom pozivu
    0
    0

    http:// vašposlužitelj.com/cgi-bin/randomPlacemark.py



    Upiti za osvježavanje temeljeni na prikazu

    Standardna mrežna veza je jednosmjerna veza: podaci teku samo od poslužitelja do Google Eartha. Osvježavanje na temelju prikaza omogućuje dvosmjernu komunikaciju. Kada je aktivno osvježavanje temeljeno na pogledu, Google Earth vraća koordinate pogleda na poslužitelj u određeno vrijeme. Ovo može biti svaki n sekundi, minuta ili sati, ili nakon što je proteklo određeno vrijeme otkako se pogled prestao pomicati. Pogledajte u KML 2.2 Referenci.

    Koordinate se vraćaju poslužitelju pomoću HTTP GET-a koji dodaje koordinate na sljedeći način (ovo su zadane informacije o graničnom okviru):

    GET /path/to/sever/script/query?BBOX= HTTP/1.1

    Ako je zahtjev upućen dok je korisnik gledao San Francisco, koordinate bi mogle izgledati ovako:

    GET /path/to/server/script/query?BBOX=-122.497790,37.730385,-122.380087,37.812331 HTTP/1.1

    Ova značajka može se koristiti za neke vrlo kreativne aplikacije, ali da biste započeli, u nastavku je predstavljen jednostavan primjer.

    Praćenje točke izravno ispod vašeg pogleda

    Sljedeća Python skripta na strani poslužitelja analizira povratnu poruku koju šalje Google Earth i odgovara oznakom mjesta u sredini zaslona. Svaki put kad se mrežna veza osvježi, generira se nova oznaka mjesta.

    #!/usr/bin/python import cgi url = cgi.FieldStorage() bbox = url["BBOX"].vrijednost bbox = bbox.split(",") zapad = float(bbox) jug = float(bbox) istok = float(bbox) sjever = float(bbox) center_lng = ((istok - zapad) / 2) + zapad center_lat = ((sjever - jug) / 2) + jug kml = ("\n" "\n" "\ n" "Oznaka mjesta u centru pogleda\n" "\n" "%.6f,%.6f\n" "\n" "\n" "") %(center_lng, center_lat) print "Content-Type: application/ vnd.google-earth.kml+xml\n" ispis kml

    A ovdje je KML za mrežnu vezu koja učitava Python skriptu:




    Mrežne veze
    0
    0
    Primjer mrežne veze 2

    Prikaz centrirane oznake mjesta
    0
    0
    Osvježavanje na temelju pogleda omogućuje udaljenom poslužitelju izračun
    središte vašeg zaslona i vratite oznaku mjesta.
    0
    0

    http:// vašposlužitelj.com/cgi-bin/viewCenteredPlacemark.py
    2
    onStop
    1



    Princip ilustriran u ovom primjeru može se koristiti za neke vrlo složene primjene. Na primjer, ako imate bazu podataka geografskih podataka, možete izdvojiti koordinate gledatelja, uputiti poziv bazi podataka za podatke koji su specifični za prikaz i vratiti ih u Google Earth kao KML.

    3 vrste KML MIME

    Kada odgovara na zahtjev Google Eartha (ili bilo kojeg preglednika Earth), KML poslužitelj mora slijediti određeni skup pravila kako bi Google Earth mogao ispravno interpretirati njegove odgovore.

    Nakon uspjeha, poslužitelj mora vratiti šifru odgovora HTTP 200 i postaviti tip sadržaja odgovora na odgovarajući MIME tip, kao što je ovdje opisano.

    Google Earth čita KML i KMZ datoteke. Vrsta MIME za KML datoteke je

    • aplikacija/vnd.google-earth.kml+xml

    Vrsta MIME za KMZ datoteke je

    • aplikacija/vnd.google-earth.kmz

    Za Apache, dodajte ove retke u httpd.conf datoteka:

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

    Pogledajte Microsoftovu dokumentaciju za detalje o postavljanju MIME vrsta na Microsoftovom IIS-u.

    Tijelo odgovora mora sadržavati važeće KML podatke, uključujući XML deklaraciju (). Ako poslužitelj vrati nevažeći KML, mrežna veza će se zaustaviti, deaktivirati i ispisati poruku o pogrešci.

    Što je sljedeće?

    Spremni za više? Pogledajte , koji opisuje ključne KML značajke. Također, potražite informacije o određenim elementima.

    Osim ako nije drugačije navedeno, sadržaj ove stranice licenciran je pod licencom Creative Commons Attribution 4.0, a uzorci koda licencirani su pod licencom Apache 2.0. Za detalje pogledajte naše. Java je registrirani zaštitni znak tvrtke Oracle i/ili njegovih podružnica.

    Uz pomoć kojih se geo-podaci iz tablice (mislim da većina ljudi iz navike pohranjuje informacije u XLS formatu) mogu pretvoriti u kartu u KML formatu - za pregled u Google karte ili Google Earth. Odmah da napomenem da postoje i drugi načini stvaranja osobne karte(karte nekretnina, karte vlastitog kretanja po planetu ili karte položaja bliže i dalje rodbine i sl. :-)). Jedan od najočitijih je korištenje Google servis Map Maker http://www.google.com/mapmaker. Ali vratimo se mojoj metodi. Što imamo na ulazu? Excel tablica s dva lista. Za referencu, prvi list sadrži popis moskovskih metro stanica i njihovih GPS koordinate. Na drugom listu su naši podaci koji se prikazuju na karti u sljedećem formatu:

    - broj objekta
    -Vrsta nekretnine (1,2,3,4 – tada sami možete odlučiti koja oznaka odgovara kojoj vrsti nekretnine)
    -Skraćeni naziv objekta
    -Opis objekta
    -Poveznica na cijelu fotografiju s http://
    -Poveznica na stranicu s Detaljan opis ili fotografija
    -GPS1 koordinate objekta – zemljopisna širina i dužina.
    -GPS2

    Ako ste adresu koju trebate pronašli na Google kartama, tada se zemljopisna širina i dužina mogu odrediti na sljedeći način:
    U gornjem desnom kutu Google karata pronađite "Veza na ovu stranicu"

    Preuzmite arhivu s predlošcima i makronaredbama:

    Prva KML-Stemplon-Map datoteka je predložak tablice za popunjavanje vašim podacima.

    Druga datoteka je kml-PERSONAL s makronaredbama. Mora se kopirati u lokalno računalo u mapu na disku:
    C:\DocumentsandSettings\User\ApplicationData\
    Microsoft\Excel\XLSTART
    ("Korisnik" je vaša prijava za prijavu na računalo)

    Idite u Excel i uredite tablicu prema svojim potrebama.

    U izborniku Alati odaberite Makronaredbe – Makronaredbe

    U opcijama navodimo našu makro datoteku kml-PERSONAL i odabiremo KML_XLS_Shablon makro. Zatim kliknite "Pokreni".


    Nakon toga se pojavljuje prozor za spremanje KML datoteke - unesite npr. Test.kml.

    Vrlo potreban korak. Nakon što je datoteka spremljena u lokalni disk, pronađite ga, otvorite u običnom Windows notepadu (NotePadu) i spremite u UTF-8 format!!!


    Spreman.

    Sada se KML može otvoriti s koristeći Google Zemlja.

    Da biste otvorili datoteku u Google kartama, prenesite je na poslužitelj (možete je kreirati negdje na Narod.ru i tamo je prenijeti ako nemate vlastitu web stranicu).

    Zatim idemo na

    KML (Keyhole Markup Language) je format datoteke koji se koristi za prikaz geografskih podataka u programima Google Earth. Google karte i Google karte za mobilne uređaje.

    KML koristi strukturu temeljenu na oznakama s ugniježđenim elementima i atributima i temelji se na XML standardu.

    Za izradu KML datoteka možete koristiti Google Earth, XML uređivač ili uobičajeni uređivač teksta.

    KML datoteke i pridružene slike (ako su dostupne) mogu se komprimirati pomoću ZIP formata u KMZ arhive.

    S KML datotekama možete:

    • instalirajte razne ikone i napravite potpise za označavanje mjesta na površini Zemlje,
    • stvoriti različite kutove za odabrane objekte promjenom položaja kamere,
    • koristiti različite preklapajuće slike,
    • definirati stilove za prilagodbu prikaza objekta, primijeniti HTML kod za stvaranje hiperveza i ugrađenih slika,
    • koristiti mape za hijerarhijsko grupiranje stavki,
    • dinamički primati i ažurirati KML datoteke s udaljenih ili lokalnih mrežnih čvorova,
    • primanje KML podataka u skladu s promjenama u 3D pregledniku,
    • prikaz teksturiranih 3D COLLADA objekata

    Sljedeće se može koristiti kao objekti u datotekama KML formata:

    Oznake mjesta (Placemark object) - najjednostavniji element, definira oznaku mjesta - oznaku položaja na površini Zemlje pomoću ikone u obliku žutog gumba.

    Staze su linije određene debljine i boje.

    Poligoni - definira boju linija i boju potpisa.

    Slike - preklapajuće slike Zemljine površine omogućuju vam da preklapate sliku na Zemljinom krajoliku; mogu se pomicati i skalirati ili ne pomicati, na primjer, logotip.

    Trodimenzionalni model - omogućuje vam povezivanje opisa trodimenzionalnih objekata (na primjer, zgrada i građevina). Trodimenzionalni model se može definirati na dva načina: postavljanjem visine ravnih figura (ekstrudiranjem) i povezivanjem s potpunim modelom u COLLADA formatu (Google SketchUp).

    Jednostavan primjer KML datoteke.



    Palača sportova
    Sportska palača "Nagorny" prosp. Gagarina, 29
    43.979459,56.291908,0


    Opisat ću strukturu ove datoteke.

    Prvi red je XML zaglavlje. Ovo je prvi red u svakoj KML datoteci. Prije ovog retka ne smije biti razmaka ili simbola.

    Drugi redak koristi se za deklaraciju KML imenskog prostora. Ovo je drugi redak u svakoj KML 2.1 datoteci.

    Objekt oznake mjesta koji sadrži sljedeće elemente:

    - naziv, oznaka kojom se označava oznaka

    — opis, opis koji se pojavljuje u prozoru komentara priloženom na oznaku

    — Točka, označava položaj oznake na Zemljinoj površini (dužinu, širinu i po izboru visinu).

    Ovu datoteku možete preuzeti u programu Google Earth odabirom File - Open iz izbornika.

    Također se može preuzeti pomoću Google Maps API-ja.

    Primjer koda:

    Primjer koristeći Google Zemlja na web stranici

    funkcija initialize() (if (GBrowserIsCompatible()) (geoXml = new GGeoXml("http://remont.cek.ru/xml/prim_kml_1.kml");

    var map = new GMap2(document.getElementById("map_canvas"));

    map.setCenter(novi GLatLng(56.291908,43.979459), 15);

    map.setMapType(G_SATELLITE_MAP);

    map.addControl(new GSmallMapControl());

    map.addControl(new GMapTypeControl());

    map.addOverlay(geoXml);

    Ako ga učitamo u preglednik vidjet ćemo

    KML datoteku možete pogledati i na Google kartama.

    Najprije je potrebno da vaša KML datoteka mora biti smještena na web stranici na Internetu.

    Prvo morate otići na http://maps.google.ru/

    Zatim u traku za pretraživanje unesite adresu vaše KML datoteke na internetu, na primjer, http://site/examples/kml/prim_kml_1.kml i kliknite na gumb "Traži na karti".

    Vaša KML datoteka pojavit će se na Google karti.

    Nastavit će se…

    Prva opcija kojom možete otvoriti KMZ format je aplikacija Google Earth. Ovo je univerzalni program za mapiranje svjetski poznate tvrtke.

    Sve što trebate učiniti je odabrati stavku izbornika "Datoteka" - "Otvori" u pokrenutom softveru. U sljedećoj fazi odaberite mapu u kojoj se nalazi sama datoteka, odaberite je i kliknite gumb "Otvori".

    Drugi način je da povučete datoteku iz Explorera u područje gdje se prikazuju karte.

    Korištenje Googleove aplikacije SketchUp

    Ovaj program služi za trodimenzionalno modeliranje, a datoteka s ekstenzijom KMZ može pohraniti sve vrste 3D modela objekata potrebnih za realističnu demonstraciju područja.

    Da biste je otvorili, kliknite Import-File. Kao iu prethodnom slučaju, pronađite željenu mapu, odaberite je potrebna datoteka i kliknite Uvezi.

    Geoinformacijski softver Global Mapper

    Ovaj program podržava velik broj formata karte, uključujući i onaj spomenut u ovom članku. Zahvaljujući aplikaciji, podaci sadržani u njoj mogu se ne samo uređivati, već i transformirati.

    Otvaranje se vrši pomoću stavke izbornika Open Data File(s) - File. Dalje je sve slično prethodnim opcijama.

    Geoinformacijska platforma ArcGIS Server

    Koristit ćemo njegovu desktop verziju - ArcGIS Explorer. KMZ datoteka, koja se također koristi u ovu aplikaciju, pomaže u postavljanju koordinata traženog objekta.

    Možete ga otvoriti povlačenjem iz Windows Explorera izravno u radni prostor softvera.