Stilizovanje kontura u 3D (QGIS3)

Doprinos: Stiven Kim

U prethodnom tutorijalu, Stilizovanje rečne mreže pomoću izraza (QGIS3), koristili smo izraze za filtriranje i stilizovanje rečne mreže. U ovom tutorijalu, radićemo sa skupom podataka o konturama i stilizovaćemo ga koristeći izraze kako bismo mu dali 3D efekat.

Pregled zadatka

Koristićemo sloj simbola generatora geometrije da bismo dinamički primenili pomak na konture, a zatim ćemo primeniti rampu boja da bismo stvorili izgled 3D mape.

../../_images/output2.png

Dobijte podatke

„Nacionalna mapa <https://www.usgs.gov/programs/national-geospatial-program/national-map>`_ je zajednički napor Geološkog zavoda SAD (USGS) i drugih partnera na poboljšanju i pružanju topografskih informacija za naciju. Preuzećemo skup podataka o konturama iz programa za preuzimanje Nacionalne mape.“

  1. Posetite TNM Download v2. Pregledajte do regiona koji vas zanima. Za ovaj tutorijal, preuzećemo konture za region oko Ostina, Teksas.

../../_images/data110.png
  1. U programu za preuzimanje potražite skup podataka „Elevation Products(3DEP)“ i označite polje da biste videli sve podkategorije. Izaberite samo kategoriju „Contours (1:24.000-scale)“. U okviru :guilabel:„File Formats“ izaberite „GeoPackage“.

../../_images/data24.png
  1. Kliknite na plavo dugme Pretraži proizvode da biste videli listu odgovarajućih datoteka.

../../_images/data34.png
  1. U rezultatima ćete pronaći datoteku „USGS NED 1/3 arc-second Contours for Austin E, Texas“. Kliknite na Download Link(ZIP) da biste preuzeli zipovanu GeoPackage datoteku ELEV_Austin_E_TX_1X1_GPKG.zip

../../_images/data44.png

Možete direktno preuzeti zip datoteku sa ELEV_Austin_E_TX_1X1_GPKG.zip

Izvor podataka [USGS]

Белешка

Takođe možete generisati konture iz bilo kog DEM sloja i koristiti ih umesto kontura koje se ovde koriste. Pogledajte naš tutorijal Rad sa podacima o terenu (QGIS3) za uputstva korak po korak.

Procedura

  1. Raspakujte datoteku ELEV_Austin_E_TX_1X1_GPKG.zip na svom računaru. Pronađite rezultujuću datoteku ELEV_Austin_E_TX_1X1_GPKG.gpkg u QGIS pregledaču i proširite je. Izaberite sloj Elev_Contour i prevucite ga na platno.

../../_images/160.png
  1. Novi sloj Elev_Contour će sada biti učitan i trebalo bi da vidite konturne linije.

../../_images/230.png
  1. Kliknite desnim tasterom miša na sloj Elev_Contour i izaberite Open Attribute Table. Primetićete da polje contourelevation sadrži vrednost visine za svaku konturnu liniju. Ovo ime polja je važno i koristi se u izrazima u narednim koracima.

../../_images/325.png
  1. Sada smo spremni da stilizujemo konture. Pre nego što nastavimo, prvo moramo dodati skalu boja pogodnu za bojenje elevacije. Ako ste već dodali skalu boja wiki-1.02 za naš prethodni tutorijal Kreiranje mape sveta u bloku (QGIS3), možete preći na korak 9. Kliknite na Podešavanja u meniju i izaberite Menadžer stilova.

../../_images/410.png
  1. Kliknite na znak plus Dodaj stavku na dnu i izaberite Katalog: cpt-city….

../../_images/510.png
  1. Pomerite se nadole po skalama boja dok ne pronađete wiki-1.02. Možda ih postoji nekoliko sa istim imenom, samo kliknite na jednu i kliknite na OK.

../../_images/610.png
  1. U prozoru Sačuvaj novu kolornu rampu, unesite vrednost wiki-1.02 kao Naziv.

../../_images/710.png
  1. Kliknite na Sačuvaj da biste zatvorili prozor, a zatim kliknite na Zatvori da biste zatvorili Menadžer stilova. Sada je wiki-1.02 skala boja dostupna za korišćenje u vašim budućim projektima.

../../_images/810.png
  1. Sada možemo stilizovati konture. Izaberite sloj „Elev_Contour“ i kliknite na dugme :guilabel:„Otvori panel za stilizovanje sloja“. Izaberite :guilabel:„Jednostavna linija“ da biste pristupili njegovim svojstvima.

../../_images/910.png
  1. Promenite Tip sloja simbola sa Jednostavna linija na Generator geometrije. Ovaj sloj simbola nam omogućava da dinamički menjamo geometriju elemenata u sloju pomoću izraza.

../../_images/1014.png
  1. U polje za unos unesite ovaj izraz da biste translirali svaku konturnu liniju na y-osi za njenu vrednost elevacije. Koristimo funkcije minimum() i maximum() da bismo pronašli opseg vrednosti u koloni contourelevation i funkciju scale_linear() da bismo linearno skalirali elevaciju od minimuma do maksimuma do željenog opsega y-ofseta između 0 i 0,2 stepena. Ako se vaš konturni sloj nalazi u CRS-u koji ima jedinice koje nisu stepeni, obavezno podesite ove vrednosti na odgovarajući način. Unesite izraz i kliknite na OK.

translate($geometry,0,scale_linear("contourelevation",
minimum("contourelevation"),maximum("contourelevation"),0,0.2))
../../_images/1117.png
  1. Ispod Geometry Generator u prozoru simbola, izaberite sloj Simple Line da biste pristupili njegovim svojstvima. Kliknite na dugme Data define override za Color i izaberite meni Edit.

../../_images/1215.png
  1. Ovim se pojavljuje dijalog Kreator izraza za boju linije. Unesite ovaj izraz da biste obojili konturne linije vrednošću contourelevation iz wiki-1.02 skale boja. Potrebno je da mapiramo vrednosti elevacije na opseg koji očekuje skala boja (od 0 do 1). Umesto funkcije scale_linear koja je ranije korišćena, koristimo funkciju scale_polynomial da bismo skalirali vrednosti na nelinearan način. Kada unesete izraz, kliknite na OK.

ramp_color('wiki-1.02',scale_polynomial("contourelevation",
minimum("contourelevation"),maximum("contourelevation"),
0,1,0.5))
../../_images/1313.png
  1. Trebalo bi da vidite 3D prikaz kontura obojenih prema visini. Eksperimentišite sa izrazima bojenja i skaliranja da biste otkrili različite umetničke prikaze pejzaža.

../../_images/1412.png

If you want to give feedback or share your experience with this tutorial, please comment below. (requires GitHub account)