Dynamische attributen
Bereken oppervlakte, maak labels of reken met tijd
Dynamische attributen
Dynamische attributen zijn samengestelde attributen die op basis van bestaande objecten en attribuutwaarden berekeningen uitvoeren. Dit kan bijvoorbeeld gebruikt worden voor een combinate van twee attributen om te labelen, het berekenen van een oppervlakte of lengte of berekeningen met tijd. In deze handleiding wordt uitgelegd hoe dit ingesteld dient te worden.
Dynamisch attribuut toevoegen aan dataset
- Ga naar de gewenste dataset.
- Open het tabblad 'Attributes'.
- Klik op 'Add' om een attribuut toe te voegen.
Er wordt nu een modal geopend.
- Geef een attribuutnaam op.
- Kies een alias.
- Kies voor het Type 'Computed'.
- In het veld 'ComputedQuery' kan een berekening worden opgevoerd. In het volgende hoofdstuk geven we een aantal voorbeelden.
- Met de knop 'Test Query' kan in de ingevulde berekening worden getest, er wordt een willekeurig resultaat getoond als de berekening geldig is.
- Klik op 'Create' om het attribuut toe te voegen.
Het dynamische attribuut wordt on-the-fly berekend. Is de dataset bijvoorbeeld muteerbaar? Dan wordt na elke wijziging het dynamisch attribuut opnieuw berekend.
Voorbeeld berekeningen
Een aantal voorbeelden welke gebruikt kunnen worden voor dynamische attributen.
Let op! Bij berekeningen zoals optellen/aftrekken en delen/vermenigvuldigen dienen numerieke (type 'Numeric' of 'Double') attributen gebruikt te worden. Attributen van het type 'Integer' werken hierbij niet.
Berekening | Query |
---|---|
Oppervlakte | ST_Area(geom) |
Lengte lijnsegmenten | ST_Length(geom) |
Omtrek berekenen | ST_Perimeter(geom) |
X-coördinaat | ST_X(geom) |
Y-coördinaat | ST_Y(geom) |
Bereken bounding box | ST_extent(geom) |
Afronden | ROUND(attribuutnaam of berekening) |
Attributen optellen/aftrekken (numeriek) | "attribuutnaam" + "attribuutnaam" - "attribuutnaam" |
Attributen delen/vermenigvuldigen (numeriek) | "attribuutnaam" / "attribuutnaam" * "attribuutnaam" |
Attributen combineren, witruimte toevoegen en statisch label toevoegen | attribuutnaam || ' ' || attribuutnaam || ' ' || 'label' |
Leeftijd in dagen berekenen op basis van datum | AGE(attribuutnaam) |
Naast bovenstaande mogelijkheden kan je op basis van standaard SQL, en aangevuld met PostGIS-functies uitgebreide query's opbouwen. Het kan echter wel zijn dat een complexere query kan leiden tot fouten of problemen op je dataset, dus controleer goed de query die je instelt!
Hergebruik van dynamische attributen
Met dynamische attributen is het mogelijk complexe query's op te bouwen op basis van veel verschillende veldwaardes. Het is echter niet mogelijk om gebruik te maken van eerder aangemaakte dynamische attributen in een ander dynamisch attribuut. Je kan natuurlijk wel het deel van de query dat je wilt hergebruiken overnemen in een ander dynamisch attribuut met een grotere of uitgebreidere query.
Updated 5 months ago