Log met wijzigingen voor QGIS 3.14

image1

De volgende uitgave in het spoor van fantastische uitgaven van QGIS die we de afgelopen 18 jaar hebben ontwikkeld. Deze uitgave zit zo boordevol nieuwe mogelijkheden en verbeteringen, groot en klein, dat het moeilijk is waar te beginnen. Enkele van de kenmerkende mogelijkheden omvatten ondersteuning voor vectortegels, grote voordelen in ondersteuning voor MDAL mdal / mazen, eigen ondersteuning voor tijdbeheer in WMS-T, PG Raster, vectorproviders, en lagen met mazen. Gebruikers die zich richten op cartografie en digitaliseren zijn ook niet vergeten, met heel veel nieuwe opties voor u!

Dankwoord

We willen onze dank uitspreken aan alle ontwikkelaars schrijvers van documentatie, testers en alle andere mensen die vrijwillig hun tijd en inspanningen ter beschikking stellen (of mensen sponsoren om dat te kunnen doen). Vanuit de QGIS gemeenschap hopen we dat u van deze uitgave zult genieten! Als u tijd of geld wilt doneren of op een andere wijze betrokken wilt zijn in het opwaarderen van QGIS, kijk dan ook eens op QGIS.ORG en help een handje!

QGIS wordt ondersteund door donoren en dragende leden. Een huidige lijst van donoren die grote en kleine bijdragen hebben gegeven aan het project kan worden bekeken op onze lijst van donoren. Als u een dragend lid voor het project zou willen worden, bekijk dan onze pagina voor dragende leden voor de details. Sponsoren van QGIS helpt ons om fonds te verkrijgen voor onze regelmatige ontmoetingen van ontwikkelaars, de infrastructuur van het project te onderhouden en inspanningen voor het oplossen van problemen te financieren. Een volledige lijst van huidige sponsoren wordt hieronder weergegeven - een welgemeend Bedankt voor al onze sponsoren!

QGIS is gratis software en u bent niet verplicht om maar iets te betalen voor het gebruiken ervan - in feite willen we mensen, wijd en zijd verspreid, aanmoedigen om het te gebruiken, ongeacht uw financiële of sociale status - wij geloven dat het uitrusten van mensen met gereedschappen voor het maken van ruimtelijke beslissingen zal resulteren in een betere wereld voor de gehele mensheid.

Algemeen

Mogelijkheid: Nieuwe instellingen voor lettertypen voor annotaties van Decoratie

Annotaties voor het decoreren van het raster van het kaartvenster zijn nu volledig aan te passen, inclusief kleur van het lettertype, buffer, etc.

image8

Dit werd mogelijk gemaakt door iMHere Asia

Deze mogelijkheid werd ontwikkeld door Mathieu Pellerin

Tijdelijk

Mogelijkheid: Instellen van cumulatieve tijdsperiode in Tijdbeheer

Voegt een instelling toe aan Tijdbeheer om de tijdsperiode voor de animatie cumulatief in te stellen. Dit betekent dat alle frames voor de animatie dezelfde datum-tijd voor het begin hebben, maar verschillende datums en tijden voor het einde.

Dit is nuttig voor u als u accumulerende gegevens in uw visualisatie in Tijdbeheer wilt, in plaats van een ‘verplaatsend tijdvenster’ weer te geven over uw gegevens.

image2

Dit werd mogelijk gemaakt door Meteorological Service of Canada

Deze mogelijkheid werd ontwikkeld door Kartoza / Samweli Mwakisambwe

Mogelijkheid: Nieuwe modus “Alleen laag opnieuw tekenen” toegevoegd voor vectorlagen van Tijdbeheer

Indien ingesteld voor deze modus, zal de laag automatisch opnieuw worden getekend wanneer de tijdsperiode van Tijdbeheer wordt gewijzigd, maar er zal geen op tijd gebaseerd filteren worden toegepast op de objecten.

Deze configuratie is nuttig als de laag instellingen voor Symbologie heeft die variëren gebaseerd op de tijdsperiode. Wanneer het bijvoorbeeld tijdsafhankelijke expressies voor de renderer Regel-gebaseerd gebruikt of data-bepaalde expressies voor Symbologie.

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Ondersteuning voor basisafhandeling van Tijdbeheer voor vectorlagen toegevoegd

Dit laat enkele basismogelijkheden voor het eigen Tijdbeheer voor vectorlagen zien:

  • Statisch tijdbereik voor de laag (om overeen te komen met mogelijkheden voor rasterlagen), dit stelt één enkele statische tijdsperiode in die van toepassing is voor de gehele laag. Alle objecten van de laag zullen worden weergegeven als de tijd van het kaartvenster de tijdsperiode van de laag overlapt
  • “Enkel veld met DateTime”: Maakt selecteren van één enkel; veld Date of DateTime uit de laag mogelijk. Objecten zullen worden weergegeven als de waarde van dit veld binnen de tijdsperiode van het kaartvenster ligt
  • “Afzonderlijke velden voor begin- en einddatum/-tijd”: Maakt het mogelijk velden voor begin- en einddatum/-tijd te selecteren uit de laag. Objecten zullen worden weergegeven als de berekende tijdsinterval uit deze velden de tijdsperiode van het kaartvenster overlapt

We zouden moeten overwegen dit in de toekomst uit te breiden, bijv. om modi toe te voegen voor “begintijd + vaste duur”, “begintijd + duur vanuit veld”, “begin- en eindtijd via expressies”, etc.

Enkele bekend beperkingen/inefficiënties:

  • Momenteel kunnen alleen velden Date/DateTime worden gebruikt. Dit is gedaan om de afhandeling van de indeling te vereenvoudigen en de noodzaak om rekening te houden met velden met tekenreeksen met andere indelingen voor DateTime te vermijden. In de toekomst zouden we het selecteren van velden met tekenreeksen mogelijk moeten maken, en gebruikers toestaan om een aangepaste tekenreeks voor de indeling DateTime in te voeren
  • Anders de de benadering met de plug-in Time Manager, berust de hier geboden benaderingvolledig op expressies van QGIS en verzoeken voor objectenom het filteren uit te voeren (Time Manager gebruikt tekenreeksen voor filteren van lagen en probeert een eigen syntaxis voor het SQL-filter in te stellen zodat het filteren op de achtergrond wordt uitgevoerd). Dit is met opzet, omdat het een universele benadering voor filteren verschaft, ongeacht de gebruikte provider (d.i. we hoeven geen rekening te houden met de verschillende syntaxis voor SQL, die door de verschillende providers zelf worden gebruikt). Het mooie van het compileren van expressies voor verzoeken voor objecten zou beteken dat de expressies van QGIS magisch worden omgezet naar eigen query’s op de achtergrond, MAAAAAAAAAAAR… omdat ondersteuning voor expressies van QGIS voor letterlijke DateTime ontbreekt, kunnen we momenteel alleen vertrouwen op de functie voor de expressie “to_datetime” en alles door middel van tekenreeksen af te dwingen. Geen van de compilers voor expressies handelt deze functie af, dus momenteel wordt *alle* filteren uitgevoerd aan de zijde van QGIS. We dienen functies toe te voegen voor het geoptimaliseerd maken van letterlijke DateTime en er dan voor zorgen dat de verschillende compilers deze letterlijken correct omzetten naar de syntaxis voor het filteren op de achtergrond om het mogelijk te maken dat al het werk voor het filteren wordt uitgevoerd aan de zijde van de database…

Dis is, momenteel, de uitvoering veel slechter met grote lagen, vergeleken met Time Manager (en de weergegeven set met objecten is kleiner, bijv. geen afhandeling voor interpolatie), maar het voordeel is dat we het eigen framewerk voor Tijdbeheer kunnen gebruiken en geanimeerde vectorlagen kunnen maken, naast lagen met mazen en rasterlagen!

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Ondersteuning voor API van Tijdbeheer voor raster in PostgreSQL

Integratie van mogelijkheden voor Tijdbeheer voor rasters in PostgreSQL toegevoegd.

image3

image4

Dit werd mogelijk gemaakt door ARPA Piemonte

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: QGIS Projectinstellingen voor Tijdbeheer

Deze mogelijkheid voegt functionaliteit voor tijdsinstellingen voor het project toe.

U zult in staat zijn de tijdsperiode voor Tijdbeheer in te stellen, ofwel met handmatige invoer of door het uit de huidige projectlagen voor Tijdbeheer te berekenen. Het laatste kan worden uitgevoerd door te klikken op de verschafte knop “Uit lagen berekenen”.

Deze implementatie stelt het podium in voor het toevoegen van geanimeerde objecten voor lagen van Tijdbeheer in QGIS.

Hier is een voorbeeld voor het instellen van de tijdsperiode voor een project. image5

Eerdere discussies over ondersteuning voor Tijdbeheer in QGIS zijn hier en hier te vinden.

Dit werd mogelijk gemaakt door Meteorological Service of Canada

Deze mogelijkheid werd ontwikkeld door Kartoza / Samweli Mwakisambwe

Mogelijkheid: Ondersteuning voor beperkingen van Tijdbeheer in lagen van WMS-T

Deze mogelijkheid maakt het mogelijk om lagen WMS voor Tijdbeheer (WMS-T) binnen QGIS te beperken. U zult in staat zijn hede periode DateTime te beperken voor elke laag voor Tijdbeheer van providers van WMS-T.

Deze implementatie laat de gebruiker de vereiste periode DateTime op de laag te specificeren vanaf de tab Bron in het dialoogvenster Laageigenschappen.

Hieronder een voorbeeld van de werkstroom. image6

Opmerking: Voor directe punten in tijdperioden zal het specificeren van ene periode met een gelijke begin en eind DateTime resulteren in het gebruiken van het gespecificeerde punt DateTime en geen periode.

image7

Dit werd mogelijk gemaakt door Meteorological Service of Canada

Deze mogelijkheid werd ontwikkeld door Kartoza / Samweli Mwakisambwe

Mogelijkheid: API Tijdbeheer

Deze mogelijkheid verschaft een implementatie van de API voor ondersteuning van Tijdbeheer in QGIS.

U kunt de API voor Python vinden door te zoeken naar ‘Temporal’ in de documentatie voor Python (link).

Dit werd mogelijk gemaakt door Meteorological Service of Canada

Deze mogelijkheid werd ontwikkeld door Kartoza / Samweli Mwakisambwe

Kaartgereedschap

Mogelijkheid: Ondersteuning voor Gereedschap Identificeren in QGIS voor lagen met vectortegels.

Het gereedschap Identificeren is nu in staat attributen van objecten in vectortegels te inspecteren.

image9

Dit werd mogelijk gemaakt door Vele giften

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Martin Dobias)

Gebruikersinterface

Mogelijkheid: Attributentabellen als tabs openen

Als de optie “Nieuwe attributentabellen als vastgezette vensters openen” actief is, zullen nieuwe attributentabellen worden geopend als tabs, bovenop bestaande attributentabellen.

image13

Deze mogelijkheid werd ontwikkeld door Germán Carrillo

Symbologie

Mogelijkheid: Renderer voor contouren voor rasterlagen

Deze nieuwe renderer tekent contourlijnen die direct worden berekend uit de bron-rastwerband. Het is mogelijk de interval voor de contourlijnen en het te gebruiken symbool voor het tekenen in te stellen.

In aanvulling daarop is er ondersteuning voor “index contouren” - contourlijnen met hogere intervallen worden gewoonlijk getekend met een breder lijnsymbool.

Als we contourlijnen op rasterblokken voor de invoer maken met dezelfde grootte als onze rasterblokken voor de uitvoer, zullen de gemaakte lijnen teveel details bevatten. Deze details kunnen worden verminderd door de factor “Invoer verlagen” - dit zal een lagere resolutie van het bronraster vragen.

image14

Deze mogelijkheid werd ontwikkeld door Martin Dobias

Mogelijkheid: Eenheid percentage voor grootte symbologie markering rasterafbeelding en vulling raster toegevoegd.

Overeenkomstig het Feature Request voegt deze patch een nieuwe waarde in percentage (van de originele afbeeldingsgrootte) voor eenheden van de grootte voor lagen Markering rasterafbeelding en Vulling raster (suggestie van nirvn ).

Een laag bevat bijvoorbeeld rasterafbeeldingen van verscheidene grootten en verhoudingen:

image15 image16

Als we een bestaande waarde voor de eenheid van grootte voor de Markering rasterafbeelding gebruiken, zal de laag er zo uitzien (met een normale krokodil, maar met een grote giraffe):

image17

of zoals dit (met een normale giraffe, maar hele kleine krokodil):

image18

De nieuwe waarde percentage van de eenheid voor grootte is bedoeld om dit probleem op te lossen.

Beiode eenheidstesten “qgis_rasterfilltest” en “qgis_rastermarkertest” werden herschreven met een set van nieuwe controleafbeeldingen voor het testen van de voorgestelde waarden percentage van eenheden voor grootte.

Deze mogelijkheid werd ontwikkeld door beketata

Mogelijkheid: Data-bepaalde eigenschap voor familie/stijl lettertype voor markering lettertype toegevoegd

Data-bepaalde eigenschappen werden toegepast voor de familie van het lettertype voor markeringen van lettertypen en de nagelnieuwe eigenschappen voor de stijl van het lettertype. Dit kan handig zijn voor een aantal scenario’s, inclusief meertalige context waar een data-bepaalde eigenschap het dupliceren van gegevenssets kan voorkomen.

image19

Dit werd mogelijk gemaakt door iMHere Asia

Deze mogelijkheid werd ontwikkeld door Mathieu Pellerin

Mogelijkheid: Nieuwe instelling voor stijl van lettertype voor markeringen van lettertype

Met deze nagelnieuwe instelling, die eerder niet beschikbaar was, kunnen gebruikers en niet-standaard stijl van families van lettertypen selecteren.

image20

Dit werd mogelijk gemaakt door iMHere Asia

Deze mogelijkheid werd ontwikkeld door Mathieu Pellerin

Labelen

Mogelijkheid: Kleuren voor HTML in labels respecteren

Indien ingeschakeld zal deze optie de inhoud van labels als HTML behandelen, en KLEURGERELATEERDE opties voor opmaak van HTML voor de VOORGROND zullen in het gerenderde label worden gerespecteerd.

Opmerking: ALLEEN TAGS VOOR KLEUR IN HTML WORDEN GERESPECTEERD. Dit is GEEN bug, deze mogelijkheid is meer ontworpen als een “test van het water” met opmaak in HTML in labels, en overeenkomstig komen alleen opties voor de opmaak die niet de vorm van het lettertype wijzigen in aanmerking.

Aan de pluskant werkt het correct met ALLE andere instellingen voor labels, inclusief schaduwen, buffers, gebogen labels, etc!

Nu enkele leuke plaatjes:

image21

image22

Dit werd mogelijk gemaakt door geoProRegio AG

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Automatisch plaatsen van labels buiten polygonen

Deze mogelijkheid maakt het mogelijk automatisch labels buiten objecten polygonen te plaatsen.

Dit wordt op een aantal manieren weergegeven:

  1. Een nieuwe modus voor plaatsing die labels voor polygonen voor de laag altijd buiten de objecten plaatst: image23 image24
  2. Bij het gebruiken van andere modi voor het plaatsen van polygonen, kan een nieuw keuzevak “Plaatsen labels buiten polygonen toestaan” worden geselecteerd om toe te staan dat labels buiten worden geplaatst, als het niet mogelijk is ze binnen de polygoon te plaatsen: image25 image26

Het keuzevak “Plaatsen labels buiten polygonen toestaan” mag data-bepaald zijn, wat het gebruikers instaat stelt om ofwel labels buiten toe te staan, labels buiten te voorkomen, of labels buiten te forceren, op een object-voor-objectbasis.

Het algoritme voor plaatsing is gebaseerd op een modificatie van Rylov & Reimer (2016) “A practical algorithm for the external annotation of area features”. Waar Rylov & Reimer een op een horizontale veeglijn gebaseerde benadering voor het selecteren van kandidaat labelpunten voorstellen, vond ik in de praktijk dat dit inferieure resultaten opleverde (en trager was) dan gewoon door de buitenste ring van de polygoon te gaan en kandidaat-punten te maken op regelmatige intervallen (speciaal voor nauwe, bijna horizontale polygonen).

Zoals weergegeven in de schermafdruk met eilanden hierboven, werkt de modus voor plaatsen buiten zoals verwacht met de meerregelige modus voor uitlijnen “Plaatsing van labels volgen”.

Dit werd mogelijk gemaakt door Zwitserse QGIS gebruikersgroep

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Laag met vectortegels - deel 4 (labelen)

Doorgegaan met het werken aan de implementatie va lagen met vectortegels.

Dit voegt ondersteuning voor labelen voor lagen met vectortegels toe. Tot op heden werkt het alleen in qgis_core… Ondersteuning voor GUI zal het volgende zijn. Labelen gebruikt dezelfde concepten als het renderen van vectortegels: we hebben een lijst met stijlen voor labelen, elke gedefinieerd door zijn naam voor de sub-laag, type geometrie, filterexpressie, zoombereik, en natuurlijk de configuratie vor de stijl van het label (QgsPalLayerSettings).

Onthoud dat er een “kip-en-het-ei probleem” is met labelen: Voor vectortegels maken we QgsFields voor een sub-laag, gebaseerd op velden die de renderer en labelen aanvragen, maar met labelen was het onmogelijk om de aangevraagde velden op te halen als zij nog niet beschikbaar waren in de context van de expressie (ondanks enkele kleine aanvullingen aan QgsProperty, QgsPropertyCollection, QgsPalLayerSettings om in staat te zijn aangevraagde veldnamen op te halen door niet tegelijkertijd interne expressies voor t ebereiden).

image27

Een voorbeeld hoe bovenstaand labelen in te stellen in de console van Python:

s = QgsVectorTileBasicLabelingStyle()
s.setLayerName("place")
s.setGeometryType(QgsWkbTypes.PointGeometry)
s.setFilterExpression("rank = 1 AND class = 'country'")
ls=QgsPalLayerSettings()
ls.drawLabels=True
ls.fieldName="name"
ls.placement = QgsPalLayerSettings.OverPoint s.setLabelSettings(ls)
labeling = QgsVectorTileBasicLabeling()
labeling.setStyles([s])
iface.activeLayer().setLabeling(labeling)

Dit werd mogelijk gemaakt door Vele giften

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Martin Dobias)

Mogelijkheid: Beheer over ankerpunt voor tekstballon op label toegevoegd

Dit geeft gebruikers beheer over waar een tekstballon met de tekst van een label zou moeten worden samengevoegd (eerder had u alleen beheer over waar de tekstballon zou worden samengevoegd met de overeenkomende geometrie van het object).

Keuzes omvatten:

  • Dichtstbijzijnde punt (eerdere gedrag)
  • Zwaartepunt label
  • Vaste hoeken: Linksboven/rechtsboven/linksonder/rechtsonder/etc

Data-bepaald beheer over het anker voor het label is ook mogelijk.

Helpt enige lelijkheid van tekstballonnen op te lossen!

Eerder resultaat (modus Dichtsbijzijnde punt):

image28

Met nieuwe plaatsing “zwaartepunt”:

image29

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mazen

Mogelijkheid: Alleen gespecificeerde groep van gegevensset gebruiken

Deze mogelijkheid stelt de gebruiker in staat de te gebruiken groepen van de gegevensset te kiezen. Dit kan worden gedaan in het dialoogvenster voor eigenschappen van de laag met mazen op de tab Bron.

Een nieuwe boomweergave geeft alle beschikbare groepen voor de gegevensset van de gegevensprovider weer. De groepen voor de gegevensset kunnen geselecteerd/gedeselecteerd en hernoemd worden.

Dit widget verschaft ook knoppen om extra groepen van gegevenssets te laden uit bestanden, om de boom uit te klappen/in te klappen, om alle items te selecteren/deselecteren en om de standaarden voor de provider te herstellen (voor nu nog alleen de originele naam).

Alleen de geselecteerde groep van de gegevensset zal worden weergegeven in de widget voor de actieve gegevensset in instellingen voor de renderer.

image30

Dit werd mogelijk gemaakt door Deltares

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: Scalaire instellingen voor kleuren, afhankelijk van classificatie

Met deze mogelijkheid leest MDAL geclassificeerde scalaire waarden in de gegevensset. Wanneer waarden zijn geclassificeerd, worden standaard scalaire instellingen voor renderen ingesteld voor het contrast van het kleurverloop en worden labels ingesteld overeenkomstig de geclassificeerde waarden.

image31

Dit werd mogelijk gemaakt door Deltares

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: Snappen aan elementen van mazen

Voegt een methode toe aan de API om aan elementen van mazen te snappen.

De methode geeft de positie van het gesnapte punt op het dichtstbijzijnde element van mazen terug.

  • Voor een punt is de gesnapte positie de positie van het punt
  • Voor een rand is de gesnapte positie het geprojecteerde punt op de rand, of de extremiteit van de rand indien buiten de rand
  • Voor een zijde is de gesnapte positie het zwaartepunt van de zijde

De teruggegeven positie is in kaartcoördinaten.

image32

Dit werd mogelijk gemaakt door Deltares

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: 1D variëren van breedte/kleur van mazen

Deze mogelijkheid verschaft een nieuwe manier om 1D-mazen te renderen met dikten van randen die kunnen variëren met hun waarden. Dus nu kunnen breedte en kleur variëren, afhankelijk van de waarde op de randen of op punten.

De gebruiker kan de min/max-waarde en min/max-breedte definiëren om het renderen in te stellen.

Voor kleur kan de gebruiker een contrast voor het kleurverloop definiëren (net zoals voor 2D-mazen en raster).

Voor dit nieuwe renderen worden nieuwe algemene klassen geïntroduceerd, die buiten het framewerk voor mazen kunnen worden gebruikt.

image33

Dit werd mogelijk gemaakt door Deltares

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: Ondersteuning voor meerdere lagen met mazen (vanaf MDAL 0.5.91)

In aanvulling op het bijwerken naar MDAL 0.5.91, staat deze mogelijkheid toe dat meerdere lagen met mazen worden geladen uit één bestand.

Het bestand wordt geparset en een dialoogvenster voor een sub-laag, dat dezelfde logica gebruikt als voor vector- of rasterlagen, wordt geopend.

image34

Dit werd mogelijk gemaakt door Deltares

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: Laag met mazen verbinden met QGIS framewerk Tijdbeheer

image35

Afhandelen van tijd in een laag met mazen

De tijd in een laag met mazen wordt gedefinieerd door :

  • Een referentietijd die door de gegevens, het project of de gebruiker wordt verschaft
  • Elke gegevensset wordt geassocieerd met relatieve tijden
  • Tijdperiode wordt gedefinieerd door de eerste en de laatste tijd van alle gegevenssets
Reference time :          AT
Dataset 1 time            o---RT------RT-----RT-----------RT
Dataset 2 time            o-------RT------RT--------RT
Dataset 3 time            o--------------------------RT-------RT------RT
Time extent of layer      o----<---------------------------------------->

-  AT : absolute time (QDateTime)
-  RT : relative time (qint64)

De klasse QgsMeshDataprovidertemporalCapabilities slaat de door de gegevens verschafte referentietijd en alle relatieve tijden van de gegevensset op. Deze klasse is in staat een index voor de gegevensset uit een groep voor de gegevensset terug te geven en een relatieve tijd vanaf de referentietijd. De referentietijd (die anders mag zijn dan de referentietijd van de provider) en de absolute tijdperiode worden opgeslagen in de klasse QgsMeshTemporalProperties

De instellingen voor Tijdbeheer in de widget Eigenschappen zijn alleen de referentietijd en de tijdseenheid van de provider: image36

De standaard referentietijd van de laag wordt ingesteld door (gesorteerd op prioriteit):

  • Vanuit de gegevensprovider indien gedefinieerd in de gegevens
  • Vanuit het project indien gedefinieerd
  • Vanuit de huidige datum met tijd 00u00

De gebruiker kan het wijzigen als hij dat wil.

Principe voor renderen

De renderers 2D en 3D hebben toegang tot de index van de actieve gegevensset vanuit de laag waarvan hde tijdperiode is opgeslagen in de QgsContextRenderer en in de Qgs3DMapSettings : Relatieve tijd wordt berekend als het verschil tussen de tijdperiode van QgsContextRenderer en de referentietijd die is opgeslagen door QgsMeshTemporalProperties. De index voor de gegevensset komt uit de QgsMeshDataproviderTemporalCapabilities, die de relatieve tijd in kaart brengt met de index van de gegevensset.

De gegevens worden vanuit de provider gebracht met de index van de gegevensset.

Statische gegevensset

Er is ook de optie om een statische gegevensset in te stellen, dat is: om een gegevensset te kiezen die onafhankelijk zal worden gerenderd van QGIS Tijdbeheer. De gebruiker kan, om dat te doen, het keuzevak selecteren aan de onderzijde van de pagina voor Tijdbeheer van de widget Eigenschappen: image37 Voor nu, omdat het eenvoudiger was om te implementeren en het mogelijk te maken de gegevens direct te kiezen, kan de gebruiker onafhankelijk kiezen tussen scalaire gegevensset en vector gegevensset uit combinatievakken waarin de tijd voor elke gegevensset is geassocieerd (relatieve tijd voor gegevens zonder referentietijd). Indien vereist zou een unieke tijd kunnen worden geïmplementeerd, maar dat zou kunnen leiden tot inconsistente resultaten met niet-synchrone gegevenssets. De instellingen voor de statische gegevensset staan op de pagina Tijdbeheer, maar kunnen eenvoudig worden ingevoerd in de pagina Bron, indien gewenst.

Dit werd mogelijk gemaakt door Lutra Consulting

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: Resamplen vanuit waarden voor punten naar waarden voor zijden

Resamplen is beschikbaar voor gegevenssets die zijn gedefinieerd op zijden, bijv. de waarden voor punten wordt berekend uit waarden op zijden.

Deze mogelijkheid implementeert resamplen vanuit waarden voor punten naar waarden op zijden met behulp van de methode Neighbor average.

De standaardmethode is ingesteld op “geen” voor resamplen vanuit punten naar zijden en op “neighbor average” voor resamplen van zijden naar punten. Dan wordt het standaard renderen altijd glad. image38

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: Vector gegevensset met mazen kleuren met contrast voor kleurverloop

Deze mogelijkheid stelt de gebruiker in staat de vector gegevensset met mazen (pijl, stroomlijnen, sporen) te kleuren met contrast van het kleurverloop, afhankelijk van de grootte van de vector.

image39

image40

image41

Dit werd mogelijk gemaakt door Deltares

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: Stijl opslaan voor laag met mazen

Deze mogelijkheid voegt de optie toe om de stijl voor een laag met mazen op te slaan in een bestand QML, zoals die worden gebruikt voor vector- en rasterlagen.

Deze mogelijkheid past ook de stijl voor het menu Eigenschappen van raster- en vectorlagen aan. image42

Dit werd mogelijk gemaakt door Artelia Group

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Mogelijkheid: Renderer 1D-mazen

Bijgewerkt naar MDAL 0.5.90

Initiële implementatie van Support of 1D elements in Mesh Layers

1D-mazen bestaan uit punten en randen. Een rand verbindt twee punten en kan eraan toegewezen gegevens hebben (scalaire of vectors). Het netwerk voor 1D-mazen kan, bijvoorbeeld, worden gebruikt voor het modelleren van een stedelijk drainagesysteem.

Er zijn nieuwe opties om 1D-mazen (randen) weer te geven op de tab Mazen image43

Ook voor gegevens voor 1D-mazen (randen of punten) zijn er nieuwe opties op de tab Contouren

image44

Onthoud dat niet alle functionaliteiten, beschikbaar voor 2D-mazen, beschikbaar is, met name

  • Ondersteuning voor Mazen berekenen voor 1D-mazen
  • 3D-renderen van 1D-mazen
  • Identificeren en plotten in Crayfish (zal later, met het volgende PR, worden toegevoegd)

Sommige functies zijn niet nodig voor 1D-mazen, speciaal

  • Exporteren van contouren van mazen

Deze mogelijkheid werd ontwikkeld door Peter Petrik

Mogelijkheid: Mazen vereenvoudigen

Omdat een laag met mazen miljoenen driehoeken zou kunnen hebben, zou renderen heel traag kunnen zijn, speciaal als alle driehoeken worden weergegeven in de weergave, zelfs als driehoeken te klein zijn om te worden gezien.

Voor deze situaties verschaft deze mogelijkheid een optie om de mazen te vereenvoudigen. Vereenvoudiging leidt tot één of meer vereenvoudigde mazen die niveaus van detail vertegenwoordigen. Bij het renderen van de laag met mazen wordt het van toepassing zijnde niveau van detail gekozen om adequaat renderen te verschaffen, afhankelijk van de weergave.

Een nieuwe tab in de widget met eigenschappen voor de laag met mazen stelt de gebruiker in staat de instellingen te wijzigen :

  • De verkleiningsfactor wordt gebruikt om mazen te vereenvoudigen; het aantal driehoeken voor elk niveau van detail is bij benadering gelijk aan het aantal driehoeken van het vorige niveau van detail, gedeeld door de verkleiningsfactor
  • Maximale resolutie voor mazen: dit is de gemiddelde grootte (in pixels) van de driehoeken waarvan is toegestaan dat zij worden weergegeven; Als de gemiddelde grootte van de mazen kleiner is dan deze waarde, zullen mazen met een lager niveau van detail worden weergegeven, d.i. mazen met een gemiddelde grootte die net iets groter is dan de maximale resolutie voor mazen.

image45

Deze mogelijkheid maakt het mogelijk het renderen te versnellen, zoals weergegeven in deze tabellen (resultaten in milliseconden) : image46

Demo GIF Vóór: image47

Na: image48

Dit werd mogelijk gemaakt door BMT

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

3D-objecten

Mogelijkheid: Pijlen voor renderen van 3D gegevensset voor laag met mazen

Deze mogelijkheid voegt een optie toe voor het weergeven van pijlen op een 3D-entiteit gegevensset voor een laag met mazen, afhankelijk van een vector gegevensset.

De gebruikte gegevensset om pijlen te renderen is die, welke is gekozen voor het renderen van vectors bij 2D-renderen.

Op dezelfde manier worden de kleuren voor de pijlen gedefinieerd in de instellingen voor 2D-renderen voor de vector gegevensset.

In instellingen voor 3D kan de gebruiker de afstand voor de pijlen definiëren en of de grootte vast is of geschaald op grootte.

Deze instelling voor afstand definieert ook de maximale grootte van de pijlen, omdat pijlen niet mogen overlappen. image49

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Vincent Cloarec)

Expressies

Mogelijkheid: Nieuwe expressies

  • ascii
  • make_interval Maakt direct construeren van waarden voor intervallen uit waarden years/months/weeks/days/hours/minutes/second mogelijk, zonder eerst een weergave tekenreeks van de interval te moeten maken
  • maptip
  • layer_property('distance_units')
  • display_expression
  • eval_template
  • make_date
  • make_time
  • make_datetime
  • close_line
  • is_multipart
  • geometrie Z en M minimum en maximum
  • @frame_number
  • @frame_rate
  • @frame_duration
  • @map_start_time Begin van de tijdsperiode van de kaart (als een waarde datetime)
  • @map_end_time Einde van de tijdsperiode van de kaart (als een waarde datetime)
  • @map_interval: Duur van de tijdsperiode van de kaart (als een waarde interval)
  • @animation_start_time
  • @animation_end_time

Deze mogelijkheid werd ontwikkeld door Etienne Trimaille, Jan Caha, Julien Monticolo, Nyall Dawson

Mogelijkheid: Browser voor objecten voor voorbeeld in expressiebouwer

Dit voegt een browser voor objecten toe aan de expressiebouwer, zodat iemand door objecten kan bladeren om het resultaat van de expressie te zien image65

Een nieuw widget is toegevoegd: QgsFeaturePickerWidget. Voor dit moment is het een eenvoudig combinatievak (maar erft widget dus kunnen we later een knoop voor het selecteren van de kaart eraan toevoegen). Het gedraagt zich op dezelfde manier als die in de widget relatieverwijzing (een bewerkbaar combinatievak).

Het vertrouwt op hetzelfde basismodel (QgsFeatureFilterModel). Een nieuwe abstracte klasse QgsFeaturePickerModelBase hergroepeert de logica ervan en het nieuwe model is genaamd QgsFeaturePickerModel. In de basis gebruikt QgsFeaturePickerModel het object-ID om de objecten te identificeren, terwijl QgsFeatureFilterModel een lijst met attributen gebruikt (de vreemde sleutels van een relatie). Het ruimt het vorige model een beetje op, omdat dat nogal …vol was.

Als een opmerking terzijde, ik probeerde sjablonen te gebruiken voor QgsFeaturePickerModelBase, maar omdat sjablonen niet kunnen worden gemixt met Q_OBJECT, zouden alternatieven leiden tot minder leesbare code.

Testen zijn toegevoegd.

Gesponsord door de QGIS Zwitserse gebruikersgroep!

Deze mogelijkheid werd ontwikkeld door Denis Rouzaud

Mogelijkheid: Het is mogelijk aangepaste functies te verwijderen

Voegt een knop voor verwijderen toe aan de tab Functiebewerker in het dialoogvenster Expressiebouwer om het verwijderen van gebruikersfuncties uit QGIS mogelijk te maken, zonder naar de map voor het gebruikersprofiel te hoeven navigeren.

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: Bewerken, importeren en exporteren van expressies van gebruikers mogelijk gemaakt

Een nieuwe knop is toegevoegd die het bewerken van opgeslagen expressies mogelijk maakt. Die is alleen actief als een gebruikersexpressie is geselecteerd in de boom met expressies. Als erop wordt gedrukt, opent een venster dat het mogelijk maakt dat de momenteel geselecteerde gebruikersexpressie wordt bewerkt. Wijzigen van het label van de expressie maakt een kopie van de momenteel bestaande. Demo

Importeren/Exporteren

Een nieuwe knop met een menu is toegevoegd, die het mogelijk maakt gebruikersexpressies te importeren/exporteren naar/vanuit een bestand JSON. Klikken op een van de menu-items opent een dialoogvenster voor bestandsselectie voor de/het bron/doel van het bestand van JSON voor de expressies. In het geval van conflicten met het label, vraagt een aanvullend dialoogvenster hoe door te gaan - ofwel overschrijven of de huidige expressie overslaan. Importeren/Exporteren demo

Deze mogelijkheid werd ontwikkeld door Ivan Ivanov

Digitaliseren

Mogelijkheid: Toegewezen modus Kruisen/overlappen van geometrie voorkomen

Deze versie van QGIS komt met een nieuwe modusinstelling voor het vermijden van kruisen/overlappen van geometrie, bij het digitaliseren van objecten.

De drie beschikbare modi zijn:

Kruisen/overlappen toestaan


Kruisen/overlappen op actieve laag vermijden


Kruisen/overlappen op gebruikergedefinieerde lagenlijst vermijden


De lagenlijst voor de derde modus wordt door de gebruiker ingesteld via de widgets voor het configureren van geavanceerd snappen.

image66

Dit werd mogelijk gemaakt door OPENGIS.ch

Deze mogelijkheid werd ontwikkeld door Mathieu Pellerin

Mogelijkheid: Nieuwe modi voor snappen: Zwaartepunt en midden van een segment (middelpunt)

Deze mogelijkheid is gericht op het verbeteren van modi voor snappen in QGIS door dichter bij de ervaring van CAD-programma’s te komen.

Het voegt twee nieuwe modi toe. Snappen aan het midden van een geometrie (zwaartepunt) en het midden van een segment.

Verschillende modi voor snappen kunnen tegelijkertijd worden geselecteerd, om het selecteren van deze nieuwe modi toe te staan.

image67

De volgorde van voorkeur voor snappen is de volgende: - Hoekpunt, Kruising - Midden - Zwaartepunt - Rand - Gebied

image68

Gesponsored door: Qwat group / Ville de Lausanne ( @ponceta @dsavary ) / Oslandia en enige vrije tijd

Deze mogelijkheid werd ontwikkeld door lbartoletti

Mogelijkheid: Snappen aan het huidige te digitaliseren object

Snappen kan nu ook snappen aan het object dat momenteel wordt gedigitaliseerd. Deze optie wordt in-/uitgeschakeld door een nieuwe knop op de werkbalk Snappen.

Dit schakelt enkele leuke CAD-achtige mogelijkheden voor bewerken in, zoals het sluiten van objecten onder een hoek van 90° of precies uitlijnen van segmenten binnen een object. Het is bijzonder efficiënt als men gewend is aan het gebruiken van de sneltoets Alt+A om de hoek te vergrendelen.

image69

Dit werd mogelijk gemaakt door Kanton Solothurn en Land Vorarlberg

Deze mogelijkheid werd ontwikkeld door Olivier Dalang

Mogelijkheid: Traceren ondersteunt nu gebogen geometrieën

Het gereedschap Traceren maakt nu gebogen geometrieën bij het werken op een laag die gebogen geometrieën ondersteunt.

image70

De ondersteuning is nog experimenteel, dus moet deze mogelijkheid worden ingeschakeld in de opties voor digitaliseren.

Dit werd mogelijk gemaakt door ecoptima en Planteam

Deze mogelijkheid werd ontwikkeld door Olivier Dalang (OPENGIS.ch)

Formulieren en widgets

Mogelijkheid: Expressie-beheerde labels (aliassen)

Deze nieuwe mogelijkheid maakt het mogelijk dat labels in formulieren (aliassen) worden geëvalueerd in de context van het formulier.

image72

image73

Dit werd mogelijk gemaakt door ARPA Piemonte

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: Beschrijving toevoegen aan widget Waarde relatie

Voegt een optie toe voor het toevoegen van een beschrijving aan elke waarde in een widget Waarde relatie. De beschrijving zal zichtbaar zijn als helptip

Excuses voor de verschillende talen in de demonstratievideo.

image74

Deze mogelijkheid werd ontwikkeld door Matthias Kuhn

Mogelijkheid: Widget Nieuwe database tabelnaam

Een nieuw widget werd aan QGIS toegevoegd om een nieuwe tabel uit een bestaande verbinding naar een database te selecteren:

image75

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: Waarden huidige ouderformulier ophalen in kindformulieren

Deze mogelijkheid voegt de optie toe om huidige waarden uit het “oudert”-formulier in filterexpressies te gebruiken (voor nu alleen in widgets Waarde-relatie: te gebruiken in filters voor dieper zoeken).

Een nieuw bereik “parentForm” werd toegevoegd als ook een nieuwe set functies en variabelen om toegang te verkrijgen tot het ouderformulier binnen een ingebed kindformulier. De nieuwe functies en variabelen werden gemodelleerd op de bestaande “current_value”, “current_feature” etc.

De nieuwe functies en variabelen zijn ook beschikbaar als het ouderformulier is geopend in een nieuw (niet opgeslagen, niet gebufferd) object, wat het gemakkelijker maakt filters voor dieper zoeken te maken, gebaseerd op de waarden van de ouder, bij het toevoegen van kinderen uit een niet opgeslagen ouderformulier.

Nieuwe functies en variabelen

image77 image78 image79

Mogelijk gemaakt door: ARPA Piemonte

Dit werd mogelijk gemaakt door ARPA Piemonte

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: Widget Relatie: keuzevak toegevoegd om de knop voor bewerken van kinderen te verbergen

Dit is bijzonder nuttig voor ingebedde formulieren.

Mogelijk gemaakt door: ARPA Piemonte

image80

Dit werd mogelijk gemaakt door ARPA Piemonte

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: Widget Relatie forceert onderdrukken van pop-up

Voegt een optie toe aan de configuratie van de widget Relatie om het openen van pop-up in een formulier te onderdrukken, als nieuwe objecten worden toegevoegd in de context van een ingebed formulier.

Deze optie overschrijft de optie op het niveau van het formulier (wat nog steeds het gewenste gedrag zou kunnen zijn als het formulier wordt gebruikt als een zelfstandig formulier).

image81

Opmerking: het uiteindelijke label is Formulier verbergen bij toevoegen nieuw object forceren

Dit werd mogelijk gemaakt door ARPA Piemonte

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Legenda van laag

Mogelijkheid: Verplaats naar onderste toegevoegd aan contextmenu in weergave lagenboom

Verplaatsen van lagen in grote projecten werd al gemakkelijker gemaakt met Verplaats naar bovenste, maar men moest nog steeds handmatig basiskaarten verplaatsen naar de onderzijde van de lagenlijst, een bewerkelijke taak in grote lagenbomen. Deze mogelijkheid voegt een optie Verplaats naar onderste aan het contextmenu van de lagenboom toe dat op dezelfde manier werkt als Verplaats naar bovenste.

Deze mogelijkheid werd ontwikkeld door uclaros

Mogelijkheid: Knop Groep toevoegen laten acteren als Geselecteerde groeperen als geselecteerde lagen >= 2

Wanneer er meer dan één laag is geselecteerd en de gebruiker drukt op de knop Groep toevoegen, maak dan een nieuwe groep en plaats daar de geselecteerde lagen ook in! image82

Deze mogelijkheid werd ontwikkeld door uclaros

Mogelijkheid: Hernoemen van het huidige kaartthema toestaan

Dit voegt de optie toe voor het hernoemen van een kaartthema uit het keuzemenu voor de kaartthema’s.

image83

Deze mogelijkheid werd ontwikkeld door Harrissou Sant-anna

Mogelijkheid: ALLE geselecteerde lagen in-/uitschakelen met de knop “Spatie”

Schakelt de zichtbaarheid van de momenteel geselecteerde lagen of groepen met de spatiebalk: image84

Deze mogelijkheid werd ontwikkeld door Ivan Ivanov

Analyse-gereedschappen

Mogelijkheid: Netwerk loggen - meer functionaliteit

Voegt enkele nuttige gereedschappen toe aan de netwerklogger:

  • URL kopiëren
  • Verzoek als JSON kopiëren
  • Log naar bestand opslaan (na een belangrijke waarschuwing aan gebruikers dat het log gevoelige informatie zou kunnen bevatten en daarom als vertrouwelijk zou moeten worden behandeld)

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Ingebouwd gereedschap voor loggen van netwerk

Dit gereedschap, dat beschikbaar is vanuit het nieuwe F12 paneel “Debugging/Development tools”, is een eigen bewerking van de plug-in Network logger van @rduivenvoorde.

Het geeft een lijst weer van lopende en voltooide netwerkverzoeken, naast heel veel nuttige details, zoals status van verzoek en antwoord, headers, fouten, SSL configuratiefouten, time-outs, status van de cache, etc.

Heeft ook heel veel nuttige mogelijkheden en om op te poetsen, zoals de mogelijkheid om verzoeken te filteren op sub-tekenreeksen van URL’s en status, en u kunt met rechts klikken op verzoeken om de URL in een browser te openen of ze te kopiëren als een opdracht cURL.

Waarom willen we dit als een eigen bewerking in plaats van als een plug-in? Wel:

  • Het is bijzonder nuttig, dus goed om out-of-the-box beschikbaar te hebben
  • Door het te verplaatsen naar C++ kunnen we het proces voor loggen veel eerder opstarten dan dat een plug-in daar de mogelijkheid voor krijgt. Dit maakt het mogelijk dat het log aanvullende informatie kan bevatten, zoals verzoeken die worden ingediend door andere plug-ins die optreden voordat de plug-in Network logger is geladen (ook andere ingebouwde verzoeken, bijv. nieuwsfeed)
  • Uitvoering is een doorlopende strijd geweest met de plug-in voor Python. Hoewel dit voor zover mogelijk een 1:1 port is als maar mogelijk is, zijn de problemen met de uitvoering op magische wijze opgelost. De klassen bevatten enkele bijzonder intensieve lijstbewerkingen, wat waarschijnlijk de oorzaak is van de povere uitvoering onder Python.

image85

Dit werd mogelijk gemaakt door Meteorological Service of Canada

Deze mogelijkheid werd ontwikkeld door Nyall Dawson (voor Kartoza)

Processing

Mogelijkheid: Collectie algoritmen voor maken van willekeurige rasters

Met deze mogelijkheid hebben we een grote collectie van algoritmen voor het maken van willekeurige rasters toegevoegd. De algoritmen zijn in staat willekeurige rasters uit te voeren die specifieke verdelingen voor willekeurige getallen volgen. De volgende verdelingen zijn beschikbaar:

  1. Willekeurige rasterlaag maken (binomiale verdeling)
  2. Willekeurige rasterlaag maken (exponentiële verdeling)
  3. Willekeurige rasterlaag maken (gamma verdeling)
  4. Willekeurige rasterlaag maken (negatieve binomiale verdeling)
  5. Willekeurige rasterlaag maken (normale verdeling)
  6. Willekeurige rasterlaag maken (poisson verdeling)
  7. Willekeurige rasterlaag maken (uniforme verdeling)

image86

Deze mogelijkheid werd ontwikkeld door Clemens Raffler

Mogelijkheid: Laag vectortegel - deel 8 (schrijven in Processing)

Deze mogelijkheid voegt integratie voor Processing toe voor het schrijven van vectortegels. Het is slechts een verpakking rondom de bestaande klasse QgsVectorTileWriter.

Nieuwe algoritmen in de Toolbox van Processing:

image87

Parameters voor algoritme voor XYZ:

image88

Parameters voor algoritme voor MBTiles:

image89

Lijst met invoerlagen:

image90

Details Invoerlaag:

image91

Dit werd mogelijk gemaakt door QGIS gemeenschap

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Martin Dobias)

Mogelijkheid: Nieuw algoritme voor Grafische modellen maken voor het maken van voorwaardelijke aftakkingen

Dit algoritme stelt gebruikers in staat om meerdere voorwaarden in te stellen (via expressies van QGIS), die er voor zorgen dat de corresponderende tak van het grafische model wordt uitgevoerd of overgeslagen, afhankelijk van het resultaat van het evalueren van de expressie.

image92

Dit werd mogelijk gemaakt door Andreas Neumann

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Opnieuw ordenen invoer voor modellen toestaan

In plaats van het forceren van een quasi-willekeurige ordening van invoer voor modellen, geeft deze mogelijkheid een nieuwe optie “Invoer modellen opnieuw ordenen” in de ontwerper voor Grafische modellen, die gebruikers beheer geeft over de exacte volgorde van aan gebruikers weer te geven invoer voor hun model.

Geen onlogische volgorde meer, zoals een veldkeuze weergeven voordat de laag is gekozen waarop het is gebaseerd!

Gesponsord door NaturalGIS

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Validatie model uitstellen

In plaats van te forceren dat alle kind-algoritmen onmiddellijk geldig zijn en dat alle parameters juist zijn ingevuld, stelt deze mogelijkheid het valideren van het model uit tot de feitelijke uitvoering of tot wanneer een nieuwe actie “Model valideren” wordt getriggerd.

Een veel voorkomende frustratie met de QGIS ontwerper voor Grafische modellen is dat het constant forceert dat modellen geldig moeten zijn, zelfs modellen waaraan nog wordt gewerkt. Dit betekent dat het onmogelijk is een component aan een model toe te voegen en slechts gedeeltelijk de instellingen te vullen — u dient alles van tevoren in te voeren. Als u zich halverwege realiseert dat u ergens anders in uw model een wijziging moet maken, is het onmogelijk om dat te doen zonder te annuleren en alle instellingen te verliezen die u al hebt geconfigureerd.

Deze wijziging ziet er op toe dat het valideren van het model wordt uitgesteld tot de feitelijke uitvoering. Modellen mogen tijdelijk ongeldig zijn (bijv. componenten voor het algoritme hebben die slechts gedeeltelijk geconfigureerd zijn). De ontbrekende vereiste waarden kunnen nu in een later stadium worden ingevuld, zonder bestaande instellingen te verliezen. Als een niet-geldig model wordt uitgevoerd, krijgt de gebruiker een waarschuwing met een beschrijving die hen informeert over de wijzigingen die zij moeten maken om de configuratie van het model te voltooien.

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Ondersteuning toegevoegd voor verschillende typen rastergegevens in algoritme Constante rasterlaag maken

Met deze mogelijkheid hebben we een nieuwe gevorderde parameter OUTPUT_TYPE voor het algoritme Constante rasterlaag maken. Via deze parameter kunt u nu een gegevenstype voor de uitvoer specificeren voor uw constante rasterlagen.

  • Byte
  • Integer16
  • Unsigned Integer16
  • Integer32
  • Unsigned Integer32
  • Float32
  • Float64

image93

Deze mogelijkheid werd ontwikkeld door Clemens Raffler

Mogelijkheid: Algoritme Raster afronden

Met dit nieuwe algoritme voor Processing stellen we QGIS in staat Rasterwaarden af te ronden.

De belangrijkste functionaliteit van het algoritme is ofwel standaard afronden naar boven/dichtstbijjzijnde/naar beneden van floating point celwaarden of afronden naar machten van een door de gebruiker gespecificeerd basis n. Het algoritme kan worden gebruikt met rasters van alle typen (zelfs rasters byte/integer bij het afronden nar machten van n) en uitvoeren van hetzelfde gegevenstype raster. Een standaard floating point afronden van een integer raster zal het kopiëren en een waarschuwing geven.

Het voorbeeld geeft een uitvoerraster weer dat is afgerond naar veelvouden van 10

image94

Deze mogelijkheid werd ontwikkeld door Clemens Raffler

Mogelijkheid: Kopiëren/knippen/plakken van componenten van modellen toestaan

Deze mogelijkheid stelt gebruikers in staat componenten van modellen te kopiëren en te plakken, zowel in hetzelfde model als tussen verschillende modellen

image95

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Toevoegen van resultaten van Processing aan bestaande lagen toestaan

Bij het toevoegen van resultaten wordt aan gebruikers een paneel met velden getoond dat hen in staat stelt in te stellen hoe velden moeten worden geplaatst in de velden van de bestaande laag:

image96

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Maken van groepsvakken in modellen toestaan

Voegt de volgende functiies toe aan de ontwerper voor Grafische modellen maken:

  • De mogelijkheid de kleur van individuele opmerkingen in een model aan te passen
  • Maken van “Groepsvakken” in modellen, die een visuele indicatie zijn van logisch aan elkaar gekoppelde componenten van het model, toestaan (bijv. ‘Stappen voor voorbereiden van gegevens’, ‘Stappen voor berekening NDVI’, … etc). Gebruikers kunnen de kleur en titel voor groepsvakken aanpassen.
  • Direct navigeren naar groepsvakken vanuit het menu Beeld toestaan, wat helpt bij het navigeren door complexe modellen.

image97

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Processing: waarden voor invoer en uitvoer voor kinderen weergeven na uitvoeren van model in ontwerper

Een afbeelding laat dit het beste zien! Na het uitvoeren van het algoritme in de ontwerper, ziet u nu de berekende waarden voor de invoeren en uitvoer voor elke kind-algoritme:

image98

Dit is bijzonder nuttig voor het debuggen van modellen – u kunt nu een veel helderder visueel beeld zien van de waarden door het model.

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Algoritme “Log naar bestand opslaan” voor modellen toegevoegd

Dit algoritme slaat de inhoud van het log voor de uitvoering op (tot het punt in het model waar het algoritme ‘Log opslaan’ wordt uitgevoerd) naar een bestand.

Het kan worden gebruikt om automatisch het log voor debuggen op te slaan bij het uitvoeren van modellen, voor latere verwijzing en transparantie.

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

“Mogelijkheid: Direct uitvoeren van algoritmen op databasebronnen (en andere niet-schijf) toestaan zonder ze eerst in projecten te laden

Deze wijziging stelt gebruikers in staat om direct te bladeren naar niet op schijf gebaseerde bronnen voor lagen voor het verwerken van elke broninvoer voor objecten. Het maakt het mogelijk deze invoeren direct op te halen uit lagen van PostgreSQL, SQL-server, Oracle, WFS, AFS, etc zonder ze eerst te moeten laden in een project!

We maken volledig gebruik van de mogelijkheden van de QGIS browser om dit in te schakelen:

image99

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid : Geavanceerde opties per-object-bron weergeven voor invoer van Processing

Deze optie geeft geavanceerde opties per-object-bron weer, zoals:

  • De mogelijkheid om het aantal uit de bron te lezen objecten te beperken. (Nuttig bij het ontwikkelen van modellen, u kunt gemakkelijk het uitvoeren van modellen testen met een kleine subset van een invoerlaag)
  • De mogelijkheid om op een per-invoer basis de globale optie voor Processing, voor hoe ongeldige geometrieën af te handelen, te overschrijven. Nu kunt u met een gerust hart de standaard instelling voor Processing bij de conservatieve instelling “Uitvoeren van algoritme stoppen als geometrie ongeldig is” laten staan door deze gemakkelijk te kunnen overschrijven voor een bepaalde invoer!

image100

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Snappen aan raster voor modellen in ontwerper inschakelen

Deze update implementeert twee mogelijkheden voor het “snappen” van objecten in de ontwerper voor Grafische modellen maken van Processing:

  1. Gebruikers kunnen een nieuwe optie “Snappen inschakelen” in het menu Beeld inschakelen, wat er toe al leiden dat alle bewerkingen, voor verplaatsen of afmeting aanpassen van componenten, automatisch zal snappen aan rasters
  2. Na het selecteren van enkele componenten, kunnen gebruikers Bewerken -> Geselecteerde componenten aan raster snappen selecteren om handmatig slechts deze geselecteerde componenten te snappen.

Aanvullend heb ik een nuttige actie “Alles selecteren” toegevoegd voor het snel selecteren van alle componenten in een model.

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Algoritmen “Filteren type geometrie” en “Filteren op type laag” toegevoegd aan Processing

Deze update voegt twee nieuwe algoritmen toe aan Processing:

  • “Filteren op type geometrie”: Dit algoritme filtert objecten op hun type geometrie. Inkomende objecten zullen naar verschillende uitvoeren worden verwezen, gebaseerd op het feit of zij een geometrie punt, lijn of polygoon hebben. Het maakt het maken van modellen mogelijk die reageren op verschillende typen geometrie van de invoerlaag door verschillende logica toe te passen, afhankelijk van het type geometrie voor de invoer.
  • “Filteren op type laag”: Dit algoritme maakt het maken mogelijk van voorwaardelijke aftakkingen van modellen, gebaseerd op een type invoerlaag. Het maakt het bijvoorbeeld voor een model mogelijk om het feitelijke type laag van een algemene parameter “map layer” voor de invoer aan te passen, en te bepalen welke tak van het model als resultaat moet worden uitgevoerd.

Het voegt ook in de vereiste API toe om algoritmen toe te staan aftakkingen van een model te “snoeien”, gebaseerd op hun berekende resultaten. Bijvoorbeeld een model dat de nieuwe vlag FlagPruneModelBranchesBasedOnAlgorithmResults teruggeeft, zal er voor zorgen dat resterende delen van het model, die afhankelijk zijn van de uitvoer van dat algoritme, geheel worden overgeslagen ALS het algoritme niet die bepaalde uitvoer teruggeeft. (Dit is een al vooraf ingevoerde component voor een toekomstig algemeen algoritme “Voorwaardelijke aftakkingen met expressies”, en wordt ook gebruikt door “Filteren op type laag” om de stroom van het model te beheren, gebaseerd op het type invoerlaag)

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Algoritme “Geometrieën Null verwijderen” kan ook LEGE geometrieën verwijderen

Lege geometrieën bevatten geen coördinaten. Dus, net als geometrieën null, zijn lege geometrieën in de strikte betekenis geen ruimtelijke gegevens. Het algoritme Geometrieën Null verwijderen heeft nu een optie “Ook lege geometrieën verwijderen”, om het voor gebruikers gemakkelijker te maken een vectorlaag op te schonen.

image101

Dit werd mogelijk gemaakt door SwissTierras Colombia

Deze mogelijkheid werd ontwikkeld door Germán Carrillo

Mogelijkheid: Meervoudig selecteren afhandeling toegevoegd aan ontwerper Grafische modellen bouwen, interactief afmetingen aanpassen

Voegt toe:

  • De mogelijkheid om in één keer meerdere items te selecteren in de ontwerper van Grafische modellen bouwen
  • De mogelijkheid om afmetingen van individuele of meerdere items te wijzigen
  • De mogelijkheid om meerdere geselecteerde items te verwijderen
  • Verbeterde interactie voor “gereedschap” in de ontwerper van Grafische modellen bouwen, die de benadering voor de ontwerper van lay-outs volgt (bijv. alt + spatie = zoom sleepmodus, en gereedschappen voor selecteren volgen hun soortgenoten in lay-outs dus Shift+selectie voegt toe aan de selectie, Ctrl+selectie verwijdert, etc)
  • Geselecteerde items kunnen worden verplaatst met de pijltjestoetsen

Refs NRCan Contract#3000707093

Hier is hoe dat er in actie uitziet (met een bijzonder lelijk uitziend testmodel dat ik gebruik!)

image102

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Ondersteuning voor Ongedaan maken/Opnieuw toegevoegd aan de ontwerper voor Grafische modellen bouwen

Maakt QGIS meer vergevingsgezind voor gebruikers!

Refs NRCan Contract#3000707093

Werkt net zoals u zou verwachten:

image103

Merk op dat we de gehele definitie van het model in de stapel Ongedaan maken opslaan, niet slechts de betrokken wijzigingen van componenten.

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Waarden van parameter onthouden tussen uitvoeringen van ontwerper van Grafische modellen bouwen

Bij het ontwerpen van een model, zullen gebruikers gewoonlijk het model vele keren dienen uit te voeren als zij zijn structuur aanpassen.

Deze wijziging zorgt er voor dat de gebruikte parameters bij het uitvoeren van het model in de ontwerper worden onthouden en opgeslagen in het model, zodat, elke keer als u het model in de ontwerper uitvoert, u niet alle waarden voor de invoerparameters opnieuw moet instellen op die van de gewenste test.

Maakt iteratief modelontwerp ZOVEEL gemakkelijker!

Gesponsord door Alta Ehf

Bevat ook een gedeeltelijke overgang van het dialoogvenster van de ontwerper van Grafische modellen bouwen van Python naar C++, omdat C++ >> Python.

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Opmerkingen in modellen van Processing

Dit stelt gebruikers in staat opmerkingen te maken die worden verbonden aan componenten van het model (invoeren, algoritmen of uitvoeren). Opmerkingen worden weergegeven gekoppeld aan de geassocieerde component, en kunnen vrijelijk worden verplaatst binnen het model.

image104

Dit werd mogelijk gemaakt door Fisel + König

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Nieuw zelfstandig console-gereedschap voor het uitvoeren van algoritmen van Processing

Dit nieuwe gereedschap qgis_process stelt gebruikers in staat algoritmen van Processing uit te voeren (zowel ingebouwde, als ook die worden verschaft door plug-ins) direct vanuit de console.

Uitvoeren:

  • qgis_process list zal een volledig lijst van alle beschikbare algoritmen uitvoeren, gegroepeerd per provider.
  • qgis_process plugins vermeldt beschikbare en geactiveerde plug-ins die de metadata optie hasProcessingProvider hebben (alleen die plug-ins worden door het gereedschap geladen)
  • qgis_process help algid voert de Help uit en beschrijvingen voor de invoer van het gespecificeerde algoritme, bijv. qgis_process help native:centroids

qgis_process run: voert een algoritme uit. Parameters worden gespecificeerd door de syntaxis --param=value. Bijv.

qgis_process run native:centroids --INPUT="my_shapefile.shp" --OUTPUT="centroids.kml"

of

qgis_process run native:buffer --INPUT=/home/me/my.shp --DISTANCE=20 --OUTPUT=/home/me/buffered.shp

Bij het uitvoeren van een algoritme wordt een op tekst gebaseerde balk voor terugkoppeling weergegeven, en de bewerking kan worden geannuleerd met CTRL+C

Gesponsord door de Zweedse gebruikersgroep

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Nieuw type parameter voor waarden datetime (of date, of time)

Voegt een nieuw type parameter QgsProcessingParameterDateTime toe voor het afhandelen van waarden date/datetime/time.

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Nieuwe algoritmes voor laten zien van waarschuwingen en uitzonderingen vanuit modellen toegevoegd

Deze algoritmen laten ofwel een aangepaste waarschuwing in het log van Processing zien OF werpt een uitzondering op die er voor zorgt dat het uitvoeren van het model wordt beëindigd.

Een optionele voorwaardelijke expressie kan worden gespecificeerd om te beheren of de waarschuwing/uitzondering wordt opgeworpen of niet, wat logica, zoals “als de uitvoerlaag van een ander algoritme meer dan 10 objecten bevat, annuleer dan het uitvoeren van het model”, mogelijk maakt.

Gesponsord door Fisel + König

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Feature: Algoritme Cellen GeenGegevens vullen toegevoegd

In de nieuwe versie van QGIS introduceren we een nieuw algoritme voor Processing voor het vullen van cellen GeenGegevens in een raster gegevensset met een constante numerieke invoer.

Het algoritme scant een invoer raster gegevensset op cellen GeenGegevens en vult ze met het door de gebruiker gedefinieerde waarde voor vullen. Door dit te doen respecteert het algoritme het gegevenstype van het invoerraster, zodat bijv. getallen floating point zullen worden afgehandeld zoals toepasselijk is voor een raster integer. De resulterende gegevensset zal geen cellen GeenGegevens bevatten.

image105

Deze mogelijkheid werd ontwikkeld door Clemens Raffler

Mogelijkheid: Verscheidene reparaties voor Processing

  • Voltooid werk aan ondersteuning voor parameters voor bereik in algoritmen van GRASS;
  • Defecte algoritme r.series gerepareerd
  • Kleine reparaties aan r.rescale en r.rescale.eq
  • Reparatie voor gereedschap Rasteriseren
  • GRASS GIS testen opgeschoond

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: Beperkingen voor veld “template layer” in de interface van het algoritme “Refactor Fields” weergeven

Wanneer u gegevens migreert is het belangrijk om u bewust te zijn van beperkingen op doel- (alias template) lagen.

Het algoritme “Refactor Fields” accentueert nu beperkingen, en laat u zelfs meer daarover te weten komen via Help-tips.

image106

Dit werd mogelijk gemaakt door SwissTierras Colombia

Deze mogelijkheid werd ontwikkeld door Germán Carrillo

Mogelijkheid: Nieuw algoritme voor converteren naar bogen

We hebben een nieuw algoritme toegevoegd voor het converteren van gesegmenteerde geometrieën naar gebogen geometrieën.

Het algoritme beschouwt opeenvolgende punten om een boog weer te geven als zij gelijkmatig zijn gespreid en binnen een tolerantie liggen.

image107

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Opties voor toepassing en projecten

Mogelijkheid: Variabelen voor bereik project @layers, @layer_ids toegevoegd

Variabelen voor bereik project @layers, @layer_ids toegevoegd die een lijst met lagen en laag-ID’s bevatten voor alle lagen in het huidige project

Dit bootst de bestaande @map_layers, @map_layer_ids na, maar, anders dan de varianten @map, geven deze ALLE projectlagen terug, niet slechts die welke zijn geassocieerd aan de kaartinstellingen voor de huidige context.

Gesponsord door SLYR

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Gegevensproviders

Mogelijkheid: Toevoegen van attributen in het dialoogvenster Nieuwe tekenlaag toestaan

Stelt de gebruiker in staat om attributen direct toe te voegen in het dialoogvenster Nieuwe tekenlaag. Wat het meer consistent maakt met andere dialoogvensters, zoals Nieuwe Shapefile/Geopackage. image108

Het is nog steeds mogelijk om een tekenlaag te maken zonder attributen, door geen velden aan de lijst toe te voegen.

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: Maken van DBF-tabellen zonder geometrie in het dialoogvenster Nieuwe Shapefile toestaan

Staat het maken van “gewone” DBF-bestanden zonder geassocieerde geometrieën toe in het dialoogvenster Nieuwe Shapefile.

image109

Het maken van DBF-tabellen kan in sommige gevallen nuttig zijn en om programma’s van der partijen te moeten gebruiken in plaats van het rechtstreeks in QGIS te doen is onhandig. Dit maakt ook het dialoogvenster Nieuwe Shapefile meer consistent met het dialoogvenster Nieuw Geopackage, dal al toestaat dat tabellen “zonder geometrie” worden gemaakt.

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: Filteren lijst WM(T)S in dialoogvenster van bron toestaan

Voegt de mogelijkheid toe om te filteren tussen lijsten van WMS of WMTS in het dialoogvenster van de bron

WMS image110

WMTS image111

Gesponsord door de QGIS Zwitserse gebruikersgroep

Deze mogelijkheid werd ontwikkeld door Denis Rouzaud

Mogelijkheid: Vectortegels toevoegen aan dialoogvenster Databronnen beheren en menu Lagen

Voegt een nieuwe tab toe aan het dialoogvenster Databronnen beheren, die de gebruiker in staat stelt verbindingen voor vectortegels te beheren/toe te voegen, inclusief importeren/exporteren. Voegt ook een overeenkomstig item in het menu Lagen in.

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: Importeren/exporteren voor verbindingen van ArcGIS Map en FeatureServer

Ontbrekende functionaliteit voor importeren/exporteren voor verbindingen naar ArcGIS MapServer en FeatureServer toegevoegd.

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: XYZ-tegels toevoegen aan dialoogvenster Databronnen beheren en menu Lagen

Voegt een nieuwe tab toe aan het dialoogvenster Databronnen beheren, die de gebruiker in staat stelt verbindingen voor XYZ-tegels te beheren/toe te voegen. Voegt ook een overeenkomstig item in het menu Lagen in.

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: SpatiaLite transactiegroep

Implementatie voor transacties voor de eigen provider SpatiaLite.

Dit werd mogelijk gemaakt door ARPA Piemonte

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: Direct opslaan van uitvoeren naar meerdere indelingen voor databases toestaan (en andere leuke dingen)

Deze update stelt gebruikers in staat vector-uitvoeren van Processing direct op te slaan in indelingen voor meerdere databases.

Eerder konden uitvoeren alleen direct worden weggeschreven naar databases van PostgreSQL. Met deze wijziging is deze functionaliteit meer flexibel gemaakt en ondersteunt nu het direct wegschrijven naar elke provider van databases die de API voor verbindingen ondersteunt (momenteel PostgreSQL, Geopackage, SpatiaLite en SQL Server)

Uiteindelijk geeft dit de nieuwe mogelijkheid weer om uitvoer direct op te slaan naar databases van SQL Server of SpatiaLite (naast de eerdere opties voor GPKG+PostgreSQL die al bestaan)

(Zodra Oracle, DB2, … de API voor de verbindingen hebben geïmplementeerd, zullen we ook daarvoor ondersteuning voor direct wegschrijven verkrijgen)

We doen dit via een leuke in-regelige versie van de nieuwe widget “Nieuwe tabelnaam database”.

image112

Andere leuke dingen omvatten:

  • U kunt nu bestanden of mappen slepen en neerzetten vanuit de bestandsbeheerder of de QGIS browser om parameters uit te voeren om deze bestanden gemakkelijker te kunnen overschrijven (of op te slaan in de map), wat overeenkomt met het mogelijke gedrag voor invoer
  • U kunt in feite scripts schrijven die direct uitvoeren naar ELKE gegevensprovider van QGIS (inclusief Oracle en DB2)… Het is slechts dat die niet worden weergegeven in de UI omdat zij nog niet de API voor de verbindingen ondersteunen

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Aangewezen type parameter voor verbindingen van databases toegevoegd

Maakt selecteren vanuit de geregistreerde databaseverbindingen van een specifieke type database-provider mogelijk (de provider moet de API voor de verbindingen implementeren).

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: PG: weergeven vreemde tabellen

Geef vreemde tabellen weer in de browser en het dialoogvenster Databronnen selecteren.

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: PG raster geef toe te passen ingestelde filter weer

Dit zou de laatste wijziging moeten zijn voor de PostgreSQL raster gegevensprovider en geeft de ingestelde opties voor filteren weer:

  • Filter kan worden ingesteld in het dialoogvenster Databronnen (net als voor vectorlagen)
  • Filter kan worden ingesteld in het contextmenu voor de boom van de legenda (net als voor vectorlagen)
  • De renderer, het bereik en de statistieken min/max worden ook bijgewerkt als het filter wijzigt
  • Nieuwe testen voor het nieuwe gedrag

image113

Dit werd mogelijk gemaakt door ARPA Piemonte

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: PostgreSQL: sla objecten op in tabellen met gemaakte velden

Sta bijwerken/invoegen van objecten in tabellen van PostgreSQLmet gemaakte velden toe. GENERATED-kolommen is een mogelijkheid die werd geïntroduceerd in PostgreSQL 12, wat het mogelijk maakt dat kolomwaarden worden gemaakt vanuit andere kolommen uit dezelfde tabel; dit vervangt het maken van triggers om, bijvoorbeeld, automatisch een kolom met zwaartepunten of gebieden voor de polygonen in de hoofd geometriekolom te vullen en bij te houden.

Deze mogelijkheid werd ontwikkeld door José de Paula Rodrigues N. Assis

Mogelijkheid: Ondersteuning voor veldtypen Date en DateTime toegevoegd aan de providers SpatiaLite en Tekengescheiden tekst

De providers SpatiaLite en Tekengescheiden tekst ondersteunen nu de veldtypen Date en DateTime.

Deze mogelijkheid werd ontwikkeld door Mathieu Pellerin

QGIS Server

Mogelijkheid: Optie voor configuratie van QGIS_SERVER_IGNORE_BAD_LAYERS toegevoegd

Maakt het overschrijven van het standaardgedrag mogelijk in het geval van slechte lagen (om het gehele project ongeldig te maken.

Indien ingesteld op TRUE worden slechte lagen overgeslagen en het restant van het project komt beschikbaar.

Dit werd mogelijk gemaakt door Geoinformatikbüro Dassau GmbH

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: Server projectinstellingen, attribuut ‘expanded’ toegevoegd

In aanvulling op de attributen ‘visible’ en ‘mutuallyExclusive’ voegt deze update ‘expanded’ toe aan het antwoord GetProjectSettings van de server. De update maakt het voor een webcliënt mogelijk om te zien welke elementen van de laagboom zijn uitgeklapt / ingeklapt en om ze op dezelfde wijze te presenteren in de lagenlijst van de webkaart.

Deze mogelijkheid werd ontwikkeld door mhugent

Mogelijkheid: Toegevoegd DXF server export parameters NO_MTEXT en FORCE_2D

QGIS-server ondersteunt nu de nieuwe parameters NO_MTEXT en FORCE_2D om symbologie voor tekst en lijnen te beheren voor gegenereerde DXF-bestanden.

Voegt ontbrekende parameters toe aan verzoek GetDxf.

Deze mogelijkheid werd ontwikkeld door Matthias Kuhn

Mogelijkheid: WMS-project validatie

De validatie voor QGIS Server is opnieuw bekeken. Dit gereedschap is nuttig als u een project van QGIS wilt publiceren met het protocol WMS.

Voor programmeurs is de validatie nu ook aan te roepen vanuit PyQGIS, dus plug-ins kunnen het nu ook gebruiken.

Dit werd mogelijk gemaakt door 3Liz

Deze mogelijkheid werd ontwikkeld door Etienne Trimaille

Mogelijkheid: Webp

WebP is een moderne indeling voor afbeeldingen die superieure verliesloze en compressie met verlies verschaft voor afbeeldingen op het web. WebP maakt kleinere, rijkere afbeeldingen die het web sneller maakt.

WebP verliesloze afbeeldingen zijn 26% kleiner in grotte, vergeleken met PNG’s. WebP afbeeldingen met verlies zijn 25-34% kleiner dan vergelijkbare afbeeldingen JPEG op de equivalente SSIM-kwaliteitsindex.

Bron: https://developers.google.com/speed/webp

Met Webp ondersteunt QGIS server nu een indeling die kleinere bestandsgrootten verschaft voor dezelfde kwaliteit en zelfs transparantie verschaft.

Dit werd mogelijk gemaakt door OPENGIS.ch

Deze mogelijkheid werd ontwikkeld door Matthias Kuhn (OPENGIS.ch)

Plugins

Mogelijkheid: Plug-ins toestaan om aangepaste afhandeling voor “Project openen” te registreren

Deze stellen plug-ins in staat om het dialoogvenster “Project openen” uit te breiden door ondersteuning toe te voegen voor nieuwe bestandsfilters, die verschijnen in de keuzelijst voor indelingen naast het bestaande item “QGS projecten”.

Aangepaste afhandeling voor het openen van projecten krijgen dan de eerste kans bij het laden van projectbestanden.

Dit stelt plug-ins in staat de ondersteuning voor QGIS uit te breiden door geïntegreerde ondersteuning toe te voegen voor het openen van projecten van indelingen niet-QGS/QGZ, bijv. gebruikers toestaan documenten ArcGIS MXD of MapInfo WOR Workspaces te openen, direct vanuit het dialoogvenster Project openen.

Deze niet-eigen projecten zijn ook toegevoegd aan de lijst met recente projecten en Welkomstscherm, wat ze een echte eerste klas ervaring in QGIS geeft.

Gesponsord door SLYR

image114

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Gebruikers toestaan stabiele of experimentele plug-ins te installeren

Deze update verbeterd Plug-ins beheren en installeren door gebruikers toe te staan te kiezen tussen het installeren van de stabiele of de experimentele versie van een plug-in.

Dit maakt het mogelijk om pre-uitgaven van plug-ins in de opslagplaats voor power-users te testen, daarbij hen nog steeds gemakkelijk in staat te stellen terug te vallen op stabiele versies, zonder de globale optie Ook de experimentele plug-ins tonen te moeten deselecteren.

Deze wijziging maakt geen verschil voor gebruikers die de optie Ook de experimentele plug-ins tonen niet hebben geselecteerd.

image115

Dit werd mogelijk gemaakt door Zwitserse QGIS gebruikersgroep

Deze mogelijkheid werd ontwikkeld door Olivier Dalang

Programmeerbaarheid

Mogelijkheid: Ondersteuning voor toevoegen van vast te zetten widgets als tabs: addTabifyDockWidget()

Vast te zetten widgets zijn fantastisch voor het weergeven van complexe interfaces die de functionaliteit van QGIS uitbreiden.

Nu hebben zowel ontwikkelaars van de bron als van plug-ins de optie om tabs te maken van hun vast te zetten widgets bovenop bestaande. Zij kunnen zelfs kiezen op welk vast te zetten widget zij hun eigen vast te zetten widget moet verschijnen.

image116

Dit werd mogelijk gemaakt door SwissTierras Colombia

Deze mogelijkheid werd ontwikkeld door Germán Carrillo

Mogelijkheid: Wrappers van parameters voor uitvoer overzetten naar nieuwe API

Zet de wrappers van parameters voor uitvoer (doelen afvoeren, vector, raster, bestand en map) om naar de nieuwe C++ API voor dialoogvenster en Grafische modellen bouwen.

Dit opent een heel bereik van nieuwe mogelijkheden, inclusief:

  • Modellen met statisch uitvoeren voor kind-algoritmen, bijv. altijd de uitvoer van een kind-algoritme opslaan naar een laag van Geopackage of PostgreSQL
  • Modellen met op expressies gebaseerde waarden voor uitvoer voor kind-algoritmen, bijv. maken van een automatische bestandsnaam, gebaseerd op de datum van vandaag en uitvoer opslaan naar dat bestand

image117

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Resterende parameters voor invoer overzetten naar nieuwe API

Deze update zet de parameters voor de invoer Rasterband en Meerdere lagen om naar de nieuwe C++ API.

Voordelen omvatten:

  • Op expressie gebaseerde band/laaglijsten in modellen
  • In-regelige (niet-blokkerende) lijsten voor parameters voor meervoudige selectie (velden, banden, lagenlijsten, enums)
  • Opnieuw schikken van invoer voor parameters voor meerder lagen in modellen, om specifieke laagvolgorde in te stellen

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Parameters Bron object, Raster, Vector en Laag met mazen overzetten naar nieuwe API

Het is nu mogelijk om op expressie gebaseerde laagbronnen in modellen van Processing te gebruiken.

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Laag met vectortegels - deel 1

Dit is het initiële werk voor ondersteuning van vectortegels-lagen.

image118 (De rode lijnen zijn geen artefacten van het renderen, zij zijn met opzet getekend om randen van tegels weer te geven.)

Overzicht

Tot op heden bevat dit alleen wijzigingen aan de bibliotheek qgis_core.

Belangrijke aanvullingen aan de publieke API:

  • QgsVectorTileLayer - de belangrijkste klasse voor kaartlagen
  • QgsVectorTileRenderer - basisklasse voor implementaties van klasse renderer voor vectortegels
  • QgsVectorTileBasicRenderer - standaard implementatie renderer

Nieuwe private klassen (kunnen worden toegevoegd aan de publieke API indien nodig):

  • QgsVectorTileLoader - handelt ophalen van tegels van netwerk / MBTiles af
  • QgsVectorTileMVTDecoder - handelt decoderen van ruwe tegelgegveens naar objecten af
  • QgsVectorTileLayerRenderer - verzorgt het overall renderen (ophalen + decoderen + tekenen)
  • QgsVectorTileUtils - verscheidene nuttige functies

Enkele nieuwe klassen die kunnen worden gedeeld door vector- en rastertegels:

  • QgsTileXYZ - positie van een tegel in de matrixset (zoomniveau, kolom, rij)
  • QgsTileRange - rechthoekige selectie in een tegelmatrix (begin-/eindkolom en -rij)
  • QgsTileMatrix - beschrijving van een tegelmatrix (kaartbereik, zoomniveau, schaal, aantal rijen/kolommen)

(ook QgsTileMatrixSet zal later worden toegevoegd als we ook andere tegelmatrixsets dan alleen GoogleCRS84Quad ondersteunen)

Testen

U kunt een vectortegellaag laden vanuit de console voor Python, bijv.:

ds = QgsDataSourceUri() ds.setParam("type","xyz")
ds.setParam("url", "https://api.maptiler.com/tiles/v3/{z}/{x}/{y}.pbf?key=YOUR_FREE_API_KEY")
uri = bytes(ds.encodedUri()).decode('utf-8')
vtl = QgsVectorTileLayer(uri, "Vector Tiles Test")
QgsProject.instance().addMapLayer(vtl)

Het is ook mogelijk vectortegels te laden vanuit een lokaal bestand MBTiles - gebruik “mbtiles” voor “type” en gebruik voor “url” een lokaal pad (bijv. “/home/martin/x.mbtiles”).

Er is momenteel geen ondersteuning voor labelen.

Dank u wel

Heel veel dank aan alle gulle gevers die hebben bijgedragen aan de crowdfunding en dit mogelijk hebben gemaakt - https://www.lutraconsulting.co.uk/blog/2020/04/02/vectortiles-donors

Dit werd mogelijk gemaakt door QGIS gemeenschap

Deze mogelijkheid werd ontwikkeld door Lutra Consulting (Martin Dobias)

Mogelijkheid: Parameters voor bereik in Processing overzetten naar nieuwe API, vele andere verbetringen

Deze update zet uiteindelijk de parameter Bereik om naar de nieuwe C++ API, maar op weg daar naartoe wordt:

  • Het bestaande widget voor de GUI “QgsExtentGroupBox” opnieuw bijgewerkt om de kern daarvan te verplaatsen naar “QgsExtentWidget” (wat het mogelijk maakt het te gebruiken op plaatsen waar een groepsvak niet mogelijk is/ er slecht uitziet). het voegt ook een nieuwe modus “verkleind” voor de widget toe, omdat het standaard uiterlijk nogal veel plaats inneemt.
  • De widget voor de nieuwe parameter gebruikt deze algemene QgsExtentWidget, zodat we alle duplicaatcode verwijderen die eerder werd gebruikt voor de oude wrapper van Python
  • Maakt slepen en neerzetten mogelijk van projectlagen vanuit de lagenboom naar een QgsExtentWidget om het bereik automatisch in te stellen zodat het overeenkomt
  • Maakt het mogelijk QgsExtentWidget optioneel null te laten zijn
  • Maakt waarden QgsGeometry mogelijk die wordne ingesteld voor waarden van de parameter Bereik. Dit is gedaan om te helpen bij het gebruiken van parameters bereik met de modus “vooraf berekende waarde” in modellen – u kunt nu alle functies voor expressies voor geometrie gebruiken om een geometrie te berekenen en het begrenzingsvak hiervan wordt gebruikt voor de waarde van de parameter in het kind-algoritme

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Interface en API voor universele gereedschappen voor ontwikkeling/debuggen

Voegt haken voor de interface toe om plug-ins (en C++) in staat te stellen gereedschappen voor “ontwikkeling/debuggen” te registreren

Deze gereedschappen verschijnen in een nieuw venster Gereedschap Ontwikkeling/Debuggen, en verschaft een geünificeerde afhandeling en plek voor deze gereedschappen in de UI.

De bedoeling hier is dat gespecialiseerde gereedschappen voor ontwikkeling/debuggen naar deze algemene interface zullen worden verplaatst, bijv.

  • Netwerklogger
  • Stijl Eerste Hulp inspectie van lokale variabelen voor Python
  • Gereedschappen voor debuggen bij opstarten
  • Gereedschappen voor debuggen bij Lagen laden en renderen … ?

Hier is een voorbeeld demo die een gereedschap voor ontwikkeling van “Python lokalen” laat zien:

image119

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Mogelijkheid: Ondersteuning voor gegevenstype voor QgsProcessingParameterMapLayer

De definitie van geaccepteerde typen lagen voor QgsProcessingParameterMapLayer toestaan. Dit is nuttig als een algoritme kan werken met verschillende typen lagen (bijvoorbeeld punten en rasters) en vermijdt dupliceren van hetzelfde algoritme met verschillende invoer.

Dit is een verbetering in de API en is niet zichtbaar voor de grootste meerderheid van de gebruikers.

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: Typen parameter voor Processing voor databaseschema en tabelnaam toegevoegd

Vervangt het eerdere ad-hoc Python wrappers voor de widget PostGIS door juiste eerste klasse C++ toegewezen parameters voor schema’s en tabellen, met wrappers die zijn gebouwd vanuit de bron-API voor verbindingen.

Refs NRCan Contract#3000707093

Deze mogelijkheid werd ontwikkeld door: Nyall Dawson

Belangrijke reparaties

Mogelijkheid: Reparaties van problemen door Alessandro Pasotti

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
Getfeatureinfo does not show relation reference items for QGIS Server #36549 Bleek een verzoek voor het toevoegen van mogelijkheid te zijn N/B
OGR provider QgsOgrProvider::changeAttributeValues returns true on errors #36583 PR #36620 N/B
GPKG transaction groups are stored with empty second pair of the key #36525 PR #36660 PR #37157
Symbology using relations does not propagate in QGIS Server #36614 Kan niet worden gereproduceerd N/B
“Loading PostGIS raster with QGIS 3.12.3 crashes” #36689 PR #36702 niet relevant
GetFeatureInfo Fid value is different between application/json and application/vnd.ogc.gml #36262 PR #36733 PR #37158
GPKG (and spatialite) DB-level unique constraints are not supported by OGR (and spatialite) provider #36468 PR #36802 N/B
no value in the attribute form if value missing in the value map #32756 PR #36804 N/B
DB Manager does not show anymore query results #36205 PR #36823 N/B
DB Manager does not show anymore query results #36205 PR #36831 N/B
GPKG browser drag&drop not working niet gerapporteerd PR #36972 PR #37159
it is not possible to save a project in the geopackage #36832 PR #36980 N/B
It is possible to store text into a numeric field, while it shouldn’t be, using the Date/Time edit widget #36715 #36715 N/B
Feature creation very slow when using joins #36167 PR #36866, PR #36963 N/B
QGIS Server: WFS Request does not use SrsName on the geometry #36398 PR #36926, PR #37071 niet kritisch
Unable to delete a stored geopackage connection from browser #36930 PR #36937 PR #37166
Constraints: unique constraint not correctly evaluated when 0 #36962 PR #36967 N/B
PyQgis: OriginJoin fields arte not present into QgsLayerVector QgsFields container for GeoPackage layers #36977 Kan niet worden gereproduceerd N/B
Joined tables cannot be edited even if the “editable join layer” option is checked #36934 Kan niet worden gereproduceerd/In behandeling N/B
Removal of unused ‘allowMethod’ from qgisservice/qgisserverapi #36163 PR #36997 N/B
Omogenize window title #35761 PR #36998 N/B
Labeling: data-defined alignment grey-out activation issue #37003 PR #37006 PR #37167
QGIS reports “no layers” in GeoPackage when geopackage directory is write protected #36574 PR #37018 niet kritisch (alleen UX)
Joined tables cannot be edited even if the “editable join layer” option is checked #36934 zal niet gerepareerd worden N/B
Postgis Timestamps from query in DB Manager displayed as `PyQT5.QTCore.QDateTime(2020, 3, 17 #35140 PR #37042 N/B
Wrong image preview and image preview size in form #33682 PR #37093 PR #37168
can’t change value in vertex editor if “locale” settings use commas as decimal separator #29682 PR #37135 PR #37169
Identifying a WMS layer with format “feature” crashes QGIS #29443 PR #37171 PR #37210
Attempting to create a new feature in Spatialite with transaction group and NOT NULL constraint fails #37236 zal niet gerepareerd worden N/B
Using “Add feature” to create feature and child feature with transaction group causes foreign key error #37222 PR #37249 niet kritisch
Vectorlayer from spatialite missing features and inconsistent feature count #29264 PR #37277 NOG TE DOEN

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Alessandro Pasotti

Mogelijkheid: Reparaties van problemen door Loïc Bartoletti

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
Fix error when vector layer has Z #32016 PR #36553 PR #36595
Fix rectangle from 3 points #35043, #35671 PR #36523 PR #36560
Allow to search qmlplugindump in different paths N/B PR #36513 N/B
Fix the absence of words in the advanced configuration widget PR #35643#issuecomment-610215386 PR #36511 N/B
Fix interpolation on split geometry PR #36514 #33489 N/B

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Loïc Bartoletti

Mogelijkheid: Reparaties van problemen door Even Rouault

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
Wrong interpretation of EPSG code from a PRJ file in QGIS-dev (proj v7.1.0) #36111 PROJ PR 2240 N/B: probleem van PROJ
QGIS crashes when adding file to geopackage -> layer -> field(BLOB) #30210 PR #36722 PR #36737
Bad error message on WFS connection fail #29866 PR #36717 PR #36735
QGIS crashes during map re-rendering after CRS switch #29672 Kan niet worden gereproduceerd N/B
QGIS crashes when “open directory” is selected from the recent projects contextual menu #31630 PR #36738 PR #36755
Problem reprojecting rasters in 54019 and 54042 CRSs #35512 PROJ PR 2243 N/B: probleem van PROJ
WFS Provider WARNING - Cannot create temporary SpatiaLite cache when using flatpak install #36545 PR #36745 N/B
WFS Transaction operation using GetCapabilities URI #34307 PR #36746 N/B
QGis 3.10.2 crashes when displaying two PostGIS raster layers #34456
N/B
QGIS 3.4.10 crashes - Python #31304 al gerepareerd in master PR #36751
WMS provider expects SERVICE=WMTS keyword in uppercase to detect WMTS #36659 PR #36752 PR #36766
WCS DescribeCoverage response origin always empty #36504 PR #36754 PR #36781
Extent wrong if layer contains point at 0,0 #33823 Geen probleem van QGIS. Gerepareerd in GDAL 3.1 N/B
Projection not recognised from Mapinfo converstion #34471 PR #36758 PR #36783
QGIS crashes/freezes when adding a large CSV file as delimited text layer #36392 PR #36778 PR #36810
QGIS 3.12 unknown CRS or Select Transformation #36837 GDAL Commit 68133b8 GDAL Commit 6ae7f60
BIGTIFF error is not obvious in processing log #36867 GDAL Commit cfc8e61 GDAL Commit fb88e3c

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Even Rouault

Mogelijkheid: Reparaties van problemen door Paul Blottiere

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
Fix segfault when adding a layer Mailing list PR #36910 N/B
Fix signal connection Niet gerapporteerd probleem PR #35836 N/B
Update the API to export a legend in JSON Niet gerapporteerd probleem binding PR #36370 N/B
Core dump if vector tile layer (file) becomes unavailable #36821 Kan niet worden gereproduceerd N/B
Crash on project open when mapcanvas extents = nan #35899 Kan niet worden gereproduceerd N/B
Using some functions in raster calulator crashes QGIS #35583 PR #37273 N/B
Auxiliary storage not usable in non editable layer #30376 Al gerepareerd. Gesloten. N/B
Fix compilation with GCC 10, Qt/PyQt 5.15.0 and SIP 4.19.23 #37072 PR #37116 PR #37250

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Paul Blottiere

Mogelijkheid: Reparaties van problemen door Julien Cabieces

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
Reproducible crash using QgsMapCanvas.items() with Oracle layers #33791 PR #36240 PR #36246
Line breaks are ignored in the user expression help panel #36191 PR #36249 PR #36387
“Edit user expression” does not allow to rename the user expression #36192 PR #36349 N/B
Cannot change labels of raster symbology classes #36172 PR #36376 PR #36533
Crash when layer not available #33300 Kan niet worden gereproduceerd N/B
Select by expression returns erroneous results with integer field division for shapefiles #35449 PR #2531 N/B
Using concat(field1, field2) concatenates 0 instead of empty string (‘’) if any of the fields is NULL #36112 PR #36521 PR #36529
Stuck at Recent Project window when opening blank file in 3.10.3 #34809 Kan niet worden gereproduceerd N/B
QGIS crashes on getting items of mapCanvas scene if features are identified #34457 PR #36439 PR #36450
sorting on a column that has a value relation is inconsistent #36114 PR #36776 PR #36887
Missing points (depending on canvas scale) in virtual layer based on sqlite file #36054 PR #36792 PR #36718
Project is modified as soon as you move cursor on canvas #36796 PR #36797 PR #36718
Set filter applied to wrong “version” of table when multiple geometry types #34982 PR #36801PR #36718  

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Julien Cabieces

Mogelijkheid: Reparaties van problemen door Bertrand Rix

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
Vertex tool override global snapping parameters #36229 PR #36231 N/B
QGIS crashes with QgsGeometry method on empty collection #36142 PR #36351 N/B
Selective masking: phantom lines on dark background #34650 PR #36697 N/B
Selective masking: issue with mask opacity #34947 PR #36697 N/B

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Bertrand Rix

Mogelijkheid: Reparaties van problemen door Sebastien Peillet

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
[Oracle]Error on save geometries because wrong default values #34482 #34482 PR #36769 N/B
Invalid query for default value of date column of an oracle layer #32401 PR #36769 N/B
Fields missing in Visibility by expression for a group in drag/drop form #35196 PR #36824 N/B
Project custom scales are displayed with scientific notation #36859 PR #36860 N/B
Oracle : tables are listed once for Polygons and once for MultiPolygons but both show all geometries #32521 PR #34358 N/B
Can’t set min/max values to decimal in raster symbology with QGis Linux versions #33859 PR #37136 N/B

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Sebastien Peillet

Mogelijkheid: Reparaties van problemen door Alexander Bruy

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
Copy of truncated variable copies truncated text, not original #30641 PR #36554 PR #36576
Turning Multi edit mode off does not go back to table view #25099 PR #36541 PR #36630
GRASS processing: missing parameter name #36520 PR #36644 PR #36690
Fix redirection of the stdout results to temporary files in GRASS Processing algorithms niet gerapporteerd PR #36618 PR #36684
Fix GRASS r.tileset algorithm niet gerapporteerd PR #36645 PR #36695
QgsRasterTerrainAnalysisPlugin: check QgsRelief::processRaster() returned value #17452 PR #36731 PR #36740
Histogram for graduated style in layer properties disappears when the layer properties window is too small #25197 PR #36732 PR #36749
Exporting image with atlas option “Save World file” lead to incorrect world file naming (text after dot is missing) #34523 PR #36742 PR #36748
“Reloading QGIS” from the crash report dialog fails to reopen the project #25532 PR #36736 PR #36750
Exporting raster style to SLD only works when output file has .sld suffix #35944 PR #36774 PR #36795
[Style Manager] Missing Favorites category in the “select by group” dialog from “Export symbols” #27315 PR #36793 niet kritisch
TIN Interpolation - output raster format and size issues #31970 PR #36822 PR #36844
Layer panel: “Edit Symbol” does nothing if no symbol defined for a rule (in rule-based rendering) #23048 PR #36954 niet kritisch
Attributes shift in the Service area algorithm results niet gerapporteerd PR #37074, PR #37097 N/B
Processing testing framework does not apply rounding to values casted to numbers niet gerapporteerd PR #37234 N/B

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Alexander Bruy

Mogelijkheid: Reparaties van problemen door Nyall Dawson

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
Fix leak in mesh 3d renderer niet gerapporteerd Commit 4b5a63d N/B
Fix hang when rendering symbol previews using Meters in Map Unit sizes #28690 Commit 7c6286f Nee – te indringend
Fix font in CSS code editor niet gerapporteerd Commit 63cb42c niet kritisch
Fix rendering of geometry generator expressions which return geometry collection results #35356 Commit be281c49 Nee – te indringend
[processing] Correctly expose date time inputs (and a bunch of others) as inputs for in-model expressions #37219 Commit 281356a N/B
Fix all Qt 5.14 deprecation warnings niet gerapporteerd Commit 3717adc Nee – te indringend
[symbology] When rendering a multipart geometry, ensure that geometry generator symbol is only rendered once, instead of once per part #23730 Commit d98fe9f Nee – te indringend
[layout] Make “show feature count” button apply to all selected indexes #37194 Commit 671cebc Nee – te indringend
Fix for container “show as group box” setting is lost when closing layer properties dialog #37205 Commit 803f507 N/B
Use even more forceful language to dissuade users from creating custom projections using Proj strings #37204 Commit 7ec4968 Nee – wijziging tekenreeks
Use “markers” terminology consistently in centroid fill widget #37106 Commit 2596b6b Nee – wijziging tekenreeks
Fixes to numbered list handling in dox/PyQGIS API niet gerapporteerd Commit 74400c7 Nee
Fix cross references in PyQGIS docs niet gerapporteerd Commit 81a9db9 Nee
[layouts] Fix attribute table sort order combined with feature filter results in empty tables #36341 Commit 24897ab N/B
Fix callout rendering to rotated labels #36681 Commit 2bb4aad N/B
Fix grass output handling in Processing models #36379 Commit ef19911  
Fix vector datasets incorrectly simplify to rectangles in some CRS views #36898 Commit 47fba10 Nee – te indringend
Fix list item formatting in PyQGIS docs niet gerapporteerd Commit 84ec481 N/B
[processing] Fix manual entry of extent values in widget #36787 Commit ccc34c7 N/B
[decorations] Use a proper ellipsoidal length calculation when calculating the size of the scalebar decoration #28407 Commit af19cea PR 36718 Commit a91309d
Fix collecting Triangle geometry types after tesselation #36638 Commit df46fba Nee – te indringend
Fix writing triangle geometry type via QgsVectorFileWriter fails #36638 Commit e0c03f9 Nee – te indringend
Fix degradation in Tesselation results #37077 Commit 61e7a5f N/B
Fix layer subset string is ignored when OGR refuses to accept a compiled feature request expression #37073 Commit b5b4221 PR 36718 Commit f486cf6
[legends] Fix corrupted data defined legend rendering in layout designer #36765 Commit 8d00ae8 Nee – te indringend
Avoid some QGIS startup warnings niet gerapporteerd Commit 013f682 N/B
Place 3d tab in vector properties at the correct position #35010 Commit ce9f5194 N/B
Fix 3d tab is not activated when reopening vector layer properties #35011 Commit 3c0ecbf N/B
[labeling] Fix incorrect label placement after moving an ‘unplaced’ label niet gerapporteerd Commit cbfb7f4 PR 36718 Commit 9189dec
Don’t block creation of new geopackages in vector save as dialog niet gerapporteerd Commit 8ccd127 N/B
[browser] Refine refreshConnections method to avoid triggering a full refresh of ALL browser content #37007 Commit a9d6b04 Nee – te indringend
[3d] When showing edges, data defined polygon height was not accounted for niet gerapporteerd Commit e516231 N/B
Fixes for “Show all” labeling mode niet gerapporteerd Commit 2b91bd0 N/B
[3d] Fix reprojection of features shows no features #34824 Commit 62bd026 N/B
[processing] Add metadata setting for file destination parameters to avoid file overwrite confirmation prompt #37011 Commit e81af2c N/B
Avoid incorrectly antialiasing rendering of certain objects (such as map labels) when not wanted #36964 Commit bab83844 Nee – te indringend
Ensure that fields required by marker symbol backgrounds for labels are fetched when rendering #36944 Commit 8fb8e45 Nee – te indringend
“Fix “”zoom”” and “”flash”” features buttons have no effect when opening filter mode in attribute form” #34506 Commit 6b2795 N/B
Avoid corrupted project thumbnail images in some circumstances niet gerapporteerd Commit f404e6e N/B
Auto focus search box when opening “add layer to legend” dialog #36905 Commit 019e494 niet kritisch
[processing] Set correct output layer type for Point to Layer algorithm #36941 Commit 7ee85cd N/B
“Limit scope of Ctrl+C shortcut for copy features to canvas and for python console to console widget” #27035 (many others too) Commit 873716c Nee – te indringend
Remember layout designer window positions #36907 Commit 97d31d0 niet kritisch
Fix crash when zooming in too far to labels #36346 Commit 3aa5e56 Commit a22635b
[processing] Allow parent layer to be specified for field mapping inputs in models #26493 Commit b8d4a39 Nee – te indringend
Fix placement of message bar ‘clear all’ menu arrow on hidpi screens niet gerapporteerd Commit 8a9975b niet kritisch
Always refresh plugin repositories when manually triggered by user #34351 Commit 98603b7 PR 36718 Commit 0fcf6dc
[3d] Expose 3d algorithms provider to Python #36661 Commit 1f835df Nee – te indringend
[symbology] Don’t force rasterized output when exporting point pattern fills #16100 Commit 23396b7c Nee – te indringend
[layouts] Don’t refresh the map canvas multiple times during atlas exports #30144 Commit 57519e9 niet kritisch
[processing] Fix double-evaluation of warp output parameter #30095 Commit adeca2f  
Fix incorrect warning message when turning off atlas preview niet gerapporteerd Commit 3b0af960 N/B
Speed up message bar operations when many messages are shown #29698 Commit 5dd29f0 Nee – te indringend
Fix oriented minimum bounding box calculation is wrong in some cases #36632 Commit 97d0988 PR 36718 Commit 68c6a0e
Ensure symbol opacity is always ignored for selections #27859 Commit 4de6a53 PR 36718 Commit 99eb710
Fix random sort order of symbols in Symbol Export dialog #20572 Commit 987310f PR 36718 Commit bfa6058
Allow clearing heatmap weighting field #20256 Commit 3961fa2 PR 36718 Commit d2600d6
Flag SAGA ‘Merge Layers’ algorithm as having known issues #36375 Commit f676c821 N/B
Workaround odd upstream Qt issue where a painter with a semi-transparent brush with no solid pattern incorrectly applies the brush opacity to the pen when exporting to printer devices #36580 Commit 38c8218 PR 36718 Commit a562b67
Improve plugin watchdog message and UX niet gerapporteerd Commit 150b373 Nee – te indringend
“[layouts] Warn when previewing an atlas and a feature with no geometry is encountered, when one or more maps are set to be driven by atlas feature” #36556 Commit 6ce84d2 Nee – te indringend
Avoid proj ‘object is not a concatenated operation’ warnings niet gerapporteerd Commit 6baa209  
“Fix memory layers lose CRS definition if it does not have an authority associated with it” #36241 Commit e23a49a PR 36718 Commit c9350eb
Implement spatial index detection for OGR provider #30530 Commit f20801a PR 36718 Commit 536906e
Fix incorrect dialog title for raster layer properties #35510 Commit 2099261 PR 36718 Commit e809f48
Don’t try to identify CRSes created just for ellipsoid definitions niet gerapporteerd Commit 15b318b Nee – te indringend

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Nyall Dawson

Mogelijkheid: Reparaties van problemen door Denis Rouzaud

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
allow sorting attribute table by field not listed in the table #25671 PR #36236 N/B
fix layer tree dependencies (showinf symbols and main layer) niet gerapporteerd PR #37000 N/B
fix Expression editor: syntax check fails if table is empty #37100 PR #37137 N/B
fix setting of feature in expression preview widget #37214 PR #37221 N/B
Freeze when showing attribute table of WFS layer #37224 nog niet gerepareerd N/B
Lookups in tables with more than 100 entries show wrong value in Relation Reference form parts #37266 PR #37280 PR #37286

Deze mogelijkheid werd mogelijk gemaakt door QGIS.ORG (door donoren en dragende leden)

Deze mogelijkheid werd ontwikkeld door Denis Rouzaud

Mogelijkheid: Reparaties van problemen door Audun Ellertsen

Titel probleem URL issues.qgis.org (indien gerapporteerd) URL Commit (Github) 3.10 backport commit (GitHub)
SpatiaLite support for importing layers with binary fields #36705 PR #36744 N/B
PostGIS support for importing layers with binary fields #36705 PR #36708 PR #36720

Dit werd mogelijk gemaakt door Kongsberg Digital

Deze mogelijkheid werd ontwikkeld door Audun Ellertsen