Ustvarjanje zemljevidnih ploščic
QCAD ima dve orodji ukazne vrstice za ustvarjanje zemljevidnih ploščic za uporabo s spletnimi prikazi zemljevidov, kot je Leaflet. Leaflet je knjižnica JavaScript za delo z interaktivnimi zemljevidi v brskalniku.
Predstavitev risbe na spletu
Section titled “Predstavitev risbe na spletu”Najpreprostejši primer uporabe spletnega zemljevida je zagotoviti obiskovalcem spletnega mesta interaktiven pogled risbe z možnostjo povečave.
Tukaj je primer, ki ustvari zemljevidne ploščice za katero koli podano datoteko risbe:
dwg2maptiles -z 0-6 -c -b white -hq-postfix=@2x -a -o path/to/output/directory drawing.dxfStikalo -z določa ravni povečave, ki naj se ustvarijo, tukaj od ravni povečave 0 do ravni povečave 6. To pomeni, da lahko uporabnik, začenši od ravni 0 (celotna risba s samodejno povečavo), poveča 6-krat, dokler ni dosežena meja. Vsakič, ko uporabnik poveča, se risba poveča za faktor 2, tako da lahko uporabnik s 6 ravnmi povečave poveča za faktor 2^6 (=64). Ustvarjanje več ravni povečave zahteva več časa in prostora na disku. Vsaka dodatna raven povečave za ustvarjanje običajno zahteva štirikrat več časa in prostora na disku kot prejšnja.
Ploščice se ustvarijo v danem izhodnem imeniku (-o) s standardno strukturo imenikov in imeni datotek za zemljevidne ploščice (z/x/y.png).
V zgornjem primeru želimo, da se risba upodobi na belem ozadju (-b white). Bele črte je treba popraviti v črne, da se zagotovi vidnost vseh črt (-c).
Argument -hq-postfix=@2x orodju dwg2maptiles pove, naj ustvari ploščice visoke kakovosti (hq, visoka ločljivost, retina) v velikosti 512x512px skupaj s ploščicami standardne ločljivosti v velikosti 256x256px.
Za nadaljnje povečanje kakovosti uporabljamo tudi stikalo -a za glajenje robov (antialiasing).
Oglejte si primer z Leaflet na spletu
Ustvarjanje georeferenciranih zemljevidnih ploščic
Section titled “Ustvarjanje georeferenciranih zemljevidnih ploščic”dwg2maptiles je mogoče uporabiti tudi za ustvarjanje natančnih prekrivanj za svetovne zemljevide. Za to je treba risbo običajno pretvoriti iz lokalnega koordinatnega sistema v koordinate Web Mercator, kot jih običajno uporabljajo spletni zemljevidi.
QCAD Professional ima ločeno orodje ukazne vrstice za pretvorbo risb iz enega koordinatnega referenčnega sistema (CRS) v drugega: dwgmapconvert.
dwgmapconvert se običajno uporablja za pretvorbo vseh koordinat v dani datoteki risbe iz znanega, lokalnega koordinatnega sistema v koordinatni sistem EPSG:3857 (včasih imenovan “Web Mercator”). To je koordinatni sistem, ki ga uporablja večina spletnih zemljevidov, na primer Google Maps ali mapbox. Za uporabo risbe kot vhoda za dwg2maptiles in ustvarjanje georeferenciranih zemljevidnih ploščic mora biti risba v koordinatnem sistemu EPSG:3857.
V koordinatnem sistemu EPSG:3857 se celoten svetovni zemljevid pri ravni povečave 0 prilega v kvadrat velikosti 20037508.3427892m. Če je risba pretvorjena v ta koordinatni sistem, se risba pretvori tako, da se prilega v tisti svetovni kvadrat in da je risba nameščena na pravilnih, projiciranih svetovnih koordinatah.
Na primer, če je bila risba ustvarjena v EPSG:2056 (tudi LV95, lokalni švicarski koordinatni sistem), jo je mogoče pretvoriti v EPSG:3857 z dwgmapconvert na naslednji način:
dwgmapconvert -segment-length=0.5 -crs-in=EPSG:2056 -crs-out=EPSG:3857 -f -o drawing_epsg3857.dxf drawing_epsg2056.dxfKer so zemljevidne projekcije običajno nelinearne, je treba krivulje in daljše črte razdeliti na majhne črtne segmente, ki jih je nato mogoče projicirati na nelinearen način. Če je podano stikalo -segment-length, dwgmapconvert to segmentacijo izvede samodejno z uporabo podane dolžine segmenta. Dolžina segmenta je določena v risalnih enotah izvirne risbe (tukaj metri).
-crs-in se uporablja za določitev vhodnega koordinatnega sistema, tukaj EPSG:2056.
-crs-out se uporablja za določitev izhodnega koordinatnega sistema, ki mora biti EPSG:3857, če naj se izhod pozneje uporabi z dwg2maptiles.
dwgmapconvert ima podporo za LV95 kot vhod in WebMercator kot izhod.
Drugi koordinatni sistemi bodo dodani v prihodnjih izdajah ali jih lahko doda uporabnik.
Za dodajanje podpore za nov koordinatni sistem je treba zagotoviti dve enačbi za pretvorbo koordinat iz novega koordinatnega sistema v WGS84 (zemljepisna dolžina/širina, kot koordinate GPS).
Nove koordinatne sisteme je mogoče dodati v konfiguracijsko datoteko JSON z imenom CRS.json, ki se nahaja v mapi “scripts” uporabljene namestitve QCAD. Tukaj je primer datoteke CRS.json, ki konfigurira koordinatni sistem LV95. Da bi lahko uporabili LV95 kot vhod za orodje dwgmapconvert, moramo zagotoviti razdelek “toWgs84” z enačbami za pretvorbo koordinat x in y. Tukaj uporabljamo tudi dve pomožni spremenljivki, x_ in y_, ki morata biti inicializirani v enačbi x, da sta dostopni v obeh enačbah.
Zagotovili bi lahko tudi razdelek “fromWgs84”, da bi omogočili pretvorbo iz drugih koordinatnih sistemov v LV95. Oba razdelka sta izbirna, odvisno od smeri pretvorbe, ki jo želite podpirati.
{ "CRS" : [ { "id" : "EPSG:2056 CH1903+ / LV95", "toWgs84" : { "x": "x_ = (y-1200000)/1000000; y_ = (x-2600000)/1000000; (2.6779094 + 4.728982*y_ + 0.791484*y_*x_ + 0.1306*y_*x_*x_ - 0.0436*y_*y_*y_) * 100 / 3", "y": "(16.9023892 + 3.238272*x_ - 0.270978*y_*y_ - 0.002528*x_*x_ - 0.0447*y_*y_*x_ - 0.0140*x_*x_*x_) * 100 / 36" }, "aliases" : [ "LV95", "Swiss" ] } ]}Ustvarjanje zemljevidnih ploščic
Section titled “Ustvarjanje zemljevidnih ploščic”Ko smo risbo pretvorili v koordinate EPSG:3857, lahko uporabimo dwg2maptiles za ustvarjanje ploščic za prekrivni sloj v Leaflet:
dwg2maptiles -web-mercator -skip-empty -hq-postfix=@2x -z 22 -b transparent -o path/to/output/directory drawing_epsg3857.dxfUpoštevajte, da moramo orodju dwg2maptiles posredovati stikalo -web-mercator, da mu sporočimo, da ne sme izvesti samodejne povečave, ampak ustvariti prekrivanje zemljevida v natančnih koordinatah EPSG:3857, kot so prisotne v datoteki.
-skip-empty orodju dwg2maptiles pove, naj ne ustvarja ploščic, ki ne vsebujejo nobenega dela risbe. Brez tega stikala se na raven povečave ustvari 2^zoomLevel ploščic. To bi bilo 4’194’304 ploščic za raven povečave 22. Ker prekrivna risba zelo verjetno pokriva le zelo majhen del svetovnega zemljevida, je treba to stikalo vedno uporabiti pri ustvarjanju prekrivnih zemljevidov.
-b transparent nastavi ozadje na prosojno, tako da je zemljevid mogoče uporabiti kot prekrivanje za obstoječi svetovni zemljevid (npr. Google Map, mapbox itd.). Za nadzor barve, v kateri so prikazane črne ali bele črte, je mogoče ozadje nastaviti na črno prosojno ali belo prosojno z -b "#00ffffff" (belo prosojno ozadje, črne črte) oziroma -b "#00000000" (črno prosojno ozadje, bele črte). V tem primeru obvezno posredujte tudi stikalo -c, da vsilite samodejno popravljanje barv.
Argument -hq-postfix=@2x je mogoče uporabiti za ustvarjanje ploščic visoke ločljivosti (512px) poleg običajnih ploščic 256px. Vrednost “@2x” je priporočena in široko uporabljena za ploščice visoke ločljivosti, tudi v Leaflet. S tem stikalom se za vsako ploščico nizke ločljivosti “N.png” ustvari ploščica visoke ločljivosti “[email protected]”.
Uporaba več procesov (in jeder CPE)
Section titled “Uporaba več procesov (in jeder CPE)”Ustvarjanje zemljevidnih ploščic je lahko naloga, ki intenzivno obremenjuje CPE, odvisno od ravni povečave, kompleksnosti risbe in drugih nastavitev.
Za hitrejše ustvarjanje zemljevidnih ploščic lahko nalogo razdelite med več razpoložljivih jeder CPE. Za to funkcijo dwg2maptiles ponuja stikalo -s za ustvarjanje samo dela potrebnih ploščic. Stikalo -s pričakuje dva z vejico ločena parametra: del za ustvarjanje in skupno število uporabljenih delov. Na primer, -s 1,4 bi ustvaril prvi del od skupno štirih delov. Za ustvarjanje vseh ploščic zgornjega primera z uporabo štirih jeder CPE bi lahko zagnali:
dwg2maptiles -web-mercator -skip-empty -hq-postfix=@2x -z 22 -s 1,4 -b transparent -o path/to/output/directory drawing_epsg3857.dxf &dwg2maptiles -web-mercator -skip-empty -hq-postfix=@2x -z 22 -s 2,4 -b transparent -o path/to/output/directory drawing_epsg3857.dxf &dwg2maptiles -web-mercator -skip-empty -hq-postfix=@2x -z 22 -s 3,4 -b transparent -o path/to/output/directory drawing_epsg3857.dxf &dwg2maptiles -web-mercator -skip-empty -hq-postfix=@2x -z 22 -s 4,4 -b transparent -o path/to/output/directory drawing_epsg3857.dxf &waitSeveda bi lahko naloge razdelili tudi po ravneh povečave ali uporabili dele samo za višje ravni povečave in en sam proces za vse nižje (cenejše) ravni povečave itd.
Primer
Section titled “Primer”Interaktiven primer zagotavlja dva prekrivna sloja zemljevidu švicarskega kantona Zürich: zaščiteno gozdno območje in koridorje za prostoživeče živali. Izvirni podatki so prišli v koordinatah EPSG:2056 (LV95) in so bili pretvorjeni v EPSG:3857 z uporabo dwgmapconvert.