QGIS 3.4 LTR pakeitimai

image0

Laidos data: 2018-10-26

Pirma QGIS 3 ilgalaikė laida (LTR). QGIS 3.4 ką tik išleista. Po penkių konsolidavimo laidų (3.4.5) ji pakeis ankstesnę LTR paketų repozitorijose 2019 vasarį (žiūrėkite laidos tvarkaraštis). Tai didžiulis projekto šuolis pirmyn - mūsų pirma 3.x platforma paremta ilgalaikė laida. Naudotojams, pereinantiems iš 2.18 LTR yra didžiulis sąrašas šios laidos naujų savybių ir svarbių pakeitimų. Turėkite omenyje, kad 3.x priedai nesuderinami su 2.x priedais, taigi įdėmiai peržiūrėkite priedų naudojimą - jei galima - padėkite migruoti senus priedus į naują platformą. Jei tai jau padarėte, peržiūrėkite Versijos 3.0 ir Versijos 3.2 pakeitimus, kad suprastumėte 3.4 laidos pakeitimų mastą.

Ačiū

Mes norėtume padėkoti vystytojams, dokumentacijos rašytojams, testuotojams ir visiems kitiems, kurie savanoriškai skyrė laiką ir pastangas (arba skyrė lėšų, kad tai būtų padaryta). QGIS bendruomenė tikisi, kad jums patiks ši laida! Jei norite skirti laiko, pinigų ar kitaip prisidėti prie to, kad QGIS būtų dar puikesnis, prašome užsukti į qgis.org ir padėti!

QGIS palaiko rėmėjai ir palaikantys nariai. Dabartinių rėmėjų, daugiau ar mažiau prisidėjusių finansiškai prie projekto, sąrašą rasite rėmėjų sąraše. Jei norėtumėte tapti oficialiu palaikymo nariu, prašome apsilankyti mūsų rėmėjų puslapyje, kur rasite daugiau informacijos. QGIS palaikymas leidžia mums finansuoti kas šešis mėnesinius vykstančius vystytojų susitikimus, palaikyti projekto infrastruktūrą ir finansuoti klaidų taisymo pastangas. Pilną palaikymo narių sąrašą rasite žemiau - mūsų pačios didžiausios padėkos visiems mūsų rėmėjams!

QGIS yra atvira programinė įranga ir jums jokiu būdu neprivalu mokėti norint ją naudoti. Priešingai, mes norime skatinti kiek galima daugiau žmonių naudoti ją nepriklausomai nuo jūsų finansinio ar visuomeninio statuso - mes tikime, kad duodant žmonėms įrankius, teikiančius galimybę daryti erdvinius sprendimus, galima sukurti geresnę visos žmonijos visuomenę.

image1

Bendra

Savybė: Flatpak

QGIS dabar galima naudoti kaip flatpak aplikaciją flathub Flatpak (anksčiau xdg-app) yra programinės įrangos priemonė skirta programų diegimui, paketų valdymui ir aplikacijų virtualizacijai Linux darbastalių kompiuteriams. Ji leidžia diegti skirtingas QGIS versijas neperkompiliuojant ir nenaudojant Docker’io. Tai pilnas paketas su visomis bibliotekomis, naudojantis savo naudotojo profilio vietą. Taigi jums reikės šiek tiek vietos diske ir įprasti dirbti su flatcpack, bet šiaip jis valdo!

image28

Šią savybę finansavo Aleix Pol

Šią savybę sukūrė Aleix Pol

Savybė: SVG failai gali būti įtraukti į projektus ir simbolius

Leidžia simbologijai, etiketėms ir pan. skirtus SVG piešinius įtraukti į projekto failo vidų (arba QML stilių ar QPT spausdinimo šabloną) įrašant svg kaip standartinę base64 eilutę.

Papildomai, įtrauktus failus galima išpakuoti iš projekto ir simbolių ir įrašyti į diską kaip SVG failus.

Šią savybę finansavo SMEC/SJ

Šią savybę sukūrė Nyall Dawson

Savybė: akseleracija OpenCL pagrindu

Šią savybę finansavo QGIS.org

Šią savybę sukūrė Alessandro Pasotti

Išraiškos

Savybė: naujos išraiškų funkcijos ir kintamieji

QGIS 3.4 pridėta daug išraiškų funkcijų. Tarp jų yra daug patogių funkcijų darbui su masyvais ir žemėlapių (žodynų) objektais.

  • json_to_map: Konvertuoja JSON užkoduotą eilutės reikšmę į žemėlapio (žodyno) tipo objektą

  • map_to_json: Konvertuoja žemėlapio (žodyno) tipo objektą į JSON koduotą eilutės reikšmę

  • hstore_to_map: Konvertuoja hstore reikšmę į žemėlapio (žodyno) tipo objektą

  • map_to_hstore: Konvertuoja žemėlapio (žodyno) tipo objektą į hstore reikšmę

  • array_foreach : Ciklu pereina masyvą ir vykdo išraišką kiekvienam masyvo elementui, grąžina naują masyvą, kuriame yra kiekviena paskaičiuota reikšmė

  • array_filter : Filtruoja masyvą pagal išraišką

  • raster_value: Grąžina reikšmę, atrinktą iš nurodyto taško rastro sluoksnyje

  • to_dms: Verčia skaitinę reikšmę į formatuotą eilutę su Laipsniais, Minutėmis, Sekundėmis

  • to_dm: Konvertuoja skaitinę reikšmę į eilutę su formatuotais Laipsniais, Minutėmis

  • line_substring: Grąžina linijos (ar kreivės) geometrijos dalį,kuri patenka tarp nurodytų pradžios ir pabaigos atstumų (skaičiuojant nuo linijos pradžios), Z ir M reikšmės tiesiškai interpoliuojamos iš esamų reikšmių.

  • generate_series(start,stop,step): Sukuria masyvą su skaičių seka.

Papildomai, kai kurie kintamieji taip pat prieinami iš QGIS išraiškų:

  • @canvas_cursor_point: Turi taško reikšmę, atitinkančią dabartinę pelės žymeklio poziciją pagrindinio žemėlapio drobėje

  • @map_layers: Visų sluoksnių, matomų dabartiniame žemėlapyje, masyvas

  • @map_layer_ids: Masyvas su visų žemėlapyje matomų sluoksnių ID

image2

Šią savybę sukūrė Etienne Trimaille, Matteo Ghetta, Matthias Kuhn, Mathieu Pellerin, Nyall Dawson

Savybė: kodo užbaigimas rašant išraiškas

Kodo autoužbaigimas išraiškų redaktoriuje.

  • Rašant išraiškas siūlomi ir automatiškai įterpiami kintamieji, funkcijų pavadinimai ir laukų pavadinimai

  • Funkcijų parametrai rodomi juos pildant

image3

Šią savybę finansavo OPENGIS.ch

Šią savybę sukūrė Matthias Kuhn (OPENGIS.ch)

Žemėlapio įrankiai

Savybė: identifikuoti arba pažymėti geoobjektus pagal esamą poligoną

Dažnai būna naudinga pažymėti/identifikuoti geoobjektus, kuriuos dengia esamas poligonas. Tam naudotojai gali naudoti įrankius „Pažymėti geoobjektus pagal poligoną“ ir „Identifikuoti geoobjektus pagal poligoną“, bet reikėjo rankiniu būdu apibrėžti norimą poligoną. Ši nauja savybė leidžia spausti dešinį mygtuką ant žemėlapio ir parinkti esamą poligono geoobjektą toje vietoje iš iškrentančio meniu - šis poligonas bus naudojamas kaip įvestis pažymėjimui arba identifikavimui.

image4

Šią savybę finansavo Leicestershire County Council

Šią savybę sukūrė Peter Petrik (Lutra Consulting)

Naudotojo sąsaja

Savybė: Eksportuotų failų automatinis parinkimas failų tvarkyklėje

Kai tik pranešimo juostoje yra nuoroda į sukurtą failą (pvz. po išdėstymo ar žemėlapio sluoksnio eksporto), nuoroda dabar tiesiogiai atidarys aplanką, kuriame yra failas IR pažymės sukurtą failą. Tai ypatingai patogus kelias pagreitinti failų veiksmus po eksporto iš QGIS!

image5

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: Nauja „Atverti aplanką“ galimybė išjungtiems paskutiniams projektams

Nauja parinktis dešinio paspaudimo kontekstiniame meniu paskutinių projektų sąraše leidžia naudotojams failų tvarkyklėje atverti artimiausia esamą kelią iki pradinės projekto vietos, taip tikimasi, kad bus galima rasti trūkstamus/perkeltus/ pervadintus projektus.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: Naudotojo sąsajos patobulinimai laikiniems juodraštiniams sluoksniams

Laikini juodraštiniai QGIS sluoksniai gali būti labai naudingi, kai reikia „išmetamo“ sluoksnio, pavyzdžiui turint apdorotus duomenis tarp kelių žingsnių. Bet nežinantis naudotojas gali nesuprasti, kad sluoksnio turinys bus galutiniai prarastas uždarius dabartinį QGIS projektą. Taigi buvo pridėtas naujas indikatorius greta laikinų juodraštinių sluoksnių, todėl dabar iš karto aišku, kai sluoksnis yra tik laikinas.

Taipogi daug paprasčiau pakeisti šiuos laikinus sluoksnius į pastovius, diske saugomus formatus. Galite tiesiog spausti ant indikatoriaus piktogramos, arba parinkti „Padaryti pastoviu“ sluoksnių kontekstiniame meniu. QGIS tada paklaus kokioje vietoje įrašyti laikiną sluoksnį, tada pakeičia jį (paliekamas sluoksnio ID, stilius, formos nustatymai ir pan.).

image6

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: užduočių tvarkyklės patobulinimai

QGIS užduočių tvarkyklės valdiklis (rodomas būsenos juostoje, kai vykdoma foninė užduotis) dabar rodo prognozuojamą likusį laiką iki ilgai trunkančių darbų pabaigos. Prognozuojamas pabaigos laikas skaičiuojamas naudojant paprastą tiesinę interpoliaciją pagal užduoties praleistą laiką ir dabartinį progresą. Tai leidžia naudotojams žinoti, ar jie spės pasidaryti kavos virtuvėje, ar nueiti pas kavos pas tikrą baristą už kvartalo…

Papildomai QGIS naudoja standartinį operacinės sistemos progreso rodymo mechanizmą didesniame skaičiuje platformų. Kai kurios ilgai veikiančios užduotys (kurios neveikia fone), tokios kaip atlaso eksportas dabar rodo progresą per operacinės sistemos mechanizmą ir rodo patogius pabaigimo pranešimus.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: stiliaus tvarkyklės patobulinimai

QGIS stiliaus tvarkyklės dialogas (leidžiantis naudotojams kurti ir tvarkyti jų asmenines simbolių ir spalvos rampų bibliotekas) dabar atsidaro nemodaliai, taigi gali būti naudojamas greta pagrindinio QGIS lango (taip kaip išdėstymo tvarkyklės dialogas ir spausdinimo išdėstymo dizainerio langai).

Mes taipogi patobulinome simbolių peržiūrą sluoksnio stiliaus skiltyje, pridėjome perjungimą tarp didelių piktogramų ir detalaus simbolių sąrašo rodymo. Užvedus pelę virš simbolių (ir spalvų!) dabar bus rodoma didelė simbolio peržiūra. Ir pagaliau mes padarėme simbolių sąrašus labiau priimtinus dideliam dpi.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: pagražinta naršyklės skydelio sąsaja ir patirtis

Šioje laidoje buvo padaryta daug darbų, kad būtų pagerinta naršyklės skydelio sąsaja ir patirtis, įskaitant HiDPI pataisymus, suspaustų vektorinių/rastro duomenų rinkinių pagerinimai ir atnaujintas piktogramų rinkinys.

Buvo pridėtas ir naujas funkcionalumas, toks kaip galimybė sukurti naują aplanką tiesiai per naršyklės kontekstinį meniu. Naršyklė dabar taipogi rodo pilnesnę aibę SQL Serverio jungčių parinkčių, atitinkančią parinktis, kurios jau buvo kitose duomenų jungtyse.

image8

Šią savybę sukūrė Mathieu Pellerin (iMHere Asia), Nyall Dawson (North Road)

Savybė: QML diagramų ir piešinių valdiklis

QGIS 3.4 pridėtas naujas vektorinių sluoksnių formos valdiklio tipas, skirtas grafiškai malonių ir interaktyvių elementų, tokių kaip diagramų ar techninių brėžinių, rodymui atributų formoje. Valdiklis leidžia lanksčią konfigūraciją, įskaitant pavyzdinių šablonų ir išraiškų palaikymą.

image9

Šią savybę finansavo QGIS Projektas

Šią savybę sukūrė David Signer ir Matthias Kuhn (OPENGIS.ch)

Simbologija

Savybė: tinklelio sluoksnio stilius

  • Duomenų rinkinių pridėjimas į tinklelio sluoksnį iš savybių skydelio

  • Informacijos ir šaltinio skydeliai savybių skydelyje

  • Aktyvaus duomenų rinkinio parinkimas (savybių arba stiliaus skydelyje)

  • Kontūrų/skaliarų stilius (savybių ar stiliaus skydelyje)

  • Tinklelio rėmo stilius (savybių ar stiliaus skydelyje)

  • Vektorinių rodyklių stilius (savybių ar stiliaus skydelyje)

Šią savybę finansavo Lutra Consulting

Šią savybę sukūrė Peter Petrik (Lutra Consulting)

Savybė: graduoto braižymo simetrinė klasifikacija

Šią savybę finansavo https://github.com/pierreloicq

Šią savybę sukūrė https://github.com/pierreloicq

Savybė: dalinis QML eksportas ir importas

Eksportuojant ar importuojant stilius į ir iš .qml failų, dabar galima parinkti sekcijų poaibį. Tai leidžia įrašyti ir atstatyti sluoksnio konfigūracijos dalis paliekant kitas. Pavyzdžiui galima eksportuoti tik sluoksnio simbologija, o importuojant šį QML silių į sluoksnį, formų ir valdiklių ir kitos savybės lieka nepakeistos. Taip pat galima valdyti tik atskiras stiliaus dalis naudojant kopijavimą/įkėlimą.

image10

Šią savybę finansavo qwat group

Šią savybę sukūrė Denis Rouzaud (OPENGIS.ch GmbH)

Skaitmeninimas

Savybė: GPS sekimo patobulinimai

QGIS 3.4 išplečia įsiūtą GPS sekimo palaikymą, pridedant „surinkimo intervalo“ ir „atstumo slenksčio“ parametrus. Šias parinktis galima naudoti, kad žymeklis liktų vietoje, kai imtuvas yra statinėje padėtyje.

Šią savybę finansavo Andrea Rossi

Šią savybę sukūrė Andrea Rossi

Savybė: daugiau kampų parinkimų sudėtingesniame skaitmeninimo skydelyje

Pridėtos parinktis pritraukti prie 5/10/15/18/22.5 laipsnių kūrimo režime.

image11

Šią savybę finansavo lbartoletti

Šią savybę sukūrė lbartoletti

Savybė: viršūnių įrankis gali dirbti tik su dabartiniu sluoksniu

Naujas viršūnių įrankis yra daug produktyvesnis. Jis gali perkelti visų redaguojamų sluoksnių viršūnes vienu metu, tai labai patogu norint išsaugoti sluoksnių topologiją. Bet dažnai mes tiesiog nenorime keisti visus sluoksnius vienu metu. Mes pridėjome viršūnių įrankiui galimybę būtent tai ir padaryti.

image12

Šią savybę finansavo Oslandia

Šią savybę sukūrė Paul Blottiere (Oslandia)

Savybė: pridėtas linijos apsukimo įrankis

Senai laukta savybė! Daugiau nebereikia išorinio priedo ar algoritmo, kad būtų galima apsukti linijos kryptį!

image13

Šią savybę finansavo OSLANDIA

Šią savybę sukūrė Loïc Bartoletti

Savybė: geometrijos tikslumas

Vektoriniai sluoksniai turi tikslumo konfigūravimo parinktį. Tikslumas nurodo, kokiu tikslumu reikia įrašyti taškų vietas. Kiekvienas taškas, naujos ar pakeistos geometrijos, pritraukiamas iki nurodyto tikslumo gardelės. Skaitmeninant tinklelis rodomas naudotojui kaip gidas.

image14

Šią savybę finansavo Kanton Solothurn

Šią savybę sukūrė Matthias Kuhn (OPENGIS.ch)

Savybė: automatiškai išimti taškų dublius

Pridedant ar redaguojant vektorinio sluoksnio geometrijas, QGIS gali automatiškai išimti iš geometrijų taškų dublius. Ši parinktis konfigūruojama vektorinių sluoksnių skaitmeninimo kortelėje.

Šią savybę finansavo Kanton Solothurn

Šią savybę sukūrė Matthias Kuhn (OPENGIS.ch)

Savybė: tikrinti geometrijos teisingumą

Kiekviena nauja ar pakeista geometrija gali būti patikrinta, jei ši parinktis įjungta. Tai leidžia skaidriai paaiškinti naudotojui, kai dabartinėje redagavimo sesijoje sukuriamos netinkamos geometrijos.

image15

Šią savybę finansavo Kanton Solothurn

Šią savybę sukūrė Matthias Kuhn (OPENGIS.ch)

Savybė: topologijos tikrinimo redagavimo metu

Sluoksnyje galima įjungti topologijos tikrinimą. Naujai pridėtoms ir redaguojamoms geometrijoms bus vykdomas topologijos tikrinimas. Tikrinimas vykdomas, kai sluoksnis įrašomas arba paspaudus topologijos tikrinimo mygtuką geometrijos tikrinimo skydelyje.

Galimi tikrinimai:

  • Tarpai

  • Persidengimai

  • Trūkstamos viršūnes kaimyniniuose poligonuose

Tai sukurta naudojantis geometrijos tikrinimo priedu, kurį įgyvendino Sourcepole.

image16

Šią savybę finansavo Kanton Solothurn

Šią savybę sukūrė Matthias Kuhn (OPENGIS.ch)

Duomenų valdymas

Savybė: QGIS projektų vertimas

Kaip QGIS ir priedai, projektai verčiami pagal Qt vertimo procesą. Tai reiškia, kad vertimas veikia pagal Qt Kompiliuotą Vertimo Išeities Failą (.qm file). Kai naudotojas atidaro projektą, QGIS ieško .qm failo tame pačiame aplanke, kaip ir .qgs failas, su tokiu pačiu pavadinimu, kaip .qgs failas ir turinčiu kalbos kodą kaip priesagą (kalba konfigūruojama QGIS nustatyuose). Kad sukurtumėte vertimą, projekto nustatymuose yra parinktis kurti .ts failą, kurį galima redaguoti vertimo programomis, tokiomis kaip Qt Linguist ar Transifex.

Daugiau informacijos rasite šiame tinklaraštyje

Šią savybę finansavo QGIS Šveicarijos grupė ir QGEP Projektas

Šią savybę sukūrė David Signer (OPENGIS.ch)

Savybė: prireikus perjungti atributų lentelės prijungimo režimą

Atributų lentelės įrankinėje pridėtas mygtukas, leidžiantis persijungti tarp prijungto ir lango režimo. Anksčiau naudotojai turėto galimybę per nustatymų dialogą atidaryti naują lentelę, kad persijungtų tarp prijungto/atjungto režimo, bet tai nepatogu, jei režimą pakeisti nusprendžiate jau po to, kai atidarėte lentelę.

image17

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: naujas atradėjo filtras paieškai visuose sluoksniuose

Pridėtas naujas atradėjo filtras, leidžiantis naudotojams ieškoti visuose projekto sluoksniuose, pagal sluoksnio rodymo išraišką.

Filtrą galima aktyvuoti naudojant priešdėlį „af“ arba padarius jį numatyta paieška per QGIS parinktys -> Atradėjas -> Geoobjektai visuose sluoksniuose. Rodymo išraiškos nustatomos vektorinių sluoksnių savybių rodymo kortelėje. Konkretus sluoksnis gali būti pažymėtas kaip nerandamas Projekto Savybių dialoge, Duomenų šaltinių kortelėje.

image18

Šią savybę finansavo Opengis.ch

Šią savybę sukūrė Denis Rouzaud

Savybė: neišimami (privalomi) sluoksniai pažymimi sluoksnių medyje

Naujas indikatorius „užrakinta“ rodomas visiems sluoksniams, kurie pažymėti kaip „privalomi“ dabartiniame projekte. Ši piktograma naudotojams iš karto parodo, kad konkretaus sluoksnio negalima išimti.

Privalomi sluoksniai konfigūruojami per Projekto savybių dialogo Duomenų šaltinių kortelę.

image19

Šią savybę finansavo Arpa Piemonte (Dipartimento Tematico Geologia e Dissesto) ERIKUS projekto rėmuose

Šią savybę sukūrė Martin Dobias (Lutra Consulting) ir Faunalia

Savybė: pridėti rastro sluoksnį į esamą Geopackage

Įrašant rastro sluoksnį į GeoPackage duombazę, dabar galima pridėti sluoksnį į esamą failą.

image20

Šią savybę finansavo Borys Jurgiel

Šią savybę sukūrė Borys Jurgiel

Formos ir valdikliai

Savybė: detalizacijos (kaskadinės) formos QGIS reikšmių ryšių skydeliuose

Naujos funkcijos ir logika QGIS „Reikšmių ryšių valdikliuose“ leidžia įgyvendinti sudėtingus, dinaminius filtrus QGIS atributų formose. Funkcionalumą galima naudoti įgyvendinant „detalizacijos“ formas, kur viename lauke rodomos reikšmės priklauso nuo reikšmių kitame lauke:

image21

Šią savybę finansavo QGIS bendruomenė sutelktinio finansavimo būdu

Šią savybę sukūrė Alessandro Pasotti (su North Road)

Žemėlapio maketas

Savybė: 3D žemėlapio elementai

Ši savybė leidžia naudotojams pridėti savo 3D žemėlapio rodinį į spausdinimo išdėstymą.

image22

Šią savybę finansavo QGIS bendruomenė sutelktinio finansavimo būdu

Šią savybę sukūrė Lutra Consulting

Apdorojimas

Savybė: naujas „redagavimo iš karto“ režimas

Didelio rėmėjų skaičiaus dėka <https://north-road.com/edit-features-in-place-using-qgis-spatial-operations-campaign/>`__, į 3.4 versijos Apdorojimą buvo pridėtas sutelktiniu būdu finansuotas „redaguoti iš karto“ režimas. Kai vektorinis sluoksnis aktyvus ir redaguojamas, šis režimas leidžia naudotojus vykdyti norimus algoritmus sluoksnio geoobjektams, keičiant jų atributus ir geometrijas tiesiai pradiniame sluoksnyje. Visi pakeitimai pridedami į sluoksnio „pakeitimo buferį“, taigi galite lengvai atšaukti ar vėl pritaikyti pakeitimus prieš įrašydami juos į duomenų šaltinį.

Tiems naudotojams, kurie dažnai vykdo duomenų redagavimą, šis funkcionalumas pateiktas per QGIS 3.0 „Atradėjo juostą“ (esantį apatiniame kairiame kampe). Parašę „ef“ (nuo angliško „edit features“) ir tada atitinkamą veiksmą, galėsite vykdyti redagavimą tiesiai su klaviatūra. Pvz.

  • Parinkite grupę linijos objektų

  • Spauskite Ctrl + K (aktyvuoja atradėjo juostą)

  • Rašykite „ef reverse“

  • Spauskite enter - pažymėti linijos geoobjektai bus nedelsiant apsukti!

image23

Šią savybę finansavo Sutelktinis finansavimas

Šią savybę sukūrė North Road

Savybė: laikyti modelius projekto viduje

Kai kurie apdorojimo modeliai glaudžiai susiję su konkretaus projekto logika ir jie neturi reikšmės (arba visiškai neveikia), jei yra už projekto ribų (pvz. modeliai, kurie priklauso nuo konkrečių žemėlapio sluoksnių buvimo, ryšių ir pan.). Taigi nuo QGIS 3.4 Apdorojimo modelius galima įrašyti į QGIS projektų failus. Bet kokie modeliai, įrašyti projekte prieinami iš karto atidarius projektą. Tai taip pat sutvarko „globalų“ modelių tiekėją nuo modelių, kurie yra beprasmiški, todėl lengviau dalintis vienu projektu su įtrauktais visais reikiamais modeliais.

Modeliai saugomi projektų viduje paspaudus naują mygtuką „Įtraukti į projektą“ Modeliuotojo dialogo įrankinėje. Modelius galima išimti iš projekto per įrankinės dešinio pelės mygtuko meniu.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: rastro reikšmių atranka

Pridėtas naujas algoritmas rastro sluoksnio reikšmių atrankai iš taškinių vietų.

image24

Šią savybę finansavo Faunalia

Šią savybę sukūrė Matteo Ghetta (Faunalia)

Savybė: naujas algoritmas „Rastro taškai į poligonus“

Šis algoritmas konvertuoja rastro sluoksnį į vektorinį, kur kiekvieną rastro sluoksnio pikselį atitinka poligono geoobjektas su vienu lauku, kuriame yra rastro juostos reikšmė.

Šią savybę finansavo SMEC/SJ

Šią savybę sukūrė Nyall Dawson

Savybė: K Means spiečiaus algoritmas

QGIS 3.4 pridėtas savas „k-means spiečiaus“ algoritmas. Paremtas PostGIS ST_ClusterKMeans funkcija, šis algoritmas į įvesties geoobjektų aibę prideda spiečiaus ID lauką, rodanti geoobjekto spiečių pagal k-means spiečiaus skaičiavimą. Jei įvesčiai naudojamos netaškinės geometrijos, spiečiaus skaičiavimas remiasi įvesties geometrijų centroidais.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: dbscan erdvinis spiečiaus algoritmas

Šis naujas savas algoritmas įgyvendina optimizuotą DBSCAN tankumu paremtą spiečiaus skenavimą kuriant 2d taškinių geoobjektų spiečius.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: patobulinti algoritmai

Įvairūs esamų Apdorojimo algoritmų patobulinimai, įskaitant:

  • Algoritmas „Apsukti linijos kryptį“ dabar veikia su MultiLineString geometrijos įvestimis

  • „Pratęsti linijas“: palaiko dinaminį (nuo duomenų priklausantį) pradžios ir pabaigos atstumą

  • „Linijų poslinkis“: palaiko dinaminį poslinkio atstumą

  • Algoritmai Sujungti pagal lauko reikšmę ir Sujungti pagal vietą dabar gali pasirinktinai eksportuoti neatitikusius įrašus

  • Sujungti pagal lauko reikšmes dabar praneša apie sutapusių/nesutapusių geobjektų skaičių

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: viršūnių filtravimo pagal M ir viršūnių filtravimo pagal Z algoritmai

Pridėti du nauji algoritmai, linijų/poligonų viršūnių filtravimui pagal jų M arba Z reikšmes. Gali būti įvestos minimalios ir maksimalios M/Z reikšmės ir, jei viršūnė nepatenka į nurodytą intervalą, ji bus išmesta iš išvesties geometrijos. Tiek minimalios, tiek maksimalios reikšmės filtrai gali priklausyti nuo duomenų, taigi gali būti skirtingi skirtingiems geoobjektams.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: algoritmas „Pakeistų geoobjektų masyvas“

Šis naujas algoritmas sukuria sluoksnio geoobjektų kopijas, kuriant kelias pakeistas (pastumtas) geoobjektų versijas. Kiekviena kopija pastumta iš anksto nurodytu atstumu x/y/z/m ašyse.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: „Pastumtų (paralelių) linijų masyvo“ algoritmas

Šis naujas algoritmas sukuria sluoksnio linijų geoobjektų kopijas, kuriant kiekvieno geoobjekto paralelias versijas. Kiekviena kopija pastumta nurodytu atstumu.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: vienetų pasirinkimas ne laipsnių/nežinomiems atstumams

Kai algoritmas turi atstumo parametrą metrais/pėdomis/kt (pvz. ne-geografinius atstumus), pridedamas iškrentantis sąrašas su vienetų tipo pasirinkimu.

(QGIS neleidžia (ir niekada neturėtų) šito atstumui laipsniais - tai naudotojo reikalas parinkti tinkamą vietinę projekciją ir perprojektuoti duomenis)

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson

Savybė: algoritmas „Drapiruoti geoobjektus prie z/m“

Šie du nauji algoritmai gali nustatyti geometrijos viršūnių z arba m reikšmes pagal rastro juostą. Pasirinktinai galima keisti reikšmių mastelį pagal (nuo duomenų priklausančią) mastelio keitimo reikšmę.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: „Rastro pikselių į taškus“ algoritmas

QGIS 3.4 pridėtas naujas „pikseliai į taškus“ algoritmas, kuriantis taško geometriją kiekvieno pikselio viduryje, pikseliai be duomenų praleidžiami.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: linijos dalies algoritmas

Naujas, labai prašytas algoritmas, grąžina linijos (ar kreivės) dalį, patenkančią tarp nurodytų pradžios ir pabaigos atstumų (skaičiuojamų nuo linijos pradžios). Z ir M reikšmės tiesiškai interpoliuojamos iš esamų reikšmių.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: „Taško interpoliavimo ant linijos“ algoritmas

Šis naujas algoritmas sukuria taško geometriją, interpoliuotą kaip atstumą palei linijos (ar poligono ribos) geometriją. Pilnai palaikomos kreivinės įvesties geometrijos. Z ar M reikšmės tiesiškai interpoliuojamas pagal esamas reikšmes.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: k-kaimyno apgaubiantis korpusas

Šią savybę finansavo https://qgis.org

Šią savybę sukūrė Detlev Neumann, Rudi von Staden

Savybė: pythono skriptai, kurie įgyvendina algoritmus, dabar vykdo algoritmus nutempus ir paleidus bei naršyklėje du kartus paspaudus pele.

Kai įmanoma, scenarijus dabar paleis apdorojimo algoritmo dialogą kai:

  • Nutempus ir numetus Pythono scenarijų į pagrindinį langą

  • Naršyklės skydelyje paspaudus dešinį mygtuką ant scenarijaus paleidimo veiksmo

image25

Šią savybę finansavo iMhere Asia

Šią savybę sukūrė Mathieu Pellerin

Savybė: naujas GDAL juostų perrikiavimo algoritmas

Į apdorojimo įrankinę buvo pridėtas naujas GDAL tiekėjo „Juostų perrikiavimo“ algoritmas. Algoritmas grąžina rastrus, kuriuose tęsiamas pateikto įvesties rastro juostų poaibis, juostas galima perrikiuoti.

image26

Šią savybę finansavo iMHere Asia

Šią savybę sukūrė Mathieu Pellerin

Savybė: „Išankstinės“ modelių algoritmų parametrų reikšmės

Parametrams, naudojantiems „iš anksto paskaičiuotas išraiškas“, pridėta nauja parinktis. Ši išraiška įvertinama vieną kartą prieš vykdant vaikinį algoritmą ir naudojama to algoritmo vykdymo metu.

Šią savybę finansavo QGIS

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: „Sluoksnio kategorizavimo naudojant XML stiliaus failą“ algoritmas

Šis naujas algoritmas nustato vektorinio sluoksnio braižymą į kategorizuotą, naudojantį atitinkamus simbolius iš stilių duomenų bazės.

Nurodyta išraiška (ar lauko pavadinimas) naudojama kuriant braižymo kategorijas, QGIS sukuria kategoriją kiekvienai unikaliai sluoksnio reikšmei. Kiekviena kategorija individualiai tapatinama su nurodytame QGIS XML stiliaus duombazėje esančiais simboliais. Kai randamas atitinkantis simbolio pavadinimas, šis atitinkantis simbolis bus nustatytas kategorijos simboliu.

Pagal nutylėjimą lyginimas kreipia dėmesį ir į raidžių dydį, bet tai gali būti išjungta, jei nereikia. Pasirinktinai ne raidžių simboliai ir kategorijos reikšmėje, ir simbolio pavadinime gali būti ignoruojami lyginimo metu. Taip gaunama didesnė tolerancija lyginimo metu.

Jei reikia, gali būti išvestos lentelės su kategorijomis, kurioms nebuvo rasti atitinkantys simboliai ir simboliai, kuriems nebuvo rasta atitinkančių kategorijų.

image27

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: naujas geometrijų pritraukimo algoritmas

Naujas režimas „Pritraukti prie inkarinių taškų (tik vieno sluoksnio)“ leidžia užtikrinti, kad bet kurios dvi vektorinio sluoksnio viršūnės yra bent jau nurodytu ribiniu atstumu viena nuo kitos.

Šis algoritmas naudingas darant vektorių perdengimo veiksmus, tokius kaip susikirtimą, sąjungą ar skirtumą, norint išvengti galimų topologijos klaidų, sukeltų skaitmeninių klaidų, kai taškai yra labai arti vienas kito. Po šio algoritmo vykdymo kai kurios anksčiau tinkamos geoemtrijos gali tapti netinkamomis, todėl gali būti naudinga po to paleisti geometrijų taisymo algoritmą.

Šią savybę finansavo InaSAFE DFAT

Šią savybę sukūrė Martin Dobias (Lutra Consulting)

Duomenų tiekėjai

Savybė: OAuth2 autentikacijos metodo priedas

  • Palaiko autentikacijos kodą, konkrečias ir resursų savininkų teisių suteikimo eigas

  • Leidžia iš anksto sukonfigūruotas jungtis, skaitomas iš numatytų vietų

  • Leidžia prieigos žetonų laikymą podėlyje tarp QGIS paleidimų

  • Įrašyti/įkelti konfigūracijas

Šią savybę finansavo Monsanto Company

Šią savybę sukūrė Larry Shaffer, Alessandro Pasotti

Savybė: tinklelių sluoksnis: naujo tinklelių sluoksnio formato palaikymas

Tinklelio sluoksnis vaizduoja duomenis kintamo dydžio tinklelyje su papildomais komponentais (pvz. laiku ir vektoriumi). Pridėjus MDAL, naudotojai dabar gali įkelti šiuos formatus tiesiai į QGIS ir tyrinėti visus kitus komponentus:

  • GRIB

  • XMDF

  • Netcdf

image29

Šią savybę finansavo Lutra Consulting

Šią savybę sukūrė Lutra Consulting

Savybė: tinklelio sluoksnis: pridėtas reikšmės identifikavimo funkcionalumas

Su šiuo API, programuotojai gali tikrinti tinklo elementus ir ištraukti reikšmes erdvėje ir laike. Pavyzdžiui dabar iš tinklelio sluoksnio galite sukurti laiko diagramą.

image30

Šią savybę finansavo Lutra Consulting

Šią savybę sukūrė Lutra Consulting

Savybė: tinklelio sluoksnis: galimybė pasirinkti kitą vektorių ir skaliarų duomenų rinkinį

Tinklo sluoksnyje dažnai yra keli matmenis. Pavyzdžiui netcdf/grib gali turėti kelis meteorologinius matmenis. Kiekvienas matmuo gali turėti kelis komponentus. Pavyzdžiui vėjo duomenyse gali būti greitis (skaliaras) ir reikšmės (tinklas). Su šia parinktimi jūs galite perdengti skalarus ir tinklus iš skirtingų matmenų. Paveiksle žemiau matote temperatūrą (tinklelis) ir vėją (skaliaras).

image31

Šią savybę finansavo Lutra Consulting

Šią savybę sukūrė Lutra Consulting

Savybė: tinklo sluoksnis: galimybė braižyti vektorius/rodykles ant naudotojo nustatyto tinklelio

Skaliariniai duomenys paprastai generuojami kiekvieno tinklo elemento viduryje/kampe. Rodant skaliarinius duomenis rodyklės gali atrodyti išmėtytos ir dažnai nepastebima bendra tendencija. Su šia parinktimi rodykles galima rodyti ant naudotojo nurodyto tinklelio. Papildomos skaliarinės reikšmės bus dinamiškai interpoliuotos ir padėtos ant naudotojo sukurto tinklelio.

image32

Šią savybę finansavo Lutra Consulting

Šią savybę sukūrė Lutra Consulting

Savybė: JSON/JSONB tipų palaikymas

Palaikomas PostgreSQL JSON tipo skaitymas. JSON duomenys gali būti rodomi valdikliuose kaip „Raktas/Reikšmė“ (žemėlapis) arba „Sąrašas“ (masyvas) arba kaip tekstas.

image33

Šią savybę finansavo Kanton Solothurn

Šią savybę sukūrė David Signer (OPENGIS.ch)

Savybė: ESRI žetonų autentikavimo palaikymas

Į QGIS pridėta ESRI laikinais žetonais paremta autentikacijos sistema. Tai leidžia jungtis prie ArcGIS Feature ir Map serverių per priskirtą laikiną žetoną.

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: SQL Serveris - netinkamų geometrijų apdorojimas

Ankstesnėse QGIS versijose buvo persijungta į saugesnį būdą skaityti SQL Serverio sluoksnius, kur automatiškai tikrinamas geometrijos tinkamumas ir prireikus geometrijos pataisomos. Šiam apėjimui prireikė vengti problemų su SQL Serverio geometrijos valdymo dizainu, kur radus nors vieną eilutę su netinkama geometrija buvo tyliai nutraukiama užklausa negrąžinant visų sluoksnio geoobjektų. Deja, apėjimas stipriai mažina greitaveiką.

QGIS 3.4 pridėtas naujas nustatymas, leidžiantis naudotojams automatiškai išjungti QGIS SQL Serverio netinkamų geometrijų tvarkymą. Įjungus „Praleisti netinkamų geometrijų apdorojimą“ SQL Serverio jungties nustatymuose, QGIS nebevykdys brangaus geometrijos tikrinimo, o visą atsakomybę užtikrinant, kad geometrijos yra tinkamos, atiduos naudotojui/duombazės administratoriui. Tai yra „naudokite atsakingai“ nustatymas. Netinkamai įjungus šią parinktį galite pritrūkti geoobjektų ar prarasti duomenis.

Šią savybę sukūrė Nyall Dawson (North Road)

QGIS Serveris

Savybė: priedai gali valdyti serverio podėlį

Pagal nutylėjimą QGIS į atminties podėlį įrašo tik WMS GetCapabilities dokumentą. Pridėjus WMTS, reikia, kad būtų galima į podėlį dėti jo kaladėles. Bet podėlio tvarkytojas nebuvo sukurtas saugoti kaladėles.

Podėlio tvarkymo priedas gali būti naudojamas, norint į podėlį dėti:

  • WMS, WFS, WCS, WMTS GetCapabilities dokumentus

  • WFS DescribeFeatureType dokumentus

  • WCS DescribeCoverage dokumentus

  • WMTS GetTile nuotraukas

  • WMS GetLegendGraphic nuotraukas

Tai yra pythono podėlio tvarkymo klasė, kuri netikrina, ar QGIS projektas pasikeitė:

class PyServerCache(QgsServerCacheFilter):

    """ Used to have cache control """

    def __init__(self, server_iface):
        super(QgsServerCacheFilter, self).__init__(server_iface)

        self._cache_dir = os.path.join(tempfile.gettempdir(), "qgs_server_cache")
        if not os.path.exists(self._cache_dir):
            os.mkdir(self._cache_dir)

        self._tile_cache_dir = os.path.join(self._cache_dir, 'tiles')
        if not os.path.exists(self._tile_cache_dir):
            os.mkdir(self._tile_cache_dir)

    def getCachedDocument(self, project, request, key):
        m = hashlib.md5()
        paramMap = request.parameters()
        urlParam = "&".join(["%s=%s" % (k, paramMap[k]) for k in paramMap.keys()])
        m.update(urlParam.encode('utf8'))

        if not os.path.exists(os.path.join(self._cache_dir, m.hexdigest() + ".xml")):
            return QByteArray()

        doc = QDomDocument(m.hexdigest() + ".xml")
        with open(os.path.join(self._cache_dir, m.hexdigest() + ".xml"), "r") as f:
            statusOK, errorStr, errorLine, errorColumn = doc.setContent(f.read(), True)
            if not statusOK:
                print("Could not read or find the contents document. Error at line %d, column %d:\n%s" % (errorLine, errorColumn, errorStr))
                return QByteArray()

        return doc.toByteArray()

    def setCachedDocument(self, doc, project, request, key):
        if not doc:
            print("Could not cache None document")
            return False
        m = hashlib.md5()
        paramMap = request.parameters()
        urlParam = "&".join(["%s=%s" % (k, paramMap[k]) for k in paramMap.keys()])
        m.update(urlParam.encode('utf8'))
        with open(os.path.join(self._cache_dir, m.hexdigest() + ".xml"), "w") as f:
            f.write(doc.toString())
        return os.path.exists(os.path.join(self._cache_dir, m.hexdigest() + ".xml"))

    def deleteCachedDocument(self, project, request, key):
        m = hashlib.md5()
        paramMap = request.parameters()
        urlParam = "&".join(["%s=%s" % (k, paramMap[k]) for k in paramMap.keys()])
        m.update(urlParam.encode('utf8'))
        if os.path.exists(os.path.join(self._cache_dir, m.hexdigest() + ".xml")):
            os.remove(os.path.join(self._cache_dir, m.hexdigest() + ".xml"))
        return not os.path.exists(os.path.join(self._cache_dir, m.hexdigest() + ".xml"))

    def deleteCachedDocuments(self, project):
        filelist = [f for f in os.listdir(self._cache_dir) if f.endswith(".xml")]
        for f in filelist:
            os.remove(os.path.join(self._cache_dir, f))
        filelist = [f for f in os.listdir(self._cache_dir) if f.endswith(".xml")]
        return len(filelist) == 0

    def getCachedImage(self, project, request, key):
        m = hashlib.md5()
        paramMap = request.parameters()
        urlParam = "&".join(["%s=%s" % (k, paramMap[k]) for k in paramMap.keys()])
        m.update(urlParam.encode('utf8'))

        if not os.path.exists(os.path.join(self._tile_cache_dir, m.hexdigest() + ".png")):
            return QByteArray()

        img = QImage(m.hexdigest() + ".png")
        with open(os.path.join(self._tile_cache_dir, m.hexdigest() + ".png"), "rb") as f:
            statusOK = img.loadFromData(f.read())
            if not statusOK:
                print("Could not read or find the contents document. Error at line %d, column %d:\n%s" % (errorLine, errorColumn, errorStr))
                return QByteArray()

        ba = QByteArray()
        buff = QBuffer(ba)
        buff.open(QIODevice.WriteOnly)
        img.save(buff, 'PNG')
        return ba

    def setCachedImage(self, img, project, request, key):
        m = hashlib.md5()
        paramMap = request.parameters()
        urlParam = "&".join(["%s=%s" % (k, paramMap[k]) for k in paramMap.keys()])
        m.update(urlParam.encode('utf8'))
        with open(os.path.join(self._tile_cache_dir, m.hexdigest() + ".png"), "wb") as f:
            f.write(img)
        return os.path.exists(os.path.join(self._tile_cache_dir, m.hexdigest() + ".png"))

    def deleteCachedImage(self, project, request, key):
        m = hashlib.md5()
        paramMap = request.parameters()
        urlParam = "&".join(["%s=%s" % (k, paramMap[k]) for k in paramMap.keys()])
        m.update(urlParam.encode('utf8'))
        if os.path.exists(os.path.join(self._tile_cache_dir, m.hexdigest() + ".png")):
            os.remove(os.path.join(self._tile_cache_dir, m.hexdigest() + ".png"))
        return not os.path.exists(os.path.join(self._tile_cache_dir, m.hexdigest() + ".png"))

    def deleteCachedImages(self, project):
        filelist = [f for f in os.listdir(self._tile_cache_dir) if f.endswith(".png")]
        for f in filelist:
            os.remove(os.path.join(self._tile_cache_dir, f))
        filelist = [f for f in os.listdir(self._tile_cache_dir) if f.endswith(".png")]
        return len(filelist) == 0

Ir būdas, kaip pridėti jį į QGIS Serverio podėlio tvarkyklę.

servercache = PyServerCache(server_iface) server_iface.registerServerCache(servercache, 100)

Šią savybę finansavo Ifremer

Šią savybę sukūrė 3Liz

Savybė: WMTS 1.0.0 palaikymas

QGIS Serveris 3.4 palaiko WMTS 1.0.0 OGC standartą.

QGIS projekto savybėse naudotojas gali nurodyti:

  • kuri projekto dalis (visas projektas, sluoksnių grupės ar sluoksniai) turi būti publikuojama WMTS standartu

  • minimalus kaladėlių mastelis

QGIS Serveris WMTS tiekimui perpanaudoja CRS, nurodytą WMS.

Norint valdyti kaladėlių podėlį, buvo pridėtas ir įkeltas į QGIS Serverį priedas su QgsServerCacheFilter klase.

image34

Šią savybę finansavo Ifremer

Šią savybę sukūrė 3Liz

Savybė: pridėta galimybė nurodyti WMTS minimalų mastelį

Šią savybę finansavo https://github.com/rldhont

Šią savybę sukūrė https://github.com/rldhont

Savybė: QGIS Serverio žurnalo rašymo į stderr palaikymas

Dabar galima QGIS Serverį sukonfigūruoti taip, kad klaidas jis rašytų į stderr. Tai daroma nustačius aplinkos kintamojo QGIS_SERVER_LOG_FILE reikšmę „stderr“.

Šią savybę finansavo OSLANDIA

Šią savybę sukūrė Eric Lemoine

Priedai

Savybė: užkoduotų zip palaikymas priedų tvarkyklėje

Priedų tvarkyklė dabar moka įdiegti priedus iš vietinio zip failo, kuris yra užkoduotas.

image35

Šią savybę finansavo Borys Jurgiel

Šią savybę sukūrė Borys Jurgiel

Savybė: GeoPackage redagavimas neprisijungus

Su redagavimo neprisijungus funkcionalumu dabar galima pasirinkti, ar eksportas kuria SpatiaLite, ar GeoPackage failą darbui neprisijungus.

Šią savybę finansavo Oester Messtechnik

Šią savybę sukūrė David Signer (OPENGIS.ch)

Programavimas

Savybė: QgsSpatialIndexKDBush

Labai greitas statinis erdvinis indeksas 2D taškams, paremtas plokščiu KD-medžiu, naudojant https://github.com/mourner/kdbush.hpp

Lyginant su QgsSpatialIndex, šis indeksas: - palaiko tik vieno taško geometrijas (nėra multitaškų) - yra statinis (geometrijų negalima pridėti ar išimti iš indekso po jo sukūrimo) - yra daug greitesnis! - palaiko tikras „paremtas atstumu“ paieškas, pvz. grąžinti visus taškus, esančius arčiau už spindulį nuo paieškos taško.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: metodas QgsRasterDataProvider::sample efektyviam rastro atrinkimui konkrečiame taške

Tai metodo QgsRasterDataProvider::identify alternatyva, kuri mažiau efektyvi, bet galingesnė

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: naujas geometrijos API kvietimas, grąžinantis kreivės dalį

Buvo pridėtas naujas PyQGIS API, leidžiantis paprastai gauti dalį LineString/Curve geometrijos:

QgsCurve::curveSubstring -  Grąžina naują kreivę, kuri yra dalis kreivės nuo pradžios iki pabaigos atstumo.

Jei yra z arba m reikšmės, rezultato z ir m reikšmės bus interpoliuotos pagal esamas z ar m reikšmes. Metodas taipogi apdoroja kreivines geometrijas be praradimo ar segmentacijos.

Šią savybę finansavo North Road

Šią savybę sukūrė Nyall Dawson (North Road)

Savybė: sip Modulių API pakeitimai

Dėl pakeitimų PyQt/sip bibliotekoje, QGIS 3.4 pasikeitė rekomenduojamas būdas importuoti modulius. Maksimaliam portabilumui, vietoje tiesioginio kvietimo import sip priedai turėtų naudoti: from qgis.PyQt import sip Naudojant šį naują stilių bus užtikrinta, kad importas veiks teisingai visose platformose bei veiks ir ateities QGIS versijose.

Savybė: Python vektorinių duomenų tiekėjai

Kuriamas API, pavyzdinis tiekėjas ir testai, leidžiantys kurti vektorinių duomenų tiekėją gryname python’e.

image36

Šią savybę finansavo Good will

Šią savybę sukūrė Alessandro Pasotti

3D savybės

Savybė: pagerinta navigacija

Tai pakeičia kameros centrą kai kamera sukasi aplink. Anksčiau žiūrėjimo centras visada būdavo nuliniame aukštyje, o tai reikšdavo, kad esant paviršiui toliau už nulinį aukštį, sukimas ir pavertimas atrodydavo keistai, nes centro taškas būdavo toli.

Galimybė judinti kamerą aukštyn/žemyn naudojant pageup/pagedown klavišus

Kameros judinimas paliekant poziciją su Ctrl + rodyklės / pelė

image37

Šią savybę finansavo QGIS bendruomenė sutelktinio finansavimo būdu

Šią savybę sukūrė Martin Dobias (Lutra Consulting)

Savybė: animacija

Galite kurti animaciją pagal kelis kadrus - kameros pozicijas konkrečiu laiku. QGIS 3D tada interpoliuoja kameros pozicijas/pasūkimus tarpiniuose kadruose.

Norėdami sukurti kadrus, pirma pakeiskite žemėlapio vaizdą pasukdami, pakeisdami mastelį ar pastumdami kamerą. Tada priskirkite kadrui laiką. Yra keli būdai itnerpoliuoti tarp kadrų.

image38

Šią savybę finansavo QGIS bendruomenė sutelktinio finansavimo būdu

Šią savybę sukūrė Martian Dobias (Lutra Consulting)

Savybė: paprastas 3D linijų braižymas

Šis 3D linijų braižymo režimas naudos OpenGL linijų braižymą vietoje linijų keitimo į buferius ir jų braižymo kaip tinklelio.

Pranašumas yra tas, kad 3D linijos nepraranda savo Z koordinatės, kas įvyksta šiuo metu naudojant „paprastą“ 3D braižymą.

Minusas yra tas, kad linijos negali būti plačios (palaikoma Qt3D tik nuo 5.10, bet net tada jos nebraižomos gražiais sujungimais) ir medžiagai naudojama tik pasyvi spalva.

image39

Šią savybę finansavo Lutra Consulting

Šią savybę sukūrė Martin Dobias (Lutra Consulting)

Savybė: žemėlapio identifikavimo įrankis 3D rodiniui

3D žemėlapyje pridėtas naujas identifikavimo įrankis. Šio įrankio pagalba galite tirti geoobjektus 3D scenoje.

image40

Šią savybę finansavo Department of Environment, Land and Infrastructure Engineering (DIATI)

Šią savybę sukūrė Martin Dobias (Lutra Consulting) ir Faunalia

Savybė: eksperimentinis Python’o API

Kai kurios QGIS 3D klasės dabar prieinamos Python programuotojams. Dabar galima užklausti ar keisti žemėlapio sluoksnių 3D braižymus ir skaityti/rašyti 3D simbolių savybes, tokias kaip medžiagos spalvas. Prašome atkreipti dėmesį, kad dabar API yra laikoma eksperimentine, taigi gali pasikeisti ateinančiose 3.x laidose.

Šią savybę finansavo Lutra Consulting

Šią savybę sukūrė Martin Dobias (Lutra Consulting)