Zgjatja kml. Zgjatja e skedarit KML Platforma e informacionit gjeografik ArcGIS Server
KML (Keyhole Markup Language) është një format skedari që përdoret për të shfaqur të dhënat gjeografike në Google Earth, Google Maps dhe Google Maps për aplikacionet celulare.
KML përdor një strukturë të bazuar në etiketa me elementë dhe atribute të ndërlidhura dhe bazohet në standardin XML.
Mund të përdorni Google Earth, një redaktues XML ose një redaktues të thjeshtë teksti për të krijuar skedarë KML.
Skedarët KML dhe imazhet e lidhura (nëse disponohen) mund të kompresohen duke përdorur formatin ZIP në arkivat KMZ.
Me skedarët KML, ju mund të:
- vendosni ikona të ndryshme dhe bëni nënshkrime për të treguar vendet në sipërfaqen e Tokës,
- krijoni kënde të ndryshme për objektet e përzgjedhura duke ndryshuar pozicionin e kamerës,
- përdorni imazhe të ndryshme mbivendosje,
- Përcaktoni stile për të personalizuar shfaqjen e një objekti, aplikoni kodin HTML për të krijuar hiperlidhje dhe imazhe inline,
- përdorni dosjet për të grupuar në mënyrë hierarkike artikujt,
- merrni dhe përditësoni në mënyrë dinamike skedarët KML nga hostet në distancë ose lokale,
- merrni të dhëna KML sipas ndryshimeve në shikuesin 3D,
- shfaqni objekte 3D me teksturë COLLADA
Më poshtë mund të përdoren si objekte në skedarët KML:
Shenjat e vendeve (objekt Placemark) - elementi më i thjeshtë, përcakton një vend-shënim - përcaktimi i një pozicioni në sipërfaqen e Tokës duke përdorur një ikonë në formën e një butoni të verdhë.
Shtigjet - vija me një trashësi dhe ngjyrë të caktuar
Polygons - përcakton ngjyrën e vijave dhe ngjyrën e nënshkrimit.
Imazhet - Imazhet e mbivendosura të sipërfaqes së Tokës ju lejojnë të mbivendosni një imazh në peizazhin e Tokës, mund të jenë të lëvizshme dhe të shkallëzueshme, ose jo të lëvizshme, për shembull, një logo.
Modeli tredimensional - ju lejon të lidhni përshkrimin e objekteve tre-dimensionale (për shembull, ndërtesat dhe strukturat). Një model tredimensional mund të vendoset në dy mënyra: duke vendosur lartësinë e figurave të sheshta (duke tërhequr) dhe duke u lidhur me një model të plotë në formatin COLLADA (Google SketchUp).
Shembulli më i thjeshtë i një skedari KML.
Unë do të përshkruaj strukturën e këtij skedari.
Rreshti i parë është titulli XML. Ky është rreshti i parë në çdo skedar KML. Nuk duhet të ketë hapësira ose karaktere përpara kësaj rreshti.
Rreshti i dytë përdoret për të deklaruar hapësirën e emrave KML. Ky është rreshti i dytë në çdo skedar KML 2.1.
Një shenjë vendi që përmban elementët e mëposhtëm:
- emër, një shkurtore e përdorur për të treguar një etiketë
- përshkrimi, përshkrimi që shfaqet në kutinë e komenteve bashkangjitur etiketës
- Pika, tregon pozicionin e shenjës në sipërfaqen e Tokës (gjatësia, gjerësia dhe sipas dëshirës lartësia).
Mund ta ngarkoni këtë skedar në programin Google Earth duke zgjedhur File - Open nga menyja.
Mund të shkarkohet gjithashtu duke përdorur Google Maps API.
Shembull i kodit:
type=»text/javascript»>
Nëse e ngarkojmë në shfletues do të shohim
Ju gjithashtu mund të shikoni skedarin KML në Google Maps.
Është parakusht që skedari juaj KML duhet të vendoset në një faqe interneti në internet.
Që në fillim duhet të shkoni në http://maps.google.ru/
Pastaj, në shiritin e kërkimit, futni adresën e skedarit tuaj KML në internet, për shembull, http: //site/examples/kml/prim_kml_1.kml dhe klikoni në butonin "Kërko në hartë".
Skedari juaj KML do të shfaqet në një hartë të Google.
Vazhdon…
Njoftim
Formati i skedarit KML Misc
Skedarët KML ruhen në formatin XML dhe fillimisht u zhvilluan për programin e hartës Keyhole. Në vitin 2004, Google bleu Keyhole Inc., prandaj skedarët KML tani përdoren gjerësisht nga shërbimet e hartës së Google Google Maps dhe Google Earth.
Detajet teknike të skedarëve KML
Skedarët KML përmbajnë informacion që ruhet në formatin XML. Ky informacion përfshin imazhe dhe të dhëna më të thjeshta si vijat, poligonet dhe pikat. Këta skedarë përdoren për të ruajtur informacione në lidhje me një vendndodhje specifike në hartë. Skedari KML i lejon përdoruesit jo vetëm të shënojë vendndodhjen në hartë, por gjithashtu të shtojë përmbajtje (format HTML), teksturë dhe pamje nga këndvështrime të ndryshme. Për të hapur skedarët KML në Google Maps, mjafton vetëm skedari KML, i vendosur në ueb. Lidhja e veçantë e shtesës në shiritin e kërkimit të Hartave Google do ta hapë atë.
Më shumë informacion rreth formatit të skedarit KML
Zgjatja e skedarit | .kml |
Kategoria e skedarit | |
Shembull skedar | (2,05 KiB) |
Programet e lidhura | Blender (Windows, Mac dhe Linux) Blue Marble Geographics Global Mapper (Windows) ESRI ArcGIS për Desktop (Windows) Google Earth (Windows, Mac dhe Linux) Google Maps (Ueb) Merkaartor (Windows, Mac dhe Linux) Keyhole PRO (Windows & Mac) |
KML është një format skedari që përdoret për të shfaqur të dhënat gjeografike në një shfletues të Earth si Google Earth. KML përdor një strukturë të bazuar në etiketa me elementë dhe atribute të ndërlidhura dhe bazohet në standardin XML. Të gjitha etiketat janë të ndjeshme ndaj shkronjave të vogla dhe duhet të shfaqen saktësisht siç janë renditur në referencën KML. Referenca tregon se cilat etiketa janë opsionale. Brenda një elementi të caktuar, etiketat duhet të shfaqen në rendin e treguar në Referencë. Nëse jeni i ri në KML, eksploroni këtë dokument dhe skedarët e mostrave shoqëruese ( MostratNë Tokë) për të filluar të mësoni rreth strukturës bazë të një skedari KML dhe etiketave më të përdorura. Seksioni i parë përshkruan veçoritë që mund të krijohen me ndërfaqen e përdoruesit të Google Earth. Këto veçori përfshijnë shenjat e vendeve, përshkrimet, mbivendosjet e tokës, shtigjet dhe shumëkëndëshat. Seksioni i dytë përshkruan veçoritë që kërkojnë autorizimin e KML me një redaktues teksti. Kur një skedar teksti ruhet me një .kml ose .kmz zgjerimi, shfletuesit e Earth dinë ta shfaqin atë. |
Këshillë: Për të parë "kodin" KML për një veçori në Google Earth, thjesht mund të klikoni me të djathtën mbi funksionin në shikuesin 3D të Google Earth dhe të zgjidhni Kopjo. Pastaj ngjisni përmbajtjen e kujtesës në çdo redaktues teksti. Veçoria vizuale e shfaqur në Google Earth konvertohet në ekuivalentin e tij të tekstit KML. Sigurohuni që të eksperimentoni me këtë veçori.
Për një diskutim se si të përdorni disa nga veçoritë kryesore në KML, shihni Udhëzuesin e Zhvilluesit.
Tabela e Përmbajtjes
Dokumentet bazë të KML
Lloji më i thjeshtë i dokumenteve KML janë ato që mund të jenë autorë drejtpërdrejt në Google Earth - domethënë, nuk keni nevojë të redaktoni ose krijoni ndonjë KML në një redaktues teksti. Shenjat e vendeve, mbivendosjet e terrenit, shtigjet dhe poligonet mund të jenë të autorizuara drejtpërdrejt në Google Earth.
Shenjat e vendeve
Shenja e vendit është një nga veçoritë më të përdorura në Google Earth. Ai shënon një pozicion në sipërfaqen e Tokës, duke përdorur një shtyllë të verdhë si ikonë. Shenja më e thjeshtë e vendit përfshin vetëm një
Si shembull, aktivizoni dosjen "Pozicionimi Absolut: Lart majtas" në skedarin KML Samples dhe do të shihni një mbivendosje të ekranit në pjesën e sipërme majtas të dritares së pamjes. Kjo u krijua me kodin e mëposhtëm KML:
Pozicionimi kontrollohet duke hartuar një pikë në imazhin e specifikuar nga
Kontrolloni shembujt e tjerë në dosje për të parë se si është e mundur të merrni pozicione të tjera fikse dhe të krijoni imazhe me madhësi dinamike me madhësinë e ekranit. (Vini re se xunits dhe yunits mund të specifikohen gjithashtu si "pikselë" për kontrollin e saktë.) Për detaje të mëtejshme, shihni referencën KML 2.2.
Lidhjet e rrjetit
Një lidhje rrjeti përmban një element me një
Të
- Një skedar imazhi i përdorur nga ikona në stilet e ikonave, mbivendosjet e tokës dhe mbivendosjet e ekranit
- Një skedar modeli i përdorur në
element - Një skedar KML ose KMZ i ngarkuar nga një lidhje rrjeti
Skedari i specifikuar mund të jetë ose një skedar lokal ose një skedar në një server të largët. Në formën e tyre më të thjeshtë, lidhjet e rrjetit janë një mënyrë e dobishme për të ndarë një skedar të madh KML në skedarë më të vegjël dhe më të menaxhueshëm në të njëjtin kompjuter.
Deri më tani, të gjithë shembujt tanë kanë kërkuar që kodi KML të dorëzohet në Google Earth nga makina lokale. Lidhjet e rrjetit ju japin fuqinë për të shërbyer përmbajtje nga një vendndodhje e largët dhe zakonisht përdoren për të shpërndarë të dhëna te një numër i madh përdoruesish. Në këtë mënyrë, nëse të dhënat duhet të ndryshohen, ato duhet të ndryshohen vetëm në vendndodhjen e burimit dhe të gjithë përdoruesit marrin automatikisht të dhënat e përditësuara.
Skriptimi CGI për KML
Përveç drejtimit të skedarëve që përmbajnë të dhëna statike, një lidhje rrjeti "s
Dy gjëra janë të nevojshme për dërgimin e KML përmes një rrjeti CGI:
Kur bëhet një telefonatë nga klienti (Google Earth) te serveri, serveri duhet (1) të kthejë një kod përgjigjeje të HTTP 200 dhe (2) të vendosë llojin e përmbajtjes së përgjigjes në tekst / të thjeshtë ose aplikacion / vnd.google -tokë.kml + xml.
Përgjigja duhet të jetë e vlefshme KML. Për aplikacione komplekse, trajtimi i duhur i gabimeve është shumë i rëndësishëm.
Këshillë: Një mënyrë e thjeshtë për të trajtuar gabimet është të analizoni gabimin e serverit si tekst për emrin e një dosjeje. Për shembull, mund të bëni që serveri të kthehet
Shembujt e mëposhtëm përdorin Python, por ato janë po aq të vlefshme në çdo gjuhë tjetër skriptimi.
Gjenerimi i një vendshënjimi të rastësishëm
Skripti i mëposhtëm Python gjeneron vlera të plota të rastësishme për gjerësia gjeografike dhe gjatësia gjeografike dhe më pas i fut ato vlera në
#! / usr / bin / python importi gjeografik i rastësishëm = random.range (-90, 90) gjatësia = e rastësishme.range (-180, 180) kml = ("\ n ""
Këtu është një shembull i një skedari KML që përmban një lidhje rrjeti që ngarkon këtë skript Python:
shenjë vendi në çdo telefonatë
Pyetjet e rifreskimit të bazuara në pamje
Një lidhje standarde e rrjetit është një lidhje me një drejtim: të dhënat rrjedhin vetëm nga serveri në Google Earth. Rifreskimi i bazuar në pamje mundëson komunikimin me dy drejtime. Kur rifreskimi i bazuar në pamje është aktiv, Google Earth i kthen koordinatat e pamjes në server në një kohë të caktuar. Kjo mund të jetë çdo n sekonda, minuta ose orë, ose një herë të ketë kaluar një kohë e caktuar që nga ndalimi i lëvizjes së pamjes. Shiko
Koordinatat kthehen në server me anë të një HTTP GET që i shton koordinatat si më poshtë (ky është informacioni i parazgjedhur i kutisë kufitare):
MERR / shtegun / te / server / skript / pyetje? BBOX = HTTP / 1.1
Nëse kërkesa është bërë ndërsa përdoruesi po shikonte nga lart në San Francisko, koordinatat mund të duken si më poshtë:
GET /rruga/në/server/skript/query?BBOX=-122.497790,37.730385,-122.380087,37.812331 HTTP / 1.1
Kjo veçori mund të përdoret për disa aplikacione shumë kreative, por për të filluar, një shembull i thjeshtë është paraqitur më poshtë.
Ndjekja e një pike direkt nën shikimin tuaj
Skripti i mëposhtëm Python nga ana e serverit analizon mesazhin e kthimit të dërguar nga Google Earth dhe përgjigjet me një Shenjë Vendi në qendër të ekranit. Sa herë që rifreskohet lidhja e rrjetit, krijohet një shenjë e re e vendit.
#! / usr / bin / python import cgi url = cgi.FieldStorage () bbox = url ["BBOX"]. vlera bbox = bbox.split (") perëndim = noton (bbox) jug = noton (bbox) në lindje = noton (bbox) veri = noton (bbox) qendër_lng = ((lindje - perëndim) / 2) + qendra perëndimore_lat = ((veri - jug) / 2) + jug kml = ("\ n ""
Dhe këtu është KML për lidhjen e rrjetit që ngarkon skriptin Python:
qendra e ekranit tuaj dhe ktheni një vendshënjues.
Parimi i ilustruar në këtë shembull mund të përdoret për disa aplikacione shumë komplekse. Për shembull, nëse keni një bazë të dhënash të informacionit gjeografik, mund të nxirrni koordinatat e shikuesit, të bëni një telefonatë në bazën e të dhënave për të dhënat specifike për pamjen dhe ta ktheni atë në Google Earth si KML.
3 Llojet KML MIME
Kur i përgjigjeni një kërkese nga Google Earth (ose çdo shfletues Earth), një server KML duhet të ndjekë një grup rregullash të caktuara në mënyrë që Google Earth të mund të interpretojë saktë përgjigjet e tij.
Pas suksesit, serveri duhet të kthejë një kod përgjigjeje të HTTP 200 dhe të vendosë llojin e përmbajtjes së përgjigjes në një lloj të përshtatshëm MIME, siç përshkruhet këtu.
Google Earth lexon skedarët KML dhe KMZ. Lloji MIME për skedarët KML është
- aplikacioni / vnd.google-earth.kml + xml
Lloji MIME për skedarët KMZ është
- aplikacioni / vnd.google-earth.kmz
Për Apache, shtoni këto rreshta në httpd.conf dosje:
- Aplikacioni AddType / vnd.google-earth.kml + xml .kml
- Aplikacioni AddType / vnd.google-earth.kmz .kmz
Shikoni dokumentacionin e Microsoft për detaje mbi konfigurimin e llojeve MIME në IIS të Microsoft.
Trupi i përgjigjes duhet të përmbajë të dhëna të vlefshme KML, duke përfshirë deklaratën XML (). Nëse serveri kthen KML të pavlefshme, Lidhja e Rrjetit do të ndalojë, çaktivizohet dhe do të nxjerrë një mesazh gabimi.
Një skedar KML ruan të dhënat e gjeo-modelimit në formatin XML. Ai përmban pika, linja dhe imazhe. Përdorni XML për të shprehur shënimin dhe vizualizimin gjeografik duke ruajtur vendndodhjet, mbivendosjet e imazheve, lidhjet video dhe modelimin e informacionit të tillë si linjat, format, imazhet 3D dhe pikat. Zgjidhje të ndryshme softuerike gjeohapësinore përdorin formatin KML për të vendosur të dhënat në një format që programet e tjera dhe shërbimet e internetit mund ta përdorin lehtësisht.
Prezantimi
Gjuha e shënjimit të vrimës së çelësit - Shënim XML për shprehjen e shënimeve gjeografike dhe paraqitjen në hartat 2D dhe shfletuesit 3D. KML u krijua për t'u përdorur me Google Earth, i cili fillimisht u quajt Keyhole Earth Viewer. Ajo u krijua nga Keyhole. Inc, e cila u ble nga Google në 2004. Ky format u bë standardi ndërkombëtar i Konsorciumit të Hapur Gjeohapësinor në 2008.
Google Earth ishte programi i parë i aftë për të parë dhe redaktuar grafikisht skedarë të tillë. Projekte të tjera si Mermeri kanë filluar gjithashtu të zhvillojnë mbështetje për KML.
Aplikimi: si të krijoni një format KML?
Mund ta hapni skedarin me këtë shtesë në Google Maps. Për ta bërë këtë, duhet të vendosni vendndodhjen e saj në internet dhe më pas të futni URL-në në kutinë e kërkimit në Google Maps.
Google Earth ishte programi i parë që mundi t'i shikonte dhe modifikonte këto skedarë dhe mbetet një nga mënyrat më të njohura për të punuar me gjeodatat në internet. Me një faqe ueb të hapur, përdorni artikullin e menysë "Vendet e mia" (ikona e faqeshënuesit) për të shkarkuar skedarin KML nga kompjuteri juaj ose llogaria e "Diskut të Google".
Ju gjithashtu mund t'i hapni skedarët me çdo redaktues teksti (si Notepad ++). Kjo do t'ju lejojë të shihni një version teksti që përfshin koordinatat, lidhjet e imazhit, këndet e animit të kamerës dhe vulat kohore.
Nëse dëshironi të konvertoni KML në XML, nuk keni nevojë të bëni konvertimin. Meqenëse formati në fakt thjesht përdor shtesën e formatit KML), mund ta riemërtoni .KML në .XML në mënyrë që të hapet në shikuesin tuaj XML.
Ju gjithashtu mund ta importoni skedarin drejtpërdrejt në Google Maps. Kjo bëhet në faqen Google My Maps kur shtohet përmbajtje në një shtresë të re harte. Me hartën e hapur, zgjidhni Import në çdo nivel për të shkarkuar skedarin nga kompjuteri juaj ose Google Drive. Mund të krijoni një shtresë të re duke përdorur butonin Add Layer.
Përndryshe, mund të krijoni skedarin tuaj KML dhe URL-në e tij në Google Maps duke lidhur fillimisht URL-në e skedarit tuaj duke përdorur http://maps.google.com/maps?q=. Për shembull, për të hapur të njëjtën URL, mund të përdorni URL-në e mëposhtme: http://maps.google.com/maps?q=http://mywebsite.com/myfile.kml.
I njëjti operacion funksionon për Google Earth, një shtesë për shikimin 3D për planetin tonë që mund të shtohet në një shfletues ueb.
Struktura
Formati i skedarit KML specifikon një grup funksionesh (etiketa, imazhe, poligone, modele 3D, përshkrime teksti) për t'u shfaqur në Google Maps, Google Earth, Maps, pajisje celulare ose çdo softuer tjetër gjeohapësinor që zbaton kodimin KML. Çdo vend ka një gjatësi dhe gjerësi. Ky format ndan disa nga të njëjtat gramatika strukturore si GML. Disa informacione nuk mund të shihen në Google Maps ose në pajisjet celulare.
Të dhënat shpërndahen shumë shpesh në formatin KMZ, të cilat janë skedarë të koduar KML me një shtrirje .kmz. Ato duhet të jenë të pajtueshme me kompresimin e vjetër (ZIP 2.0), përndryshe skedari .kmz mund të mos shpaketohet.
Sistemet e referencës gjeodezike në KML
Për kornizën e saj të referencës, KML përdor koordinatat gjeografike 3D: gjatësinë, gjerësinë dhe lartësinë. Gjatësitë, komponentët e gjerësisë gjeografike (gradë dhjetore) përcaktohen sipas Sistemit Botëror Gjeodezik 1984 (WGS84). Komponenti vertikal (lartësia) matet në metra nga baza vertikale e gjeoidit WGS84 EGM96. Nëse lartësia nuk është e specifikuar në vargun e koordinatave (për shembull, -77.03647, 38.89763), atëherë vlera e paracaktuar për komponentin e lartësisë është 0 (përafërsisht niveli i detit), domethënë (-77.03647, 38.89763, 0).
Përkufizimi zyrtar i sistemit të koordinatave (i koduar si GML) i përdorur në KML përmbahet në specifikimin OGC KML 2.2. Ky përkufizim i referohet komponentëve të EPSG CRS.
Dokumentacioni
Specifikimi i KML 2.2 i është dorëzuar një konsorciumi të hapur gjeohapësinor për të siguruar statusin e tij si një standard i hapur për të gjitha objektet gjeohapësinore. Në nëntor 2007, një grup i ri pune u formua në kuadër të OGC për të zyrtarizuar standardin. Për standardin e propozuar u kërkuan komente përpara 4 janarit 2008 dhe ai u bë standard zyrtar OGC më 14 prill 2008.
Grupi Punues i Standardeve finalizoi kërkesat për ndryshim KML 2.2 dhe inkorporoi ndryshimet e pranuara. Standardi zyrtar OGC KML 2.3 u publikua më 4 gusht 2015.