14.3. Lijst van functies

De functies, operatoren en variabelen, die beschikbaar zijn in QGIS, zijn hieronder vermeld, gegroepeerd in categorieën.

14.3.1. Functies Samenvoegen

Deze groep bevat functies die waarden bij elkaar optellen van lagen en velden.

14.3.1.1. aggregate

Geeft een samengestelde waarde terug die is berekend met behulp van objecten uit een andere laag.

Syntaxis

aggregate(layer, aggregate, expression, [filter], [concatenator=’’], [order_by])

[] markeert optionele argumenten

Argumenten

  • layer - een tekenreeks die ofwel een laagnaam of een laag-ID vertegenwoordigt

  • aggregate - een tekenreeks die overeenkomt met de te berekenen samenstelling. Geldige opties zijn:

    • count

    • count_distinct

    • count_missing

    • min

    • max

    • sum

    • mean

    • median

    • stdev

    • stdevsample

    • range

    • minority

    • majority

    • q1: eerste kwartiel

    • q3: derde kwartiel

    • iqr: interkwartiele bereik

    • min_length: minimale lengte tekenreeks

    • max_length: maximale lengte tekenreeks

    • concatenate: tekenreeksen samenvoegen met een teken voor samenvoegen

    • concatenate_unique: unieke tekenreeksen samenvoegen met een teken voor samenvoegen

    • collect: een samengestelde meerdelige geometrie maken

    • array_agg: een array met samengestelde waarden maken

  • expression - subexpressie of veldnaam om samen te stellen

  • filter - optionele filterexpressie om de te gebruiken objecten voor het berekenen van de samenstelling te beperken. Velden en geometrie zijn van de objecten op de samengevoegde laag. Toegang tot het bronobject kan worden verkregen met de variabele @parent.

  • concatenator - optionele tekenreeks om te gebruiken voor het samenstellen van de waarden bij ‘concatenate’

  • filter - optionele filterexpressie om de te gebruiken objecten voor het berekenen van de samenstelling te sorteren. Velden en geometrie zijn van de objecten op de samengevoegde laag. Standaard zullen de objecten worden teruggegeven in een niet gespecificeerde volgorde.

Voorbeelden

  • aggregate(layer:='rail_stations',aggregate:='sum',expression:="passengers") → som van alle waarden uit het veld passengers van de laag rail_stations

  • aggregate('rail_stations','sum', "passengers"/7) → berekent een dagelijks gemiddelde van “passengers” door het veld “passengers” te delen door 7, vóór de waarden bij elkaar op te tellen

  • aggregate(layer:='rail_stations',aggregate:='sum',expression:="passengers",filter:="class">3) → telt alle waarden van het veld “passengers”, alleen van de objecten waarvan het attribuut “class” groter is dan 3, bij elkaar op

  • aggregate(layer:='rail_stations',aggregate:='concatenate', expression:="name", concatenator:=',') → kommagescheiden lijst van het veld name voor alle objecten van de laag rail_stations

  • aggregate(layer:='countries', aggregate:='max', expression:="code", filter:=intersects( $geometry, geometry(@parent) ) ) → De landcode van een kruisend land van de laag ‘countries’

  • aggregate(layer:='rail_stations',aggregate:='sum',expression:="passengers",filter:=contains( @atlas_geometry, $geometry ) ) → som van alle waarden uit het veld passengers van de laag rail_stations in het huidige object van atlas

  • aggregate(layer:='rail_stations', aggregate:='collect', expression:=centroid($geometry), filter:="region_name" = attribute(@parent,'name') ) → stelt de zwaartepunt geometrieën van de rail_stations uit de huidige regio in als huidig object

14.3.1.2. array_agg

Geeft een array van samengestelde waarden terug uit een veld of expressie.

Syntaxis

array_agg(expression, [group_by], [filter], [order_by])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

  • filter - optionele filterexpressie om te gebruiken om objecten te sorteren voor het berekenen van de samenstelling. Standaard zullen de objecten worden teruggegeven in een niet gespecificeerde volgorde.

Voorbeelden

  • array_agg("name",group_by:="state") → lijst van waarden van name, gegroepeerd op het veld state

14.3.1.3. collect

Geeft de geometrie met meerdere delen terug uit samengestelde geometrieën uit een expressie

Syntaxis

collect(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - geometrie expressie om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • collect( $geometry ) → meerdelige geometrie van samengestelde geometrieën

  • collect( centroid($geometry), group_by:="region", filter:= "use" = 'civilian' ) → samengestelde zwaartepunten van de burgerlijke objecten, gebaseerd op de waarde van hun region

14.3.1.4. concatenate

Geeft alle samengevoegde tekenreeksen terug uit een veld of expressie, verbonden door een scheidingsteken.

Syntaxis

concatenate(expression, [group_by], [filter], [concatenator], [order_by])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

  • concatenator - optionele tekenreeks om waarden samen te voegen. Standaard leeg.

  • filter - optionele filterexpressie om te gebruiken om objecten te sorteren voor het berekenen van de samenstelling. Standaard zullen de objecten worden teruggegeven in een niet gespecificeerde volgorde.

Voorbeelden

  • concatenate("town_name",group_by:="state",concatenator:=',') → kommagescheiden lijst van town_names, gegroepeerd op het veld state

14.3.1.5. concatenate_unique

Geeft alle unieke tekenreeksen terug uit een veld of expressie, verbonden door een scheidingsteken.

Syntaxis

concatenate_unique(expression, [group_by], [filter], [concatenator], [order_by])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

  • concatenator - optionele tekenreeks om waarden samen te voegen. Standaard leeg.

  • filter - optionele filterexpressie om te gebruiken om objecten te sorteren voor het berekenen van de samenstelling. Standaard zullen de objecten worden teruggegeven in een niet gespecificeerde volgorde.

Voorbeelden

  • concatenate_unique("town_name",group_by:="state",concatenator:=',') → kommagescheiden lijst van unieke town_names, gegroepeerd op het veld state

14.3.1.6. count

Geeft de telling van het aantal overeenkomende objecten terug.

Syntaxis

count(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • count("stations",group_by:="state") → aantal stations, gegroepeerd op het veld state

14.3.1.7. count_distinct

Geeft de telling van de afzonderlijke waarden terug.

Syntaxis

count_distinct(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • count_distinct("stations",group_by:="state") → aantal afzonderlijke stations, gegroepeerd op het veld state

14.3.1.8. count_missing

Geeft de telling van de ontbrekende (NULL)-waarden terug.

Syntaxis

count_missing(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • count_missing("stations",group_by:="state") → aantal ontbrekende of (NULL)-waarden van station, gegroepeerd op het veld state

14.3.1.9. iqr

Geeft het berekende bereik voor het interkwartiel terug uit een veld of expressie.

Syntaxis

iqr(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • iqr("population",group_by:="state") → interkwartiel bereik van de waarden van population, gegroepeerd op het veld state

14.3.1.10. majority

Geeft de samengestelde meerderheid van waarden (meest terugkerende waarde) terug uit een veld of expressie.

Syntaxis

majority(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • majority("class",group_by:="state") → meest voorkomende waarde voor class, gegroepeerd op het veld state

14.3.1.11. max_length

Geeft de maximale lengte van tekenreeksen terug uit een veld of expressie.

Syntaxis

max_length(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • max_length("town_name",group_by:="state") → maximale lengte van town_name, gegroepeerd op het veld state

14.3.1.12. maximum

Geeft de samengestelde maximale waarde terug uit een veld of expressie.

Syntaxis

maximum(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • maximum("population",group_by:="state") → maximale waarde voor population, gegroepeerd op het veld state

14.3.1.13. mean

Geeft de samengestelde gemiddelde waarde terug uit een veld of expressie.

Syntaxis

mean(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • mean("population",group_by:="state") → gemiddelde waarde voor population, gegroepeerd op het veld state

14.3.1.14. median

Geeft de samengestelde waarde mediaan terug uit een veld of expressie.

Syntaxis

median(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • median("population",group_by:="state") → mediaan van de waarde population, gegroepeerd op het veld state

14.3.1.15. min_length

Geeft de minimale lengte van tekenreeksen terug uit een veld of expressie.

Syntaxis

min_length(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • min_length("town_name",group_by:="state") → minimale lengte van town_name, gegroepeerd op het veld state

14.3.1.16. minimum

Geeft de samengestelde minimale waarde terug uit een veld of expressie.

Syntaxis

minimum(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • minimum("population",group_by:="state") → minimale waarde voor population, gegroepeerd op het veld state

14.3.1.17. minority

Geeft de samengestelde minderheid van waarden (minst terugkerende waarde) terug uit een veld of expressie.

Syntaxis

minority(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • minority("class",group_by:="state") → minst voorkomende waarde voor class, gegroepeerd op het veld state

14.3.1.18. q1

Geeft het berekende eerste kwartiel terug uit een veld of expressie.

Syntaxis

q1(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • q1("population",group_by:="state") → eerste kwartiel van de waarde population, gegroepeerd op het veld state

14.3.1.19. q3

Geeft het berekende derde kwartiel terug uit een veld of expressie.

Syntaxis

q3(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • q3("population",group_by:="state") → derde kwartiel van waarde population, gegroepeerd op het veld state

14.3.1.20. range

Geeft het samengestelde bereik van waarden (maximum - minimum) terug uit een veld of expressie.

Syntaxis

range(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • range("population",group_by:="state") → bereik van waarden van population, gegroepeerd op het veld state

14.3.1.21. relation_aggregate

Geeft een berekende samengestelde waarde terug met behulp van alle overeenkomende kind-objecten uit een laag-relatie.

Syntaxis

relation_aggregate(relation, aggregate, expression, [concatenator=’’], [order_by])

[] markeert optionele argumenten

Argumenten

  • relation - een tekenreeks die een relatie-ID vertegenwoordigt

  • aggregate - een tekenreeks die overeenkomt met de te berekenen samenstelling. Geldige opties zijn:

    • count

    • count_distinct

    • count_missing

    • min

    • max

    • sum

    • mean

    • median

    • stdev

    • stdevsample

    • range

    • minority

    • majority

    • q1: eerste kwartiel

    • q3: derde kwartiel

    • iqr: interkwartiele bereik

    • min_length: minimale lengte tekenreeks

    • max_length: maximale lengte tekenreeks

    • concatenate: tekenreeksen samenvoegen met een teken voor samenvoegen

    • concatenate_unique: unieke tekenreeksen samenvoegen met een teken voor samenvoegen

    • collect: een samengestelde meerdelige geometrie maken

    • array_agg: een array met samengestelde waarden maken

  • expression - subexpressie of veldnaam om samen te stellen

  • concatenator - optionele tekenreeks om te gebruiken voor het samenstellen van de waarden bij ‘concatenate’

  • filter - optionele expressie om de te gebruiken objecten voor het berekenen van de samenstelling te sorteren. Velden en geometrie zijn van de objecten op de samengevoegde laag. Standaard zullen de objecten worden teruggegeven in een niet gespecificeerde volgorde.

Voorbeelden

  • relation_aggregate(relation:='my_relation',aggregate:='mean',expression:="passengers") → gemiddelde waarde van alle overeenkomende kind-objecten met behulp van de relatie ‘my_relation’

  • relation_aggregate('my_relation','sum', "passengers"/7) → som van het veld passengers, gedeeld door 7, voor alle overeenkomende kind-objecten met behulp van de relatie ‘my_relation’

  • relation_aggregate('my_relation','concatenate', "towns", concatenator:=',') → kommagescheiden lijst van het veld towns voor alle overeenkomende kind-objecten met behulp van de relatie ‘my_relation’

  • relation_aggregate('my_relation','array_agg', "id") → array van het veld id van alle overeenkomende kind-objecten met behulp van de relatie ‘my_relation’

Lees verder: Een tot veel- of veel-tot-veel-relaties maken

14.3.1.22. stdev

Geeft de samengestelde waarde voor standaardafwijking terug uit een veld of expressie.

Syntaxis

stdev(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • stdev("population",group_by:="state") → standaardafwijking van de waarde population, gegroepeerd op het veld state

14.3.1.23. sum

Geeft de samengestelde opgetelde waarde terug uit een veld of expressie.

Syntaxis

sum(expression, [group_by], [filter])

[] markeert optionele argumenten

Argumenten

  • expression - subexpressie of veld om samen te stellen

  • group_by - optionele expressie om te gebruiken om de berekeningen voor de samenstelling te groeperen

  • filter - optionele expressie om te gebruiken om objecten te filteren bij het berekenen van de samenstelling

Voorbeelden

  • sum("population",group_by:="state") → opgetelde waarde van population, gegroepeerd op het veld state

14.3.2. Functies voor array

Deze groep bevat functies voor expressies voor het maken en manipuleren van arrays (ook wel bekend als de datastructuur ‘list’). De volgorde van waarden binnen de array is belangrijk, in tegenstelling tot de gegevensstructuur van de ‘kaart’, waar de volgorde van paren sleutels-waarden niet relevant is en waarden worden geïdentificeerd door hun sleutels.

14.3.2.1. array

Geeft een array terug die alle waarden bevat die werden doorgegeven als parameter.

Syntaxis

array(value1, value2, …)

Argumenten

  • value - een waarde

Voorbeelden

  • array(2,10) → [ 2, 10 ]

14.3.2.2. array_all

Geeft true terug als een array alle waarden van een opgegeven array bevat.

Syntaxis

array_all(array_a, array_b)

Argumenten

  • array_a - een array

  • array_b - de te doorzoeken array met waarden

Voorbeelden

  • array_all(array(1,2,3),array(2,3)) → true

  • array_all(array(1,2,3),array(1,2,4)) → false

14.3.2.3. array_append

Geeft een array terug met de opgegeven waarde toegevoegd aan het einde.

Syntaxis

array_append(array, value)

Argumenten

  • array - een array

  • value - de toe te voegen waarde

Voorbeelden

  • array_append(array(1,2,3),4) → [ 1, 2, 3, 4 ]

14.3.2.4. array_cat

Geeft een array terug die alle opgegeven arrays samengevoegd bevat.

Syntaxis

array_cat(array1, array2, …)

Argumenten

  • array - een array

Voorbeelden

  • array_cat(array(1,2),array(2,3)) → [ 1, 2, 2, 3 ]

14.3.2.5. array_contains

Geeft true terug als een array de opgegeven waarde bevat.

Syntaxis

array_contains(array, value)

Argumenten

  • array - een array

  • value - de op te zoeken waarde

Voorbeelden

  • array_contains(array(1,2,3),2) → true

14.3.2.6. array_distinct

Geeft een array terug die alle afzonderlijke waarden van de opgegeven array bevat.

Syntaxis

array_distinct(array)

Argumenten

  • array - een array

Voorbeelden

  • array_distinct(array(1,2,3,2,1)) → [ 1, 2, 3 ]

14.3.2.7. array_filter

Geeft een array terug met alleen de items waarvoor de expressie naar TRUE evalueert.

Syntaxis

array_filter(array, expression)

Argumenten

  • array - een array

  • expression - een voor elk item te evalueren expressie. De variabele @element zal worden vervangen door de huidige waarde.

Voorbeelden

  • array_filter(array(1,2,3),@element < 3) → [ 1, 2 ]

14.3.2.8. array_find

Geeft de index (0 voor de eerste) terug van een waarde binnen een array. Geeft -1 terug als de waarde niet wordt gevonden.

Syntaxis

array_find(array, value)

Argumenten

  • array - een array

  • value - de op te zoeken waarde

Voorbeelden

  • array_find(array(1,2,3),2) → 1

14.3.2.9. array_first

Geeft de eerste waarde uit een array terug.

Syntaxis

array_first(array)

Argumenten

  • array - een array

Voorbeelden

  • array_first(array('a','b','c')) → ‘a’

14.3.2.10. array_foreach

Geeft een array terug waar de opgegeven expressie voor elk item is geëvalueerd.

Syntaxis

array_foreach(array, expression)

Argumenten

  • array - een array

  • expression - een voor elk item te evalueren expressie. De variabele @element zal worden vervangen door de huidige waarde.

Voorbeelden

  • array_foreach(array('a','b','c'),upper(@element)) → [ ‘A’, ‘B’, ‘C’ ]

  • array_foreach(array(1,2,3),@element + 10) → [ 11, 12, 13 ]

14.3.2.11. array_get

Geeft de n-de waarde (0 voor de eerste) terug uit een array.

Syntaxis

array_get(array, index)

Argumenten

  • array - een array

  • index - de op te halen index (0-gebaseerd)

Voorbeelden

  • array_get(array('a','b','c'),1) → ‘b’

14.3.2.12. array_insert

Geeft een array terug met de opgegeven waarde toegevoegd op de opgegeven positie.

Syntaxis

array_insert(array, pos, value)

Argumenten

  • array - een array

  • pos - de positie waarop moet worden toegevoegd (0-gebaseerd)

  • value - de toe te voegen waarde

Voorbeelden

  • array_insert(array(1,2,3),1,100) → [ 1, 100, 2, 3 ]

14.3.2.13. array_intersect

Geeft true terug als tenminste één element van array1 bestaat in array2.

Syntaxis

array_intersect(array1, array2)

Argumenten

  • array1 - een array

  • array2 - een andere array

Voorbeelden

  • array_intersect(array(1,2,3,4),array(4,0,2,5)) → true

14.3.2.14. array_last

Geeft de laatste waarde uit een array terug.

Syntaxis

array_last(array)

Argumenten

  • array - een array

Voorbeelden

  • array_last(array('a','b','c')) → ‘c’

14.3.2.15. array_length

Geeft het aantal elementen in een array terug.

Syntaxis

array_length(array)

Argumenten

  • array - een array

Voorbeelden

  • array_length(array(1,2,3)) → 3

14.3.2.16. array_prepend

Geeft een array terug met de opgegeven waarde toegevoegd aan het begin.

Syntaxis

array_prepend(array, value)

Argumenten

  • array - een array

  • value - de toe te voegen waarde

Voorbeelden

  • array_prepend(array(1,2,3),0) → [ 0, 1, 2, 3 ]

14.3.2.17. array_remove_all

Geeft een array terug waaruit alle items met de opgegeven waarde zijn verwijderd.

Syntaxis

array_remove_all(array, value)

Argumenten

  • array - een array

  • value - de te verwijderen waarde

Voorbeelden

  • array_remove_all(array('a','b','c','b'),'b') → [ ‘a’, ‘c’ ]

14.3.2.18. array_remove_at

Geeft een array terug waaruit de opgegeven index is verwijderd.

Syntaxis

array_remove_at(array, pos)

Argumenten

  • array - een array

  • pos - de te verwijderen positie (0-gebaseerd)

Voorbeelden

  • array_remove_at(array(1,2,3),1) → [ 1, 3 ]

14.3.2.19. array_reverse

Geeft een array terug van de opgegeven array met de waarden in omgekeerde volgorde.

Syntaxis

array_reverse(array)

Argumenten

  • array - een array

Voorbeelden

  • array_reverse(array(2,4,0,10)) → [ 10, 0, 4, 2 ]

14.3.2.20. array_slice

Geeft een deel van de array terug. Het deel wordt gedefinieerd door de argumenten start_pos en end_pos.

Syntaxis

array_slice(array, start_pos, end_pos)

Argumenten

  • array - een array

  • start_pos - de index van de beginpositie van het deel (0-gebaseerd). De index start_pos is opgenomen in het deel. Wanneer u een negatieve start_pos gebruikt, wordt de index geteld vanaf het einde van de lijst (-1-gebaseerd).

  • end_pos - de index van de eindpositie van het deel (0-gebaseerd). De index end_pos is opgenomen in het deel. Wanneer u een negatieve end_pos gebruikt, wordt de index geteld vanaf het einde van de lijst (-1-gebaseerd).

Voorbeelden

  • array_slice(array(1,2,3,4,5),0,3) → [ 1, 2, 3, 4 ]

  • array_slice(array(1,2,3,4,5),0,-1) → [ 1, 2, 3, 4, 5 ]

  • array_slice(array(1,2,3,4,5),-5,-1) → [ 1, 2, 3, 4, 5 ]

  • array_slice(array(1,2,3,4,5),0,0) → [ 1 ]

  • array_slice(array(1,2,3,4,5),-2,-1) → [ 4, 5 ]

  • array_slice(array(1,2,3,4,5),-1,-1) → [ 5 ]

  • array_slice(array('Dufour','Valmiera','Chugiak','Brighton'),1,2) → [ ‘Valmiera’, ‘Chugiak’ ]

  • array_slice(array('Dufour','Valmiera','Chugiak','Brighton'),-2,-1) → [ ‘Chugiak’, ‘Brighton’ ]

14.3.2.21. array_sort

Geeft de opgegeven array terug met gesorteerde elementen.

Syntaxis

array_sort(array, [ascending=true])

[] markeert optionele argumenten

Argumenten

  • array - een array

  • ascending - stel deze parameter in op false om de array in aflopende volgorde te sorteren

Voorbeelden

  • array_sort(array(3,2,1)) → [ 1, 2, 3 ]

14.3.2.22. array_to_string

Voegt elementen van een array samen tot een tekenreeks, gescheiden door een scheidingsteken en een optionele tekenreeks gebruikend voor lege waarden.

Syntaxis

array_to_string(array, [delimiter=’,’], [empty_value=’’])

[] markeert optionele argumenten

Argumenten

  • array - de invoerarray

  • delimiter - het tekenreeks scheidingsteken dat moet worden gebruikt voor het scheiden van elementen van de array

  • empty_value - de optionele tekenreeks die moet worden gebruikt als vervanging voor lege (nul lengte) overeenkomsten

Voorbeelden

  • array_to_string(array('1','2','3')) → ‘1,2,3’

  • array_to_string(array(1,2,3),'-') → ‘1-2-3’

  • array_to_string(array('1','','3'),',','0') → ‘1,0,3’

14.3.2.23. generate_series

Maakt een array die een reeks nummers bevat.

Syntaxis

generate_series(start, stop, [step=1])

[] markeert optionele argumenten

Argumenten

  • start - eerste waarde van de reeks

  • stop - waarde die de reeks beëindigt als die wordt bereikt

  • step - waarde die wordt gebruikt als stap tussen de waarden

Voorbeelden

  • generate_series(1,5) → [ 1, 2, 3, 4, 5 ]

  • generate_series(5,1,-1) → [ 5, 4, 3, 2, 1 ]

14.3.2.24. regexp_matches

Geeft een array terug van alle opgevangen tekenreeksen die zijn gevangen door vang-groepen, in de volgorde waarin de groepen zelf voorkomen in de opgegeven reguliere expressie voor een tekenreeks.

Syntaxis

regexp_matches(string, regex, [empty_value=’’])

[] markeert optionele argumenten

Argumenten

  • string - de tekenreeks waaruit groepen moeten worden gevangen vanuit een reguliere expressie

  • regex - de reguliere expressie die wordt gebruikt voor het vangen van groepen

  • empty_value - de optionele tekenreeks die moet worden gebruikt als vervanging voor lege (nul lengte) overeenkomsten

Voorbeelden

  • regexp_matches('QGIS=>rocks','(.*)=>(.*)') → [ ‘QGIS’, ‘rocks’ ]

  • regexp_matches('key=>','(.*)=>(.*)','empty value') → [ ‘key’, ‘empty value’ ]

14.3.2.25. string_to_array

Splitst een tekenreeks in een array met het opgegeven scheidingsteken en de optionele tekenreeks voor lege waarden.

Syntaxis

string_to_array(string, [delimiter=’,’], [empty_value=’’])

[] markeert optionele argumenten

Argumenten

  • string - de tekenreeks voor de invoer

  • delimiter - het scheidingsteken voor de tekenreeks, gebruikt om de tekenreeks voor de invoer te splitsen

  • empty_value - de optionele tekenreeks die moet worden gebruikt als vervanging voor lege (nul lengte) overeenkomsten

Voorbeelden

  • string_to_array('1,2,3',',') → [ ‘1’, ‘2’, ‘3’ ]

  • string_to_array('1,,3',',','0') → [ ‘1’, ‘0’, ‘3’ ]

14.3.3. Kleurfuncties

Deze groep bevat functies waarmee u kleuren kunt bewerken.

14.3.3.1. color_cmyk

Geeft een kleur terug in de weergave van een tekenreeks, gebaseerd op de componenten cyan, magenta, yellow en black

Syntaxis

color_cmyk(cyan, magenta, yellow, black)

Argumenten

  • cyan - component cyaan van de kleur, als een percentage waarde integer tussen 0 tot en met 100

  • magenta - component magenta van de kleur, als een percentage waarde integer tussen 0 tot en met 100

  • yellow - component geel van de kleur, als een percentage waarde integer tussen 0 tot en met 100

  • black - component zwart van de kleur, als een percentage waarde integer tussen 0 tot en met 100

Voorbeelden

  • color_cmyk(100,50,0,10) → ‘0,115,230’

14.3.3.2. color_cmyka

Geeft een kleur terug in de weergave van een tekenreeks, gebaseerd op de componenten cyan, magenta, yellow, black en alfa (transparantie)

Syntaxis

color_cmyka(cyan, magenta, yellow, black, alpha)

Argumenten

  • cyan - component cyaan van de kleur, als een percentage waarde integer tussen 0 tot en met 100

  • magenta - component magenta van de kleur, als een percentage waarde integer tussen 0 tot en met 100

  • yellow - component geel van de kleur, als een percentage waarde integer tussen 0 tot en met 100

  • black - component zwart van de kleur, als een percentage waarde integer tussen 0 tot en met 100

  • alpha - component alfa als een waarde integer tussen 0 (compleet transparant) tot en met 255 (ondoorzichtig).

Voorbeelden

  • color_cmyk(100,50,0,10,200) → ‘0,115,230,200’

14.3.3.3. color_grayscale_average

Past een filter grijswaarden toe en geeft een weergave van een tekenreeks terug uit een opgegeven kleur.

Syntaxis

color_grayscale_average(color)

Argumenten

  • color - een tekenreeks voor een kleur

Voorbeelden

  • color_grayscale_average('255,100,50') → ‘135,135,135,255’

14.3.3.4. color_hsl

Geeft een kleur terug in de weergave van een tekenreeks, gebaseerd op de attributen tint, verzadiging en helderheid ervan.

Syntaxis

color_hsl(hue, saturation, lightness)

Argumenten

  • hue - tint van de kleur, als een waarde integer tussen 0 tot en met 360

  • saturation - percentage verzadiging van de kleur, als een waarde integer tussen 0 tot en met 100

  • lightness - percentage helderheid van de kleur, als een waarde integer tussen 0 tot en met 100

Voorbeelden

  • color_hsl(100,50,70) → ‘166,217,140’

14.3.3.5. color_hsla

Geeft een kleur terug in de weergave van een tekenreeks, gebaseerd op de attributen tint, verzadiging, helderheid en alfa (transparantie)

Syntaxis

color_hsla(hue, saturation, lightness, alpha)

Argumenten

  • hue - tint van de kleur, als een waarde integer tussen 0 tot en met 360

  • saturation - percentage verzadiging van de kleur, als een waarde integer tussen 0 tot en met 100

  • lightness - percentage helderheid van de kleur, als een waarde integer tussen 0 tot en met 100

  • alpha - component alfa als een waarde integer tussen 0 (compleet transparant) tot en met 255 (ondoorzichtig).

Voorbeelden

  • color_hsla(100,50,70,200) → ‘166,217,140,200’

14.3.3.6. color_hsv

Geeft een kleur terug in de weergave van een tekenreeks, gebaseerd op de attributen tint, verzadiging en waarde ervan.

Syntaxis

color_hsv(hue, saturation, value)

Argumenten

  • hue - tint van de kleur, als een waarde integer tussen 0 tot en met 360

  • saturation - percentage verzadiging van de kleur, als een waarde integer tussen 0 tot en met 100

  • value - percentage waarde van de kleur, als een waarde integer tussen 0 tot en met 100

Voorbeelden

  • color_hsv(40,100,100) → ‘255,170,0’

14.3.3.7. color_hsva

Geeft een kleur terug in de weergave van een tekenreeks, gebaseerd op de attributen tint, verzadiging, waarde en alfa (transparantie) ervan.

Syntaxis

color_hsva(hue, saturation, value, alpha)

Argumenten

  • hue - tint van de kleur, als een waarde integer tussen 0 tot en met 360

  • saturation - percentage verzadiging van de kleur, als een waarde integer tussen 0 tot en met 100

  • value - percentage waarde van de kleur, als een waarde integer tussen 0 tot en met 100

  • alpha - component alfa als een waarde integer tussen 0 (compleet transparant) tot en met 255 (ondoorzichtig)

Voorbeelden

  • color_hsva(40,100,100,200) → ‘255,170,0,200’

14.3.3.8. color_mix_rgb

Geeft een tekenreeks terug die een kleur weergeeft die de waarden rood, groen, blauw en alfa van de twee opgegeven kleuren mengt, gebaseerd op een opgegeven verhouding.

Syntaxis

color_mix_rgb(color1, color2, ratio)

Argumenten

  • color1 - een tekenreeks voor een kleur

  • color2 - een tekenreeks voor een kleur

  • ratio - een verhouding

Voorbeelden

  • color_mix_rgb('0,0,0','255,255,255',0.5) → ‘127,127,127,255’

14.3.3.9. color_part

Geeft een specifieke component uit een tekenreeks voor een kleur terug, bijv, de rode component of alfa-component

Syntaxis

color_part(color, component)

Argumenten

  • color - een tekenreeks voor een kleur

  • component - een tekenreeks die correspondeert met de terug te geven kleurcomponent. Geldige opties zijn:

    • red: RGB rode component (0-255)

    • green: RGB groene component (0-255)

    • blue: RGB blauwe component (0-255)

    • alpha: alfa (transparantie) waarde (0-255)

    • hue: HSV tint (0-360)

    • saturation: HSV verzadiging (0-100)

    • value: HSV waarde (0-100)

    • hsl_hue: HSL tint (0-360)

    • hsl_saturation: HSL verzadiging (0-100)

    • lightness: HSL helderheid (0-100)

    • cyan: CMYK cyaan component (0-100)

    • magenta: CMYK magenta component (0-100)

    • yellow: CMYK gele component (0-100)

    • black: CMYK zwarte component (0-100)

Voorbeelden

  • color_part('200,10,30','green') → 10

14.3.3.10. color_rgb

Geeft een kleur terug in de weergave van een tekenreeks, gebaseerd op de componenten rood, groen en blauw.

Syntaxis

color_rgb(red, green, blue)

Argumenten

  • red - rode component als een waarde integer tussen 0 tot en met 255

  • green - groene component als een waarde integer tussen 0 tot en met 255

  • blue - blauwe component als een waarde integer tussen 0 tot en met 255

Voorbeelden

  • color_rgb(255,127,0) → ‘255,127,0’

14.3.3.11. color_rgba

Geeft een kleur terug in de weergave van een tekenreeks, gebaseerd op de componenten rood, groen en blauw en alfa (transparantie).

Syntaxis

color_rgba(red, green, blue, alpha)

Argumenten

  • red - rode component als een waarde integer tussen 0 tot en met 255

  • green - groene component als een waarde integer tussen 0 tot en met 255

  • blue - blauwe component als een waarde integer tussen 0 tot en met 255

  • alpha - component alfa als een waarde integer tussen 0 (compleet transparant) tot en met 255 (ondoorzichtig).

Voorbeelden

  • color_rgba(255,127,0,200) → ‘255,127,0,200’

14.3.3.12. create_ramp

Geeft een balk kleurverloop terug uit een kaart met tekenreeksen voor kleur en stappen.

Syntaxis

create_ramp(map, [discrete=false])

[] markeert optionele argumenten

Argumenten

  • map - een kaart met tekenreeksen voor kleur en stappen

  • discrete - stel deze parameter in op true om een balk met afzonderlijke kleuren te maken

Voorbeelden

  • ramp_color(create_ramp(map(0,'0,0,0',1,'255,0,0')),1) → ‘255,0,0,255’

14.3.3.13. darker

Geeft een donkere (of lichtere) kleurenreeks terug

Syntaxis

darker(color, factor)

Argumenten

  • color - een tekenreeks voor een kleur

  • factor - een integer die correspondeert met de factor voor het donkerder maken;

    • als de factor groter is dan 100 geeft deze functie een donkerder kleur terug (bijv., instellen van de factor op 200 geeft een kleur terug die de helft van de helderheid is);

    • als de factor kleiner is dan 100 is de teruggegeven kleur lichter, maar voor dat doel wordt dan het gebruiken van de functie lighter() aanbevolen;

    • als de factor 0 of negatief is, is de teruggegeven waarde niet gespecificeerd.

Voorbeelden

  • darker('200,10,30', 200) → ‘100,5,15,255’

Lees verder: lighter

14.3.3.14. lighter

Geeft een lichtere (of donkerder) kleurenreeks terug

Syntaxis

lighter(color, factor)

Argumenten

  • color - een tekenreeks voor een kleur

  • factor - een integer die correspondeert met de factor voor het lichter maken:

    • als de factor groter is dan 100 geeft deze functie een lichtere kleur terug (bijv., instellen van de factor op 150 geeft een kleur terug die 50% helderder is);

    • als de factor kleiner is dan 100 is de teruggegeven kleur donkerder, maar voor dat doel wordt dan het gebruiken van de functie darker() aanbevolen;

    • als de factor 0 of negatief is, is de teruggegeven waarde niet gespecificeerd.

Voorbeelden

  • lighter('200,10,30', 200) → ‘255,158,168,255’

Lees verder: darker

14.3.3.15. project_color

Geeft een kleur terug uit het kleurenschema van het project.

Syntaxis

project_color(name)

Argumenten

  • name - de naam van een kleur

Voorbeelden

  • project_color('Logo color') → ‘20,140,50’

Lees verder: setting project colors

14.3.3.16. ramp_color

Geeft een kleur vanuit een kleurenbalk terug in de weergave van een tekenreeks.

Variant Opgeslagen balk

Geeft een kleur vanuit een opgeslagen kleurenbalk terug in de weergave van een tekenreeks.

Syntaxis

ramp_color(ramp_name, value)

Argumenten

  • ramp_name - de naam van de kleurenbalk als een tekenreeks, bijvoorbeeld ‘Spectral’

  • value - de positie op de balk om de kleur te selecteren als een getal real tussen 0 en 1

Voorbeelden

  • ramp_color('Spectral',0.3) → ‘253,190,115,255’

Notitie

De beschikbare kleurenbalken variëren tussen installaties van QGIS. Deze functie zou niet het verwachte resultaat kunnen geven als u uw project verplaatst tussen installaties van QGIS.

Variant Expressie gemaakte balk

Geeft een tekenreeks terug vanuit een met een expressie gemaakte balk.

Syntaxis

ramp_color(ramp, value)

Argumenten

  • ramp - de kleurenbalk

  • value - de positie op de balk om de kleur te selecteren als een getal real tussen 0 en 1

Voorbeelden

  • ramp_color(create_ramp(map(0,'0,0,0',1,'255,0,0')),1) → ‘255,0,0,255’

Lees verder: Een kleurverloop instellen, De sneltoets voor keuzelijst Kleurverloop

14.3.3.17. set_color_part

Stelt een specifieke kleurcomponent in voor een tekenreeks voor een kleur, bijv, de rode component of alfa-component.

Syntaxis

set_color_part(color, component, value)

Argumenten

  • color - een tekenreeks voor een kleur

  • component - een tekenreeks die correspondeert met de in te stellen kleurcomponent. Geldige opties zijn:

    • red: RGB rode component (0-255)

    • green: RGB groene component (0-255)

    • blue: RGB blauwe component (0-255)

    • alpha: alfa (transparantie) waarde (0-255)

    • hue: HSV tint (0-360)

    • saturation: HSV verzadiging (0-100)

    • value: HSV waarde (0-100)

    • hsl_hue: HSL tint (0-360)

    • hsl_saturation: HSL verzadiging (0-100)

    • lightness: HSL helderheid (0-100)

    • cyan: CMYK cyaan component (0-100)

    • magenta: CMYK magenta component (0-100)

    • yellow: CMYK gele component (0-100)

    • black: CMYK zwarte component (0-100)

  • value - nieuwe waarde voor de kleurcomponent, rekening houdende met de bovenstaande bereiken

Voorbeelden

  • set_color_part('200,10,30','green',50) → ‘200,50,30,255’

14.3.4. Functies Voorwaarden

Deze groep bevat functies waarmee controles van voorwaarden kunnen worden opgenomen in een expressie.

14.3.4.1. CASE

CASE wordt gebruikt om een reeks voorwaarden te evalueren en een resultaat terug te geven voor de eerste voorwaarde waaraan wordt voldaan. De voorwaarden worden in een reeks geëvalueerd, en als een voorwaarde waar is, stopt de evaluatie, en het corresponderende resultaat wordt teruggegeven. Als geen van de voorwaarden waar is, wordt de waarde van de clausule ELSE teruggegeven. Verder, als er geen clausule ELSE is ingesteld en er niet aan de voorwaarden wordt voldaan, wordt NULL teruggegeven.

CASE

WHEN voorwaarde THEN resultaat

[ …n ]

[ ELSE resultaat ]

END

[] markeert optionele argumenten

Argumenten

  • WHEN condition - Een expressie voor een voorwaarde om te evalueren

  • THEN result - Als condition evalueert naar True dan wordt result geëvalueerd en teruggegeven.

  • THEN result - Als geen van bovenstaande voorwaarden evalueert naar True dan wordt result geëvalueerd en teruggegeven.

Voorbeelden

  • CASE WHEN "name" IS NULL THEN 'None' END → Geeft de tekenreeks ‘None’ terug als het veld “name” NULL is

  • CASE WHEN $area > 10000 THEN 'Big property' WHEN $area > 5000 THEN 'Medium property' ELSE 'Small property' END → Geeft de tekenreeks ‘Big property’ terug als het gebied groter is dan 10000, ‘Medium property’ als het gebied tussen 5000 en 10000 groot is, en ‘Small property’ voor andere

14.3.4.2. coalesce

Geeft de eerste waarde terug die niet NULL is uit de lijst van de expressie.

Deze functie mag elk aantal argumenten hebben.

Syntaxis

coalesce(expression1, expression2, …)

Argumenten

  • expression - elke geldige expressie of waarde, ongeacht het type.

Voorbeelden

  • coalesce(NULL, 2) → 2

  • coalesce(NULL, 2, 3) → 2

  • coalesce(7, NULL, 3*2) → 7

  • coalesce("fieldA", "fallbackField", 'ERROR') → waarde van fieldA als die niet NULL is, anders de waarde van “fallbackField” of de tekenreeks ‘ERROR’ als beide NULL zijn

14.3.4.3. if

Test een voorwaarde en geeft een verschillend resultaat terug, afhankelijk van de controle van de voorwaarde.

Syntaxis

if(condition, result_when_true, result_when_false)

Argumenten

  • condition - de voorwaarde die moet worden gecontroleerd

  • result_when_true - het resultat zal wordne teruggegeven als de voorwaarde true is of een andere waarde die niet converteert naar false.

  • result_when_false - het resultaat dat zal worden teruggegeven als de voorwaarde false is of een andere waarde die converteert naar false, zoals 0 of ‘’. NULL zal ook worden geconverteerd naar false.

Voorbeelden

  • if( 1+1=2, 'Yes', 'No' ) → ‘Yes’

  • if( 1+1=3, 'Yes', 'No' ) → ‘No’

  • if( 5 > 3, 1, 0) → 1

  • if( '', 'It is true (not empty)', 'It is false (empty)' ) → ‘It is false (empty)’

  • if( ' ', 'It is true (not empty)', 'It is false (empty)' ) → ‘It is true (not empty)’

  • if( 0, 'One', 'Zero' ) → ‘Zero’

  • if( 10, 'One', 'Zero' ) → ‘One’

14.3.4.4. nullif

Geeft een waarde NULL terug als value1 gelijk is aan value2, anders geeft het value1 terug. Dit kan worden gebruikt om voorwaardelijk waarden door NULL te vervangen.

Syntaxis

nullif(waarde1, waarde2)

Argumenten

  • value1 - De waarde die zou moeten worden gebruikt of worden vervangen door NULL.

  • value2 - De controlewaarde die het vervangen van NULL activeert.

Voorbeelden

  • nullif('(none)', '(none)') → NULL

  • nullif('text', '(none)') → ‘text’

  • nullif("name", '') → NULL, als name een lege tekenreeks is (of al NULL), de waarde van name in elke ander geval.

14.3.4.5. regexp_match

Geeft de eerste overeenkomende positie van een reguliere expressie binnen een tekenreeks van Unicode terug, of 0 als de subtekenreeks niet wordt gevonden.

Syntaxis

regexp_match(input_string, regex)

Argumenten

  • input_string - de tekenreeks die moet worden getest tegen de reguliere expressie

  • regex - De reguliere expressie die getest moet worden. Tekens backslash moeten dubbel worden geëscaped (bijv. “\\s” om overeen te komen met een teken voor witruimte of “\\b” om overeen te komen met een woordgrens)

Voorbeelden

  • regexp_match('QGIS ROCKS','\\sROCKS') → 5

  • regexp_match('Budač','udač\\b') → 2

14.3.4.6. try

Probeert een expressie en geeft de waarde ervan terug indien zonder fouten. Als de expressie een fout teruggeeft zal een alternatieve waarde worden teruggegeven, indien opgegeven, anders zal de functie NULL teruggeven.

Syntaxis

try(expression, [alternative])

[] markeert optionele argumenten

Argumenten

  • expression - de expressie die zou moeten worden uitgevoerd

  • alternative - het resultaat dat zal worden teruggegeven als de expressie een fout teruggeeft.

Voorbeelden

  • try( to_int( '1' ), 0 ) → 1

  • try( to_int( 'a' ), 0 ) → 0

  • try( to_date( 'invalid_date' ) ) → NULL

14.3.5. Functies Conversies

Deze groep bevat functies om een gegevenstype te converteren naar een ander type (bijv string van/naar integer, binary van/naar string, string naar date, …).

14.3.5.1. from_base64

Decodeert een tekenreeks vanuit de codering Base64 naar een binaire waarde.

Syntaxis

from_base64(string)

Argumenten

  • string - de te decoderen tekenreeks

Voorbeelden

  • from_base64('UUdJUw==') → ‘QGIS’

14.3.5.2. hash

Maakt een hash vanuit een tekenreeks met een opgegeven methode. Één byte (8 bits) wordt weergegeven door twee hex ‘’getallen’’, dus ‘md4’ (16 bytes) produceert een 16 * 2 = 32 tekens lange teksttekenreeks en ‘keccak_512’ (64 bytes) produceert een 64 * 2 = 128 tekens lange hex-tekenreeks.

Syntaxis

hash(string, method)

Argumenten

  • string - de tekenreeks waaruit de hash moet worden gemaakt

  • method - De methode voor het maken van de hash, waaronder ‘md4’, ‘md5’, ‘sha1’, ‘sha224’, ‘sha384’, ‘sha512’, ‘sha3_224’, ‘sha3_256’, ‘sha3_384’, ‘sha3_512’, ‘keccak_224’, ‘keccak_256’, ‘keccak_384’, ‘keccak_512’

Voorbeelden

  • hash('QGIS', 'md4') → ‘c0fc71c241cdebb6e888cbac0e2b68eb’

  • hash('QGIS', 'md5') → ‘57470aaa9e22adaefac7f5f342f1c6da’

  • hash('QGIS', 'sha1') → ‘f87cfb2b74cdd5867db913237024e7001e62b114’

  • hash('QGIS', 'sha224') → ‘4093a619ada631c770f44bc643ead18fb393b93d6a6af1861fcfece0’

  • hash('QGIS', 'sha256') → ‘eb045cba7a797aaa06ac58830846e40c8e8c780bc0676d3393605fae50c05309’

  • hash('QGIS', 'sha384') → ‘91c1de038cc3d09fdd512e99f9dd9922efadc39ed21d3922e69a4305cc25506033aee388e554b78714c8734f9cd7e610’

  • hash('QGIS', 'sha512') → ‘c2c092f2ab743bf8edbeb6d028a745f30fc720408465ed369421f0a4e20fa5e27f0c90ad72d3f1d836eaa5d25cd39897d4cf77e19984668ef58da6e3159f18ac’

  • hash('QGIS', 'sha3_224') → ‘467f49a5039e7280d5d42fd433e80d203439e338eaabd701f0d6c17d’

  • hash('QGIS', 'sha3_256') → ‘540f7354b6b8a6e735f2845250f15f4f3ba4f666c55574d9e9354575de0e980f’

  • hash('QGIS', 'sha3_384') → ‘96052da1e77679e9a65f60d7ead961b287977823144786386eb43647b0901fd8516fa6f1b9d243fb3f28775e6dde6107’

  • hash('QGIS', 'sha3_512') → ‘900d079dc69761da113980253aa8ac0414a8bd6d09879a916228f8743707c4758051c98445d6b8945ec854ff90655005e02aceb0a2ffc6a0ebf818745d665349’

  • hash('QGIS', 'keccak_224') → ‘5b0ce6acef8b0a121d4ac4f3eaa8503c799ad4e26a3392d1fb201478’

  • hash('QGIS', 'keccak_256') → ‘991c520aa6815392de24087f61b2ae0fd56abbfeee4a8ca019c1011d327c577e’

  • hash('QGIS', 'keccak_384') → ‘c57a3aed9d856fa04e5eeee9b62b6e027cca81ba574116d3cc1f0d48a1ef9e5886ff463ea8d0fac772ee473bf92f810d’

14.3.5.3. md5

Maakt een md5-hash uit een tekenreeks.

Syntaxis

md5(string)

Argumenten

  • string - de tekenreeks waaruit de hash moet worden gemaakt

Voorbeelden

  • md5('QGIS') → ‘57470aaa9e22adaefac7f5f342f1c6da’

14.3.5.4. sha256

Maakt een sha256-hash uit een tekenreeks.

Syntaxis

sha256(string)

Argumenten

  • string - de tekenreeks waaruit de hash moet worden gemaakt

Voorbeelden

  • sha256('QGIS') → ‘eb045cba7a797aaa06ac58830846e40c8e8c780bc0676d3393605fae50c05309’

14.3.5.5. to_base64

Codeert een binaire waarde naar een tekenreeks, met behulp van de codering Base64.

Syntaxis

to_base64(value)

Argumenten

  • value - de te coderen binaire waarde

Voorbeelden

  • to_base64('QGIS') → ‘UUdJUw==’

14.3.5.6. to_date

Converteert een tekenreeks naar een object date. Een optionele tekenreeks voor de indeling mag worden opgegeven om de tekenreeks te parsen; bekijk QDate::fromString voor aanvullende documentatie over de indeling.

Syntaxis

to_date(string, [format], [language])

[] markeert optionele argumenten

Argumenten

  • string - tekenreeks die een datumwaarde weergeeft

  • format - indeling die moet worden gebruikt om de tekenreeks naar een date te converteren

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om de tekenreeks naar een date te converteren

Voorbeelden

  • to_date('2012-05-04') → 2012-05-04

  • to_date('June 29, 2019','MMMM d, yyyy') → 2019-06-29

  • to_date('29 juin, 2019','d MMMM, yyyy','fr') → 2019-06-29

14.3.5.7. to_datetime

Converteert een tekenreeks naar een object datetime. Een optionele tekenreeks voor de indeling mag worden opgegeven om de tekenreeks te parsen; bekijk QDate::fromString en QTime::fromString voor aanvullende documentatie over de indeling.

Syntaxis

to_datetime(string, [format], [language])

[] markeert optionele argumenten

Argumenten

  • string - tekenreeks die een datum-/tijdwaarde weergeeft

  • format - indeling die moet worden gebruikt om de tekenreeks naar een datetime te converteren

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om de tekenreeks naar een datetime te converteren

Voorbeelden

  • to_datetime('2012-05-04 12:50:00') → 2012-05-04T12:50:00

  • to_datetime('June 29, 2019 @ 12:34','MMMM d, yyyy @ HH:mm') → 2019-06-29T12:34

  • to_datetime('29 juin, 2019 @ 12:34','d MMMM, yyyy @ HH:mm','fr') → 2019-06-29T12:34

14.3.5.8. to_decimal

Converteert een coördinaat graden, minuten, seconden naar zijn decimale equivalent.

Syntaxis

to_decimal(value)

Argumenten

  • value - Een tekenreeks graden, minuten, seconden.

Voorbeelden

  • to_decimal('6°21\'16.445') → 6.3545680555

14.3.5.9. to_dm

Converteert een coördinaat naar graden, minuten.

Syntaxis

to_dm(coordinate, axis, precision, [formatting=])

[] markeert optionele argumenten

Argumenten

  • coordinate - Een waarde latitude of longitude.

  • axis - De as van het coördinaat. Ofwel ‘x’ of ‘y’.

  • precision - Aantal decimalen.

  • formatting - Bepaalt het type indeling. Toegestane waarden zijn NULL (standaard), ‘aligned’ of ‘suffix’.

Voorbeelden

  • to_dm(6.1545681, 'x', 3) → 6°9.274′

  • to_dm(6.1545681, 'y', 4, 'aligned') → 6°09.2741′N

  • to_dm(6.1545681, 'y', 4, 'suffix') → 6°9.2741′N

14.3.5.10. to_dms

Converteert een coördinaat naar graden, minuten, seconden.

Syntaxis

to_dms(coordinate, axis, precision, [formatting=])

[] markeert optionele argumenten

Argumenten

  • coordinate - Een waarde latitude of longitude.

  • axis - De as van het coördinaat. Ofwel ‘x’ of ‘y’.

  • precision - Aantal decimalen.

  • formatting - Bepaalt het type indeling. Toegestane waarden zijn NULL (standaard), ‘aligned’ of ‘suffix’.

Voorbeelden

  • to_dms(6.1545681, 'x', 3) → 6°9′16.445″

  • to_dms(6.1545681, 'y', 4, 'aligned') → 6°09′16.4452″N

  • to_dms(6.1545681, 'y', 4, 'suffix') → 6°9′16.4452″N

14.3.5.11. to_int

Converteert een tekenreeks naar een getal integer. Niets wordt teruggegeven als een waarde niet kan worden geconverteerd naar integer (bijv. ‘123asd’ is ongeldig).

Syntaxis

to_int(string)

Argumenten

  • string - tekenreeks die moet worden geconverteerd naar een getal integer

Voorbeelden

  • to_int('123') → 123

14.3.5.12. to_interval

Converteert een tekenreeks naar een type interval. Kan worden gebruikt om dagen, uren, maanden, etc. uit een datum te halen.

Syntaxis

to_interval(string)

Argumenten

  • string - een tekenreeks die een interval weergeeft. Toegestane indelingen omvatten {n} days {n} hours {n} months.

Voorbeelden

  • to_interval('1 day 2 hours') → interval: 1.08333 days

  • to_interval( '0.5 hours' ) → interval: 30 minutes

  • to_datetime('2012-05-05 12:00:00') - to_interval('1 day 2 hours') → 2012-05-04T10:00:00

14.3.5.13. to_real

Converteert een tekenreeks naar een getal real. Niets wordt teruggegeven als een waarde niet kan worden geconverteerd naar real (bijv. ‘123.56asd’ is ongeldig). Getallen worden afgerond na het opslaan van wijzigingen als de precisie kleiner is dan het resultaat van de conversie.

Syntaxis

to_real(string)

Argumenten

  • string - tekenreeks die moet worden geconverteerd naar een getal real

Voorbeelden

  • to_real('123.45') → 123.45

14.3.5.14. to_string

Converteert een getal naar een tekenreeks.

Syntaxis

to_string(number)

Argumenten

  • number - Waarde integer of real. Het getal dat moet worden geconverteerd naar een tekenreeks.

Voorbeelden

  • to_string(123) → ‘123’

14.3.5.15. to_time

Converteert een tekenreeks naar een object time. Een optionele tekenreeks voor de indeling mag worden opgegeven om de tekenreeks te parsen; bekijk QTime::fromString voor aanvullende documentatie over de indeling.

Syntaxis

to_time(string, [format], [language])

[] markeert optionele argumenten

Argumenten

  • string - tekenreeks die een tijdwaarde weergeeft

  • format - indeling die moet worden gebruikt om de tekenreeks naar een time te converteren

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om de tekenreeks naar een time te converteren

Voorbeelden

  • to_time('12:30:01') → 12:30:01

  • to_time('12:34','HH:mm') → 12:34:00

  • to_time('12:34','HH:mm','fr') → 12:34:00

14.3.6. Aangepaste functies

Deze groep bevat functies die door de gebruiker zijn gedefinieerd. Bekijk Functiebewerker voor meer details.

14.3.7. Datum en tijd functies

Deze groep bevat functies voor het afhandelen van datum en tijdgegevens. Deze groep deelt ook verscheidene functies met de groepen Functies Conversies (to_date, to_time, to_datetime, to_interval) en Tekstfuncties (format_date).

Notitie

Datum en datum/tijd en intervallen opslaan in velden

De mogelijkheid om waarden date, time en datetime direct op te slaan in velden is afhankelijk van de provider van de gegevensbron (bijv., Shapefiles accepteren de indeling date, maar niet de indelingen datetime of time). Hieronder volgen enkele suggesties om deze beperking te omzeilen:

  • date, datetime en time kunnen worden geconverteerd en opgeslagen in velden type tekst met de functie format_date().

  • Intervallen kunnen worden opgeslagen in velden type integer of decimal na het gebruiken van een van de functies voor het uitnemen van de datum (bijv. day() om de interval uitgedrukt te krijgen in dagen)

14.3.7.1. age

Geeft het verschil terug tussen twee dates of datetimes.

Het verschil wordt teruggegeven als een Interval en moet worden gebruikt met een van de volgende functies om bruikbare informatie uit te kunnen nemen:

  • year

  • month

  • week

  • day

  • hour

  • minute

  • second

Syntaxis

age(datetime1, datetime2)

Argumenten

  • datetime1 - een tekenreeks, date of datetime die de laatste datum weergeeft

  • datetime2 - een tekenreeks, date of datetime die de eerdere datum weergeeft

Voorbeelden

  • day(age('2012-05-12','2012-05-02')) → 10

  • hour(age('2012-05-12','2012-05-02')) → 240

14.3.7.2. datetime_from_epoch

Geeft een datetime terug waarvan de datum en tijd het getal in milliseconden, msecs, is die zijn verstreken sinds 1970-01-01T00:00:00.000, Coordinated Universal Time (Qt.UTC), en geconverteerd naar Qt.LocalTime.

Syntaxis

datetime_from_epoch(int)

Argumenten

  • int - getal (milliseconden)

Voorbeelden

  • datetime_from_epoch(1483225200000) → 2017-01-01T00:00:00

14.3.7.3. day

Neemt de dag uit een datum, of het aantal dagen vanaf een interval.

Variant Date

Neemt de dag uit een date of een datetime.

Syntaxis

day(date)

Argumenten

  • date - een waarde date of datetime

Voorbeelden

  • day('2012-05-12') → 12

Variant Interval

Berekent de lengte van een interval in dagen.

Syntaxis

day(interval)

Argumenten

  • interval - waarde interval waarvan het aantal dagen moet worden teruggegeven

Voorbeelden

  • day(to_interval('3 days')) → 3

  • day(to_interval('3 weeks 2 days')) → 23

  • day(age('2012-01-01','2010-01-01')) → 730

14.3.7.4. day_of_week

Geeft de dag van de week terug voor een gespecificeerde date of datetime. De teruggegeven waarde ligt tussen 0 tot en met 6, waar 0 correspondeert met een zondag en 6 met een zaterdag.

Syntaxis

day_of_week(date)

Argumenten

  • date - waarde date of datetime

Voorbeelden

  • day_of_week(to_date('2015-09-21')) → 1

14.3.7.5. epoch

Geeft de interval in milliseconden terug tussen de unix epoch en een opgegeven waarde date

Syntaxis

epoch(date)

Argumenten

  • date - een waarde date of datetime

Voorbeelden

  • epoch(to_date('2017-01-01')) → 1483203600000

14.3.7.6. format_date

Maakt een type date of tekenreeks op in een aangepaste indeling voor de tekenreeks. Gebruikt Qt date/time-indeling tekenreeksen. Bekijk QDateTime::fromString.

Syntaxis

format_date(datetime, format, [language])

[] markeert optionele argumenten

Argumenten

  • datetime - waarde date, time of datetime

  • format - Tekenreekssjabloon dat moet worden gebruikt voor het indelen van de tekenreeks.

    Expressie

    Uitvoer

    d

    de dag als getal zonder voorloopnul (1 tot en met 31)

    dd

    de dag als getal met voorloopnul (01 tot en met 31)

    ddd

    de verkorte gelokaliseerde naam van de dag (bijv. ‘maa’ tot en met ‘zon’)

    dddd

    de lange gelokaliseerde naam van de dag (bijv. ‘maandag’ tot en met ‘zondag’)

    M

    de maand als getal zonder voorloopnul (1-12)

    MM

    de maand als getal met voorloopnul (01-12)

    MMM

    de verkorte gelokaliseerde naam van de maand (bijv. ‘jan’ tot en met ‘dec’)

    MMMM

    de lange gelokaliseerde naam van de maand (bijv. ‘januari’ tot en met ‘december’)

    yy

    het jaar als een cijfer met twee getallen (00-99)

    yyyy

    het jaar als een cijfer met vier getallen

    Deze expressies kunnen worden gebruikt voor het tijdsgedeelte van de indeling van de tekenreeks:

    Expressie

    Uitvoer

    h

    het uur als getal zonder voorloopnul (0 tot en met 23 of 1 tot en met 12 met weergave AM/PM)

    hh

    het uur als getal met voorloopnul (00 tot en met 23 of 01 tot en met 12 met weergave AM/PM)

    H

    het uur als getal zonder voorloopnul (0 tot en met 23, zelfs met weergave AM/PM)

    HH

    het uur als getal met voorloopnul (00 tot en met 23, zelfs met weergave AM/PM)

    m

    de minuut als getal zonder voorloopnul (0 tot en met 59)

    mm

    de minuut als getal met voorloopnul (00 tot en met 59)

    s

    de seconde als getal zonder voorloopnul (0 tot en met 59)

    ss

    de seconde als getal met voorloopnul (00 tot en met 59)

    z

    de milliseconden zonder achterliggende nullen (0 tot en met 999)

    zzz

    de milliseconden met achterliggende nullen (000 tot en met 999)

    AP of A

    geïnterpreteerd als een tijd AM/PM. AP moet zijn ofwel ‘AM’ of ‘PM’.

    ap of a

    geïnterpreteerd als een tijd AM/PM. ap moet zijn ofwel ‘am’ of ‘pm’.

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om de datum op te maken als een aangepaste tekenreeks

Voorbeelden

  • format_date('2012-05-15','dd.MM.yyyy') → ‘15.05.2012’

  • format_date('2012-05-15','d MMMM yyyy','fr') → ‘15 mai 2012’

  • format_date('2012-05-15','dddd') → ‘Tuesday’

  • format_date('2012-05-15 13:54:20','dd.MM.yy') → ‘15.05.12’

  • format_date('13:54:20','hh:mm AP') → ‘01:54 PM’

14.3.7.7. hour

Neemt het gedeelte uur uit een datetime of time, of het aantal uren vanaf een interval

Variant Time

Neemt het gedeelte uur uit een time of datetime.

Syntaxis

hour(datetime)

Argumenten

  • datetime - een waarde time of datetime

Voorbeelden

  • hour( to_datetime('2012-07-22 13:24:57') ) → 13

Variant Interval

Berekent de lengte van een interval in uren.

Syntaxis

hour(interval)

Argumenten

  • interval - waarde interval waarvan het aantal uren moet worden teruggegeven

Voorbeelden

  • hour(to_interval('3 hours')) → 3

  • hour(age('2012-07-22T13:00:00','2012-07-22T10:00:00')) → 3

  • hour(age('2012-01-01','2010-01-01')) → 17520

14.3.7.8. make_date

Maakt een waarde date uit getallen voor jaar, maand en dag.

Syntaxis

make_date(year, month, day)

Argumenten

  • year - Getal jaar. Jaren 1 tot en met 99 worden geïnterpreteerd zoals zij zijn. Jaar 0 is ongeldig.

  • month - Getald maand, waar 1=januari

  • day - Getal dag, beginnend met 1 voor de eerste dag in de maand

Voorbeelden

  • make_date(2020,5,4) → waarde date 2020-05-04

14.3.7.9. make_datetime

Maakt een waarde datetime uit getallen voor jaar, maand, dag, uur, minuut en seconde.

Syntaxis

make_datetime(year, month, day, hour, minute, second)

Argumenten

  • year - Getal jaar. Jaren 1 tot en met 99 worden geïnterpreteerd zoals zij zijn. Jaar 0 is ongeldig.

  • month - Getald maand, waar 1=januari

  • day - Getal dag, beginnend met 1 voor de eerste dag in de maand

  • hour - Getal uur

  • minute - Getal minuut

  • second - Seconden (fractionele waarden bevatten milliseconden)

Voorbeelden

  • make_datetime(2020,5,4,13,45,30.5) → waarde datetime 2020-05-04 13:45:30.500

14.3.7.10. make_interval

Maakt een waarde interval uit waarden jaren, maanden, weken, dagen, uren, minuten en seconden.

Syntaxis

make_interval([years=0], [months=0], [weeks=0], [days=0], [hours=0], [minutes=0], [seconds=0])

[] markeert optionele argumenten

Argumenten

  • years - Aantal jaren (gaat uit van 365,25 dagen in een jaar).

  • months - Aantal maanden (gaat uit van 30 dagen in een maand)

  • weeks - Aantal weken

  • days - Aantal dagen

  • hours - Aantal uren

  • minutes - Aantal minuten

  • seconds - Aantal seconden

Voorbeelden

  • make_interval(hours:=3) → interval: 3 hours

  • make_interval(days:=2, hours:=3) → interval: 2.125 days

  • make_interval(minutes:=0.5, seconds:=5) → interval: 35 seconds

14.3.7.11. make_time

Maakt een waarde time uit getallen voor uur, minuut en seconde.

Syntaxis

make_time(hour, minute, second)

Argumenten

  • hour - Getal uur

  • minute - Getal minuut

  • second - Seconden (fractionele waarden bevatten milliseconden)

Voorbeelden

  • make_time(13,45,30.5) → waarde time 13:45:30.500

14.3.7.12. minute

Neemt het gedeelte minuten uit een datetime of time, of het aantal minuten vanaf een interval.

Variant Time

Neemt het gedeelte minuten uit een time of datetime.

Syntaxis

minute(datetime)

Argumenten

  • datetime - een waarde time of datetime

Voorbeelden

  • minute( to_datetime('2012-07-22 13:24:57') ) → 24

Variant Interval

Berekent de lengte van een interval in minuten.

Syntaxis

minute(interval)

Argumenten

  • interval - waarde interval waarvan het aantal minuten moet worden teruggegeven

Voorbeelden

  • minute(to_interval('3 minutes')) → 3

  • minute(age('2012-07-22T00:20:00','2012-07-22T00:00:00')) → 20

  • minute(age('2012-01-01','2010-01-01')) → 1051200

14.3.7.13. month

Neemt het gedeelte maand uit een date, of het aantal maanden vanaf een interval

Variant Date

Neemt het gedeelte maand uit een date of een datetime.

Syntaxis

month(date)

Argumenten

  • date - een waarde date of datetime

Voorbeelden

  • month('2012-05-12') → 05

Variant Interval

Berekent de lengte van een interval in maanden.

Syntaxis

month(interval)

Argumenten

  • interval - waarde interval waarvan het aantal maanden moet worden teruggegeven

Voorbeelden

  • month(to_interval('3 months')) → 3

  • month(age('2012-01-01','2010-01-01')) → 4.03333

14.3.7.14. now

Geeft de huidige datum en tijd terug. De functie is statisch en zal bij het evalueren consistente resultaten teruggeven. De teruggegeven tijd is de tijd waarop de expressie werd voorbereid.

Syntaxis

now()

Voorbeelden

  • now() → 2012-07-22T13:24:57

14.3.7.15. second

Neemt het gedeelte seconde uit een datetime of time, of het aantal seconden vanaf een interval.

Variant Time

Neemt het gedeelte seconde uit een time of datetime.

Syntaxis

second(datetime)

Argumenten

  • datetime - een waarde time of datetime

Voorbeelden

  • second( to_datetime('2012-07-22 13:24:57') ) → 57

Variant Interval

Berekent de lengte van een interval in seconden.

Syntaxis

second(interval)

Argumenten

  • interval - waarde interval waarvan het aantal seconden moet worden teruggegeven

Voorbeelden

  • second(to_interval('3 minutes')) → 180

  • second(age('2012-07-22T00:20:00','2012-07-22T00:00:00')) → 1200

  • second(age('2012-01-01','2010-01-01')) → 63072000

14.3.7.16. to_date

Converteert een tekenreeks naar een object date. Een optionele tekenreeks voor de indeling mag worden opgegeven om de tekenreeks te parsen; bekijk QDate::fromString voor aanvullende documentatie over de indeling.

Syntaxis

to_date(string, [format], [language])

[] markeert optionele argumenten

Argumenten

  • string - tekenreeks die een datumwaarde weergeeft

  • format - indeling die moet worden gebruikt om de tekenreeks naar een date te converteren

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om de tekenreeks naar een date te converteren

Voorbeelden

  • to_date('2012-05-04') → 2012-05-04

  • to_date('June 29, 2019','MMMM d, yyyy') → 2019-06-29

  • to_date('29 juin, 2019','d MMMM, yyyy','fr') → 2019-06-29

14.3.7.17. to_datetime

Converteert een tekenreeks naar een object datetime. Een optionele tekenreeks voor de indeling mag worden opgegeven om de tekenreeks te parsen; bekijk QDate::fromString en QTime::fromString voor aanvullende documentatie over de indeling.

Syntaxis

to_datetime(string, [format], [language])

[] markeert optionele argumenten

Argumenten

  • string - tekenreeks die een datum-/tijdwaarde weergeeft

  • format - indeling die moet worden gebruikt om de tekenreeks naar een datetime te converteren

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om de tekenreeks naar een datetime te converteren

Voorbeelden

  • to_datetime('2012-05-04 12:50:00') → 2012-05-04T12:50:00

  • to_datetime('June 29, 2019 @ 12:34','MMMM d, yyyy @ HH:mm') → 2019-06-29T12:34

  • to_datetime('29 juin, 2019 @ 12:34','d MMMM, yyyy @ HH:mm','fr') → 2019-06-29T12:34

14.3.7.18. to_interval

Converteert een tekenreeks naar een type interval. Kan worden gebruikt om dagen, uren, maanden, etc. uit een datum te halen.

Syntaxis

to_interval(string)

Argumenten

  • string - een tekenreeks die een interval weergeeft. Toegestane indelingen omvatten {n} days {n} hours {n} months.

Voorbeelden

  • to_interval('1 day 2 hours') → interval: 1.08333 days

  • to_interval( '0.5 hours' ) → interval: 30 minutes

  • to_datetime('2012-05-05 12:00:00') - to_interval('1 day 2 hours') → 2012-05-04T10:00:00

14.3.7.19. to_time

Converteert een tekenreeks naar een object time. Een optionele tekenreeks voor de indeling mag worden opgegeven om de tekenreeks te parsen; bekijk QTime::fromString voor aanvullende documentatie over de indeling.

Syntaxis

to_time(string, [format], [language])

[] markeert optionele argumenten

Argumenten

  • string - tekenreeks die een tijdwaarde weergeeft

  • format - indeling die moet worden gebruikt om de tekenreeks naar een time te converteren

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om de tekenreeks naar een time te converteren

Voorbeelden

  • to_time('12:30:01') → 12:30:01

  • to_time('12:34','HH:mm') → 12:34:00

  • to_time('12:34','HH:mm','fr') → 12:34:00

14.3.7.20. week

Neemt het weeknummer uit een date, of het aantal weken vanaf een interval

Variant Date

Neemt het weeknummer uit een date of een datetime.

Syntaxis

week(date)

Argumenten

  • date - een waarde date of datetime

Voorbeelden

  • week('2012-05-12') → 19

Variant Interval

Berekent de lengte van een interval in weken.

Syntaxis

week(interval)

Argumenten

  • interval - waarde interval waarvan het aantal maanden moet worden teruggegeven

Voorbeelden

  • week(to_interval('3 weeks')) → 3

  • week(age('2012-01-01','2010-01-01')) → 104.285

14.3.7.21. year

Neemt het deel jaar uit een date, of het aantal jaren vanaf een interval

Variant Date

Neemt het gedeelte jaar uit een date of een datetime.

Syntaxis

year(date)

Argumenten

  • date - een waarde date of datetime

Voorbeelden

  • year('2012-05-12') → 2012

Variant Interval

Berekent de lengte van een interval in jaren.

Syntaxis

year(interval)

Argumenten

  • interval - waarde interval waarvan het aantal jaren moet worden teruggegeven

Voorbeelden

  • year(to_interval('3 years')) → 3

  • year(age('2012-01-01','2010-01-01')) → 1.9986

Enkele voorbeelden:

Naast deze functies, aftrekken van datums, datum/tijden of tijden met behulp van de operator - (minus) zal een interval teruggeven.

Optellen of aftrekken van een interval bij datums, datum/tijden of tijden, met behulp van de operatoren + (plus) en - (minus), zal een datetime teruggeven.

  • Haal het aantal dagen op tot de uitgave van QGIS 3.0:

    to_date('2017-09-29') - to_date(now())
    -- Returns <interval: 203 days>
    
  • Hetzelfde met tijd:

    to_datetime('2017-09-29 12:00:00') - now()
    -- Returns <interval: 202.49 days>
    
  • Haal de datum/tijd op tot 100 dagen vanaf nu:

    now() + to_interval('100 days')
    -- Returns <datetime: 2017-06-18 01:00:00>
    

14.3.8. Velden en waarden

Bevat een lijst met velden uit de laag.

Dubbelklik op de naam van een veld om dat toe te voegen aan uw expressie. U kunt ook de naam van het veld typen (bij voorkeur tussen dubbele aanhalingstekens) of het alias daarvan.

Selecteer, om waarden van velden op te halen om in een expressie te gebruiken, het toepasselijke veld en, in het weergegeven widget, kies tussen 10 voorbeelden en Alle unieke. Gevraagde waarden worden dan weergegeven en u kunt het vak Zoeken aan de bovenkant van de lijst gebruiken om het resultaat te filteren. Toegang tot voorbeeldwaarden kan ook worden gekregen door met rechts te klikken op een veld.

Een waarde toevoegen aan een expressie die u schrijft: dubbelklik erop in de lijst. Als de waarde van het type string is, moet het tussen enkele aanhalingstekens staan, anders zijn geen aanhalingstekens nodig.

14.3.9. Functies voor bestanden en paden

Deze groep bevat functies waarmee u bestands- en padnamen kunt bewerken.

14.3.9.1. base_file_name

Geeft de basisnaam terug van het bestand, zonder de map of achtervoegsel voor het bestand (extensie).

Syntaxis

base_file_name(path)

Argumenten

  • path - een bestandspad

Voorbeelden

  • base_file_name('/home/qgis/data/country_boundaries.shp') → ‘country_boundaries’

14.3.9.2. file_exists

Geeft true terug als een bestandspad bestaat.

Syntaxis

file_exists(path)

Argumenten

  • path - een bestandspad

Voorbeelden

  • file_exists('/home/qgis/data/country_boundaries.shp') → true

14.3.9.3. file_name

Geeft de naam terug van een bestand, (inclusief de bestandsextensie), maar zonder de map.

Syntaxis

file_name(path)

Argumenten

  • path - een bestandspad

Voorbeelden

  • file_name('/home/qgis/data/country_boundaries.shp') → ‘country_boundaries.shp’

14.3.9.4. file_path

Geeft de component map terug van een bestandspad. Dit bevat niet de bestandsnaam.

Syntaxis

file_path(path)

Argumenten

  • path - een bestandspad

Voorbeelden

  • file_path('/home/qgis/data/country_boundaries.shp') → ‘/home/qgis/data’

14.3.9.5. file_size

Geeft de grootte (in bytes) terug van een bestand.

Syntaxis

file_size(path)

Argumenten

  • path - een bestandspad

Voorbeelden

  • file_size('/home/qgis/data/country_boundaries.geojson') → 5674

14.3.9.6. file_suffix

Geeft het achtervoegsel (extensie) terug uit een bestandspad.

Syntaxis

file_suffix(path)

Argumenten

  • path - een bestandspad

Voorbeelden

  • file_suffix('/home/qgis/data/country_boundaries.shp') → ‘shp’

14.3.9.7. is_directory

Geeft true terug als een pad correspondeert met een map.

Syntaxis

is_directory(path)

Argumenten

  • path - een bestandspad

Voorbeelden

  • is_directory('/home/qgis/data/country_boundaries.shp') → false

  • is_directory('/home/qgis/data/') → true

14.3.9.8. is_file

Geeft true terug als een pad correspondeert met een bestand.

Syntaxis

is_file(path)

Argumenten

  • path - een bestandspad

Voorbeelden

  • is_file('/home/qgis/data/country_boundaries.shp') → true

  • is_file('/home/qgis/data/') → false

14.3.10. Formulierfuncties

Deze groep bevat functies die exclusief werken op de context van attribuutformulieren. Bijvoorbeeld in instellingen voor veldwidgets.

14.3.10.1. current_parent_value

Alleen te gebruiken in de context van een ingebed formulier geeft deze functie de huidige niet opgeslagen waarde terug van een veld in het ouderformulier dat momenteel wordt bewerkt. Dit zal verschillen van de feitelijke attribuutwaarden van het ouderobject voor objecten die momenteel worden bewerkt of nog niet zijn toegevoegd aan een ouderlaag. Indien gebruikt in een filterexpressie voor een widget waarde-relatie, zou deze functie moeten worden verpakt in een ‘coalesce()’ die het feitelijke ouderobject kan ophalen uit de laag als het formulier niet wordt gebruikt in een ingebedde context.

Syntaxis

current_parent_value(field_name)

Argumenten

  • field_name - een veldnaam in het huidige ouderformulier

Voorbeelden

  • current_parent_value( 'FIELD_NAME' ) → De huidige waarde van het veld ‘FIELD_NAME’ in het ouderformulier.

14.3.10.2. current_value

Geeft de huidige niet opgeslagen waarde terug van een veld in het formulier of tabelrij dat momenteel wordt bewerkt. Dit zal verschillen van de feitelijke attribuutwaarden van het object voor objecten die momenteel worden bewerkt of nog niet zijn toegevoegd aan een laag.

Syntaxis

current_value(field_name)

Argumenten

  • field_name - een veldnaam in het huidige formulier of tabelrij

Voorbeelden

  • current_value( 'FIELD_NAME' ) → De huidige waarde van het veld ‘FIELD_NAME’.

14.3.11. Functies voor fuzzy overeenkomsten

Deze groep bevat functies voor fuzzy vergelijkingen tussen waarden.

14.3.11.1. hamming_distance

Geeft de Hamming-afstand terug voor twee tekenreeksen. Dit komt overeen met het aantal tekens op corresponderende posities in de tekenreeksen voor de invoer waar de tekens van elkaar verschillen. De tekenreeksen voor de invoer moeten van dezelfde lengte zijn, en de vergelijking is hoofdlettergevoelig.

Syntaxis

hamming_distance(string1, string2)

Argumenten

  • string1 - een tekenreeks

  • string2 - een tekenreeks

Voorbeelden

  • hamming_distance('abc','xec') → 2

  • hamming_distance('abc','ABc') → 2

  • hamming_distance(upper('abc'),upper('ABC')) → 0

14.3.11.2. levenshtein

Geeft de Levenshtein-bewerkingsafstand terug voor twee tekenreeksen. Dit komt overeen met het minimale aantal bewerkingen van tekens (invoegingen, verwijderingen of vervangingen) vereist om de ene tekenreeks te vervangen door de andere.

De Levenshtein-afstand is een meting van de overeenkomst tussen twee tekenreeksen. Kleinere afstanden betekenen dat de tekenreeksen meer overeenkomen, en grotere afstanden geven meer verschillende tekenreeksen aan. De afstand is hoofdlettergevoelig.

Syntaxis

levenshtein(string1, string2)

Argumenten

  • string1 - een tekenreeks

  • string2 - een tekenreeks

Voorbeelden

  • levenshtein('kittens','mitten') → 2

  • levenshtein('Kitten','kitten') → 1

  • levenshtein(upper('Kitten'),upper('kitten')) → 0

14.3.11.3. longest_common_substring

Geeft de langste overeenkomende subtekenreeks tussen twee tekenreeksen terug. Deze subtekenreeks is de langste tekenreeks die een subtekenreeks is van de twee tekenreeksen voor de invoer. De langste overeenkomende subtekenreeks van “ABABC” en “BABCA” is bijvoorbeeld “BABC”. De subtekenreeks is hoofdlettergevoelig.

Syntaxis

longest_common_substring(string1, string2)

Argumenten

  • string1 - een tekenreeks

  • string2 - een tekenreeks

Voorbeelden

  • longest_common_substring('ABABC','BABCA') → ‘BABC’

  • longest_common_substring('abcDeF','abcdef') → ‘abc’

  • longest_common_substring(upper('abcDeF'),upper('abcdex')) → ‘ABCDE’

14.3.11.4. soundex

Geeft de Soundex-weergave van een tekenreeks terug. Soundex is een algoritme voor fonetisch overeenkomen, dus tekenreeksen met een soortgelijke klank zouden moeten worden weergegeven door dezelfde code voor Soundex.

Syntaxis

soundex(string)

Argumenten

  • string - een tekenreeks

Voorbeelden

  • soundex('robert') → ‘R163’

  • soundex('rupert') → ‘R163’

  • soundex('rubin') → ‘R150’

14.3.12. Algemene functies

Deze groep bevat een algemeen assortiment van functies.

14.3.12.1. env

Haalt een omgevingsvariabele op en geeft de inhoud daarvan terug als een tekenreeks Als de variabele niet wordt gevonden, wordt NULL teruggegeven. Dit is handig om systeemspecifieke configuratie, zoals schijfletters of voorvoegsels voor paden in te voeren. Definitie van omgevingsvariabelen is afhankelijk van het besturingssysteem, neem contact op met uw systeembeheerder, of bekijk de documentatie voor het besturingssysteem, hoe deze in te stellen.

Syntaxis

env(name)

Argumenten

  • name - De naam van de omgevingsvariabele die zou moeten worden opgehaald.

Voorbeelden

  • env( 'LANG' ) → ‘en_US.UTF-8’

  • env( 'MY_OWN_PREFIX_VAR' ) → ‘Z:’

  • env( 'I_DO_NOT_EXIST' ) → NULL

14.3.12.2. eval

Evalueert een expressie die in een tekenreeks wordt doorgegeven. Nuttig om dynamische parameters, die zijn doorgegeven als contextvariabelen of velden, uit te breiden.

Syntaxis

eval(expression)

Argumenten

  • expression - een expressie als tekenreeks

Voorbeelden

  • eval('\'nice\'') → ‘nice’

  • eval(@expression_var) → [wat het resultaat van het evalueren van @expression_var ook maar mag zijn…]

14.3.12.3. eval_template

Evalueert een sjabloon dat in een tekenreeks wordt doorgegeven. Nuttig om dynamische parameters, die zijn doorgegeven als contextvariabelen of velden, uit te breiden.

Syntaxis

eval_template(template)

Argumenten

  • template - een tekenreeks voor een sjabloon

Voorbeelden

  • eval_template('QGIS [% upper(\'rocks\') %]') → QGIS ROCKS

14.3.12.4. is_layer_visible

Geeft true terug als een gespecificeerde laag zichtbaar is.

Syntaxis

is_layer_visible(layer)

Argumenten

  • layer - een tekenreeks die ofwel een laagnaam of een laag-ID vertegenwoordigt

Voorbeelden

  • is_layer_visible('baseraster') → True

14.3.12.5. layer_property

Geeft een overeenkomende laageigenschap of waarde voor metadata terug.

Syntaxis

layer_property(layer, property)

Argumenten

  • layer - een tekenreeks die ofwel een laagnaam of een laag-ID vertegenwoordigt

  • property - een tekenreeks die correspondeert met de terug te geven eigenschap. Geldige opties zijn:

    • name: naam van de laag

    • id: laag-ID

    • title: tekenreeks voor de titel van de metadata

    • abstract: tekenreeks voor abstract van de metadata

    • keywords: sleutelwoorden voor metadata

    • data_url: URL voor metadata

    • attribution: tekenreeks voor de toekenning van de metadata

    • attribution_url: URL voor de toekenning van de metadata

    • source: laagbron

    • min_scale: minimale schaal voor weergave van de laag

    • max_scale: maximale schaal voor weergave van de laag

    • is_editable: als de laag in modus Bewerken staat

    • crs: laag-CRS

    • crs_definition: volledige definitie van laag-CRS

    • crs_description: beschrijving laag-CRS

    • extent: bereik van de laag (als een geometrie-object)

    • distance_units: eenheden voor afstanden op de laag

    • type: type laag, bijv. Vector of Raster

    • storage_type: indeling voor opslaan (alleen voor vectorlagen)

    • geometry_type: type geometrie type, bijv. Punt (alleen vectorlagen)

    • feature_count: geschatte aantal objecten voor de laag (alleen vectorlagen)

    • path: Bestandspad naar de databron van de laag. Alleen beschikbaar voor op bestanden gebaseerde lagen.

Voorbeelden

  • layer_property('streets','title') → ‘Basemap Streets’

  • layer_property('airports','feature_count') → 120

  • layer_property('landsat','crs') → ‘EPSG:4326’

Lees verder: vector, raster en laag met mazen laag-eigenschappen

14.3.12.6. var

Geeft de opgeslagen waarde uit een gespecificeerde variabele terug.

Syntaxis

var(name)

Argumenten

  • name - de naam van een variabele

Voorbeelden

  • var('qgis_version') → ‘2.12’

Lees verder: Lijst van standaard variabelen

14.3.12.7. with_variable

Maakt en stelt een variabele in voor de code voor een expressie die zal worden verschaft als derde argument. Dit is alleen nuttig voor gecompliceerde expressies waar dezelfde berekende waarde moet worden gebruikt op verschillende plaatsen.

Syntaxis

with_variable(name, value, expression)

Argumenten

  • name - de naam van de in te stellen variabele

  • value - de in te stellen waarde

  • expression - de expressie waarvoor de variabele beschikbaar moet zijn

Voorbeelden

  • with_variable('my_sum', 1 + 2 + 3, @my_sum * 2 + @my_sum * 5) → 42

14.3.13. Geometrie functies

De groep bevat functies die werken voor geometrie-objecten (bijv. buffer, transform, $area).

14.3.13.1. angle_at_vertex

Geeft de hoek bisector hoek (gemiddelde hoek) terug van de geometrie voor een gespecificeerd punt op een geometrie lijn. Hoeken zijn in graden vanaf noord met de klok mee.

Syntaxis

angle_at_vertex(geometry, vertex)

Argumenten

  • geometry - een geometrie lijn

  • vertex - index van het punt, beginnend vanaf 0; als de waarde negatief is, zal de geselecteerde index voor het punt zijn totale aantal minus de absolute waarde zijn

Voorbeelden

  • angle_at_vertex(geometry:=geom_from_wkt('LineString(0 0, 10 0, 10 10)'),vertex:=1) → 45.0

14.3.13.2. $area

Geeft het gebied van het huidige object terug. Het door deze functie berekende gebied respecteert zowel de instelling van de ellipsoïde voor het huidige project als de instellingen voor eenheden voor het gebied. Als, bijvoorbeeld, een ellipsoïde is ingesteld voor het project, dan zal het berekende gebied ellipsoïde zijn, en als er geen ellipsoïde is ingesteld, dan zal het gebied planimetrisch zijn.

Syntaxis

$area

Voorbeelden

  • $area → 42

14.3.13.3. area

Geeft het gebied terug van een geometrie-object polygoon. Berekeningen zijn altijd in het ruimtelijke referentiesysteem (SRS) van deze geometrie, en de eenheden van het teruggegeven gebied komen overeen met de eenheden voor het SRS. Dit verschilt van de door de functie $area uitgevoerde berekeningen, die ellipsoïde berekeningen zal uitvoeren, gebaseerd op de instellingen voor de ellipsoïde van het project en eenheden voor het gebied.

Syntaxis

area(geometry)

Argumenten

  • geometry - geometrie-object polygoon

Voorbeelden

  • area(geom_from_wkt('POLYGON((0 0, 4 0, 4 2, 0 2, 0 0))')) → 8.0

14.3.13.4. azimuth

Geeft de op het noorden gebaseerde azimut terug als de hoek in radialen, met de klok mee gemeten van de verticaal van point_a naar point_b.

Syntaxis

azimuth(point_a, point_b)

Argumenten

  • point_a - geometrie punt

  • point_b - geometrie punt

Voorbeelden

  • degrees( azimuth( make_point(25, 45), make_point(75, 100) ) ) → 42.273689

  • degrees( azimuth( make_point(75, 100), make_point(25,45) ) ) → 222.273689

14.3.13.5. boundary

Geeft de omsluiting terug van de gecombineerde grens van de geometrie (d.i. de topologische grens van de geometrie). Een geometrie polygoon zal, bijvoorbeeld, een grens hebben die bestaat uit de lijnen voor elke ring in de polygoon. Sommige typen geometrie hebben geen gedefinieerde grens, bijv. punten of verzamelingen van geometrieën, en zullen NULL teruggeven.

Syntaxis

boundary(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • geom_to_wkt(boundary(geom_from_wkt('Polygon((1 1, 0 0, -1 1, 1 1))'))) → ‘LineString(1 1,0 0,-1 1,1 1)’

  • geom_to_wkt(boundary(geom_from_wkt('LineString(1 1,0 0,-1 1)'))) → ‘MultiPoint ((1 1),(-1 1))’

Lees verder: algoritme Grens

14.3.13.6. bounds

Geeft een geometrie terug die het begrenzingsvak van een invoer-geometrie weergeeft. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

bounds(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • bounds($geometry) → begrenzingsvak van de geometrie van het huidige object

  • geom_to_wkt(bounds(geom_from_wkt('Polygon((1 1, 0 0, -1 1, 1 1))'))) → ‘Polygon ((-1 0, 1 0, 1 1, -1 1, -1 0))’

Lees verder: algoritme Begrenzingsvakken

14.3.13.7. bounds_height

Geeft de hoogte van het begrenzingsvak van een geometrie terug. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

bounds_height(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • bounds_height($geometry) → height of bounding box of the current feature’s geometry

  • bounds_height(geom_from_wkt('Polygon((1 1, 0 0, -1 1, 1 1))')) → 1

14.3.13.8. bounds_width

Geeft de breedte van het begrenzingsvak van een geometrie terug. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

bounds_width(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • bounds_width($geometry) → width of bounding box of the current feature’s geometry

  • bounds_width(geom_from_wkt('Polygon((1 1, 0 0, -1 1, 1 1))')) → 2

14.3.13.9. buffer

Geeft een geometrie terug die alle punten weergeeft waarvan de afstand vanaf deze geometrie kleiner is dan of gelijk is aan afstand. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

buffer(geometry, distance, [segments=8])

[] markeert optionele argumenten

Argumenten

  • geometry - een geometrie

  • distance - bufferafstand in laageenheden

  • segments - aantal te gebruiken segmenten om een kwartcirkel weer te geven als een afgeronde stijl voor samenvoegen wordt gebruikt. Een groter aantal resulteert in een gladdere buffer met meer knopen.

Voorbeelden

  • buffer($geometry, 10.5) → polygoon van de geometrie van het huidige object, gebufferd op 10.5 eenheden

Lees verder: algoritme Buffer

14.3.13.10. buffer_by_m

Maakt een buffer langs een geometrie lijn waarbij de diameter van de buffer varieert, overeenkomstig de waarden M van de punten van de lijn.

Syntaxis

buffer_by_m(geometry, [segments=8])

[] markeert optionele argumenten

Argumenten

  • geometry - invoergeometrie. Moet een geometrie (multi)lijn zijn met waarden M.

  • segments - aantal segmenten om bogen van een kwartcirkel te benaderen in de buffer.

Voorbeelden

  • buffer_by_m(geometry:=geom_from_wkt('LINESTRINGM(1 2 0.5, 4 2 0.2)'),segments:=8) → Een buffer met variabele breedte, beginnend met een diameter van 0.5 en eindigend met een diameter van 0.2 langs de geometrie lijn.

Lees verder: algoritme Variabele breedte buffer (op M-waarde)

14.3.13.11. centroid

Geeft het geometrische midden van een geometrie terug.

Syntaxis

centroid(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • centroid($geometry) → een geometrie punt

Lees verder: algoritme Zwaartepunten

14.3.13.12. close_line

Geeft een gesloten lijn voor de lijn voor invoer terug door het eerste punt toe te voegen aan het einde van de lijn, als die nog niet gesloten is. Als de geometrie geen lijn of multi-lijn is, dan zal het resultaat NULL zijn.

Syntaxis

close_line(geometry)

Argumenten

  • geometry - een geometrie lijn

Voorbeelden

  • geom_to_wkt(close_line(geom_from_wkt('LINESTRING(0 0, 1 0, 1 1)'))) → ‘LineString (0 0, 1 0, 1 1, 0 0)’

  • geom_to_wkt(close_line(geom_from_wkt('LINESTRING(0 0, 1 0, 1 1, 0 0)'))) → ‘LineString (0 0, 1 0, 1 1, 0 0)’

14.3.13.13. closest_point

Geeft het punt terug op geometry1 dat het dichtst bij geometry2 ligt

Syntaxis

closest_point(geometry1, geometry2)

Argumenten

  • geometry1 - geometrie waarop het dichtstbijzijnde punt moet worden gezocht

  • geometry2 - geometrie waarvan het dichtstbijzijnde punt moet worden gevonden

Voorbeelden

  • geom_to_wkt(closest_point(geom_from_wkt('LINESTRING (20 80, 98 190, 110 180, 50 75 )'),geom_from_wkt('POINT(100 100)'))) → ‘Point(73.0769 115.384)’

14.3.13.14. collect_geometries

Verzamelt een set geometrieën in een meerdelig object geometrie.

Variant Lijst met argumenten

Delen van geometrieën worden als afzonderlijke argumenten gespecificeerd voor de functie.

Syntaxis

collect_geometries(geometry1, geometry2, …)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • geom_to_wkt(collect_geometries(make_point(1,2), make_point(3,4), make_point(5,6))) → ‘MultiPoint ((1 2),(3 4),(5 6))’

Variant Array

Delen van geometrieën worden als een array van delen van geometrieën gespecificeerd.

Syntaxis

collect_geometries(array)

Argumenten

  • array - array van geometrie-objecten

Voorbeelden

  • geom_to_wkt(collect_geometries(array(make_point(1,2), make_point(3,4), make_point(5,6)))) → ‘MultiPoint ((1 2),(3 4),(5 6))’

Lees verder: algoritme Geometrieën verzamelen

14.3.13.15. combine

Geeft de combinatie van twee geometrieën terug.

Syntaxis

combine(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • geom_to_wkt( combine( geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 2 1)' ) ) ) → ‘MULTILINESTRING((4 4, 2 1), (3 3, 4 4), (4 4, 5 5))’

  • geom_to_wkt( combine( geom_from_wkt( 'LINESTRING(3 3, 4 4)' ), geom_from_wkt( 'LINESTRING(3 3, 6 6, 2 1)' ) ) ) → ‘LINESTRING(3 3, 4 4, 6 6, 2 1)’

14.3.13.16. contains

Test of een geometrie een andere bevat. Geeft true terug als, en alleen als, er geen punten van geometry2 in het exterieur van geometry1 liggen, en tenminste één punt van het interieur van geometry2 in het interieur van geometry1 ligt.

Syntaxis

contains(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • contains( geom_from_wkt( 'POLYGON((0 0, 0 1, 1 1, 1 0, 0 0))' ), geom_from_wkt( 'POINT(0.5 0.5 )' ) ) → true

  • contains( geom_from_wkt( 'POLYGON((0 0, 0 1, 1 1, 1 0, 0 0))' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → false

Lees verder: overlay_contains

14.3.13.17. convex_hull

Geeft de convex hull van een geometrie terug. Dit vertegenwoordigt de minimale convex-geometrie die alle geometrieën binnen de verzameling omsluit.

Syntaxis

convex_hull(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • geom_to_wkt( convex_hull( geom_from_wkt( 'LINESTRING(3 3, 4 4, 4 10)' ) ) ) → ‘POLYGON((3 3, 4 10, 4 4, 3 3))’

Lees verder: algoritme Convex hull (Bolle schil)

14.3.13.18. crosses

Test of een geometrie kruist met een andere. Geeft true terug als de opgegeven geometrieën enkele, maar niet alle, punten in het interieur gemeenschappelijk hebben.

Syntaxis

crosses(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • crosses( geom_from_wkt( 'LINESTRING(3 5, 4 4, 5 3)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → true

  • crosses( geom_from_wkt( 'POINT(4 5)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → false

Lees verder: overlay_crosses

14.3.13.19. difference

Geeft een geometrie terug die dat deel van geometry1 weergeeft dat niet kruist met geometry2.

Syntaxis

difference(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • geom_to_wkt( difference( geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4)' ) ) ) → ‘LINESTRING(4 4, 5 5)’

Lees verder: algoritme Verschil

14.3.13.20. disjoint

Test of geometrieën elkaar niet ruimtelijk kruisen. Geeft true terug als de geometrieën geen enkele ruimte met elkaar delen.

Syntaxis

disjoint(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • disjoint( geom_from_wkt( 'POLYGON((0 0, 0 1, 1 1, 1 0, 0 0 ))' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → true

  • disjoint( geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ), geom_from_wkt( 'POINT(4 4)' )) → false

Lees verder: overlay_disjoint

14.3.13.21. distance

Geeft de minimum afstand (gebaseerd op ruimtelijke verwijzing) tussen twee geometrieën in geprojecteerde eenheden terug.

Syntaxis

distance(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • distance( geom_from_wkt( 'POINT(4 4)' ), geom_from_wkt( 'POINT(4 8)' ) ) → 4

14.3.13.22. distance_to_vertex

Geeft de afstand terug langs de geometrie tot een gespecificeerd punt.

Syntaxis

distance_to_vertex(geometry, vertex)

Argumenten

  • geometry - een geometrie lijn

  • vertex - index van het punt, beginnend vanaf 0; als de waarde negatief is, zal de geselecteerde index voor het punt zijn totale aantal minus de absolute waarde zijn

Voorbeelden

  • distance_to_vertex(geometry:=geom_from_wkt('LineString(0 0, 10 0, 10 10)'),vertex:=1) → 10.0

14.3.13.23. end_point

Geeft de laatste knoop van een geometrie terug.

Syntaxis

end_point(geometry)

Argumenten

  • geometry - object geometrie

Voorbeelden

  • geom_to_wkt(end_point(geom_from_wkt('LINESTRING(4 0, 4 2, 0 2)'))) → ‘Point (0 2)’

Lees verder: algoritme Specifieke punten uitnemen

14.3.13.24. extend

Verlengt het begin en einde van een geometrie lijn met een gespecificeerde afstand. Lijnen worden verlengd met behulp van de richting van het eerste en laatste segment in de lijn. Voor een multi-lijn worden alle delen verlengd. Afstanden zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

extend(geometry, start_distance, end_distance)

Argumenten

  • geometry - een geometrie (multi)lijn

  • start_distance - afstand waarmee het begin van de lijn moet worden verlengd

  • end_distance - afstand waarmee het einde van de lijn moet worden verlengd.

Voorbeelden

  • geom_to_wkt(extend(geom_from_wkt('LineString(0 0, 1 0, 1 1)'),1,2)) → ‘LineString (-1 0, 1 0, 1 3)’

  • geom_to_wkt(extend(geom_from_wkt('MultiLineString((0 0, 1 0, 1 1), (2 2, 0 2, 0 5))'),1,2)) → ‘MultiLineString ((-1 0, 1 0, 1 3),(3 2, 0 2, 0 7))’

Lees verder: algoritme Lijnen verlengen

14.3.13.25. exterior_ring

Geeft een lijn terug die de buitenste ring voorstelt van een geometrie polygoon. Als de geometrie geen polygoon is zal het resultaat NULL zijn.

Syntaxis

exterior_ring(geometry)

Argumenten

  • geometry - een geometrie polygoon

Voorbeelden

  • geom_to_wkt(exterior_ring(geom_from_wkt('POLYGON((-1 -1, 4 0, 4 2, 0 2, -1 -1),( 0.1 0.1, 0.1 0.2, 0.2 0.2, 0.2, 0.1, 0.1 0.1))'))) → ‘LineString (-1 -1, 4 0, 4 2, 0 2, -1 -1)’

14.3.13.26. extrude

Geeft een uitgetrokken versie terug van de invoergeometrie (Multi-)Curve of (Multi-)Lijn met een uitbreiding die wordt gespecificeerd door x en y.

Syntaxis

extrude(geometry, x, y)

Argumenten

  • geometry - een geometrie polygoon

  • x - uitbreiding x, numerieke waarde

  • y - uitbreiding y, numerieke waarde

Voorbeelden

  • geom_to_wkt(extrude(geom_from_wkt('LineString(1 2, 3 2, 4 3)'), 1, 2)) → ‘Polygon ((1 2, 3 2, 4 3, 5 5, 4 4, 2 4, 1 2))’

  • geom_to_wkt(extrude(geom_from_wkt('MultiLineString((1 2, 3 2), (4 3, 8 3))'), 1, 2)) → ‘MultiPolygon (((1 2, 3 2, 4 4, 2 4, 1 2)),((4 3, 8 3, 9 5, 5 5, 4 3)))’

14.3.13.27. flip_coordinates

Geeft een kopie terug van de geometrie waarin de X- en Y-coördinaten zijn verwisseld. Nuttig om geometrieën te repareren waarvan de waarden voor breedte- en lengtegraad zijn omgedraaid.

Syntaxis

flip_coordinates(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • geom_to_wkt(flip_coordinates(make_point(1, 2))) → ‘Point (2 1)’

Lees verder: algoritme X- en Y-coördinaten wisselen

14.3.13.28. force_rhr

Forceert een geometrie polygoon om de rechterhandregel te respecteren, waarin het gebied, dat is gebonden aan een polygoon, aan de rechterkant van de grens ligt. In het bijzonder, de buitenste ring is georiënteerd in een richting met de klok mee en de binnenste ringen in een richting tegen de wijzers van de klok in.

Syntaxis

force_rhr(geometry)

Argumenten

  • geometry - een geometrie. Elke geometrie die geen polygoon is wordt ongewijzigd teruggegeven.

Voorbeelden

  • geom_to_wkt(force_rhr(geometry:=geom_from_wkt('POLYGON((-1 -1, 4 0, 4 2, 0 2, -1 -1))'))) → ‘Polygon ((-1 -1, 0 2, 4 2, 4 0, -1 -1))’

Lees verder: algoritme Rechterhandregel forceren

14.3.13.29. geom_from_gml

Geeft een geometrie terug uit een GML-weergave van geometrie.

Syntaxis

geom_from_gml(gml)

Argumenten

  • gml - GML-weergave van een geometrie als een tekenreeks

Voorbeelden

  • geom_from_gml('<gml:LineString srsName="EPSG:4326"><gml:coordinates>4,4 5,5 6,6</gml:coordinates></gml:LineString>') → een object lijngeometrie

14.3.13.30. geom_from_wkb

Geeft een geometrie terug, gemaakt uit een weergave Well-Known Text (WKT).

Syntaxis

geom_from_wkb(binary)

Argumenten

  • binary - weergave in Well-Known Binary (WKB) van een geometrie (als een binaire blob)

Voorbeelden

  • geom_from_wkb( geom_to_wkb( make_point(4,5) ) ) → een geometrie-object punt

14.3.13.31. geom_from_wkt

Geeft een geometrie terug, gemaakt uit een weergave Well-Known Text (WKT)-

Syntaxis

geom_from_wkt(text)

Argumenten

  • text - weergave in Well-Known Text (WKT) van een geometrie

Voorbeelden

  • geom_from_wkt( 'POINT(4 5)' ) → een geometrie-object

14.3.13.32. geom_to_wkb

Geeft de weergave in Well-Known Binary (WKB) van een geometrie terug.

Syntaxis

geom_to_wkb(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • geom_to_wkb( $geometry ) → binaire blob die een geometrie-object bevat

14.3.13.33. geom_to_wkt

Geeft de weergave in Well-Known Text (WKT) van de geometrie terug zonder de metadata voor het SRID.

Syntaxis

geom_to_wkt(geometry, [precision=8])

[] markeert optionele argumenten

Argumenten

  • geometry - een geometrie

  • precision - numerieke precisie

Voorbeelden

  • geom_to_wkt( make_point(6, 50) ) → ‘POINT(6 50)’

  • geom_to_wkt(centroid(geom_from_wkt('Polygon((1 1, 0 0, -1 1, 1 1))'))) → ‘POINT(0 0.66666667)’

  • geom_to_wkt(centroid(geom_from_wkt('Polygon((1 1, 0 0, -1 1, 1 1))')), 2) → ‘POINT(0 0.67)’

14.3.13.34. $geometry

Geeft de geometrie van het huidige object terug. Kan worden gebruikt bij verwerken met andere functies.

Syntaxis

$geometry

Voorbeelden

  • geom_to_wkt( $geometry ) → ‘POINT(6 50)’

14.3.13.35. geometry

Geeft de geometrie van een object terug.

Syntaxis

geometry(feature)

Argumenten

  • feature - een object

Voorbeelden

  • geom_to_wkt( geometry( get_feature( layer, attributeField, value ) ) ) → ‘POINT(6 50)’

  • intersects( $geometry, geometry( get_feature( layer, attributeField, value ) ) ) → true

14.3.13.36. geometry_n

Geeft een specifieke geometrie terug uit een verzameling geometrieën, of NULL als de invoergeometrie geen verzameling is.

Syntaxis

geometry_n(geometry, index)

Argumenten

  • geometry - verzameling geometrieën

  • index - index van de terug te geven geometrie, waar 1 de eerste geometrie in de verzameling is

Voorbeelden

  • geom_to_wkt(geometry_n(geom_from_wkt('GEOMETRYCOLLECTION(POINT(0 1), POINT(0 0), POINT(1 0), POINT(1 1))'),3)) → ‘Point (1 0)’

14.3.13.37. hausdorff_distance

Geeft de Hausdorff-afstand tussen twee geometrieën terug. Geeft in de basis een meting terug van hoe soortgelijk of niet soortgelijk 2 geometrieën zijn, met een lagere afstand die meer soortgelijke geometrieën aangeeft.

De functie mag wordne uitgevoerd met een optioneel argument voor de fractiedichtheid. Indien niet gespecificeerd wordt een benadering van de standaard Hausdorff-afstand gebruikt. Deze benadering is exact of dichtbij genoeg voor een grote subset van nuttige gevallen. Voorbeelden hiervan zijn:

  • berekenen van de afstand tussen lijnen die ruwweg parallel aan elkaar zijn, en ruwweg van gelijke lengte. Dit komt voor in overeenkomende lineaire netwerken.

  • Testen van de soortgelijkheid van geometrieën.

Als de standaard gegeven benadering voor deze methode niet voldoende is, specificeer dan het argument voor de fractiedichtheid. Specificeren van dit argument voert een verdichting van segmenten uit voordat de afzonderlijk Hausdorff-afstand wordt berekend. De parameter stelt de fractie in waarmee elk segment wordt verdicht. Elk segment zal worden gesplitst in een aantal subsegmenten van gelijke lengte, waarvan de fractie van de totale lengte het dichtst bij de opgegeven fractie ligt. Verlagen van de parameter fractiedichtheid zal er voor zorgen dat de teruggegeven afstand de ware Hausdorff-afstand voor de geometrieën benadert.

Syntaxis

hausdorff_distance(geometry1, geometry2, [densify_fraction])

[] markeert optionele argumenten

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

  • densify_fraction - hoeveelheid frachtiedichtheid

Voorbeelden

  • hausdorff_distance( geometry1:= geom_from_wkt('LINESTRING (0 0, 2 1)'),geometry2:=geom_from_wkt('LINESTRING (0 0, 2 0)')) → 2

  • hausdorff_distance( geom_from_wkt('LINESTRING (130 0, 0 0, 0 150)'),geom_from_wkt('LINESTRING (10 10, 10 150, 130 10)')) → 14.142135623

  • hausdorff_distance( geom_from_wkt('LINESTRING (130 0, 0 0, 0 150)'),geom_from_wkt('LINESTRING (10 10, 10 150, 130 10)'),0.5) → 70.0

14.3.13.38. inclination

Geeft de hoek terug die wordt gemeten tussen de zenith (0) en de nadir (180) van point_a naar point_b.

Syntaxis

inclination(point_a, point_b)

Argumenten

  • point_a - geometrie punt

  • point_b - geometrie punt

Voorbeelden

  • inclination( make_point( 5, 10, 0 ), make_point( 5, 10, 5 ) ) → 0.0

  • inclination( make_point( 5, 10, 0 ), make_point( 5, 10, 0 ) ) → 90.0

  • inclination( make_point( 5, 10, 0 ), make_point( 50, 100, 0 ) ) → 90.0

  • inclination( make_point( 5, 10, 0 ), make_point( 5, 10, -5 ) ) → 180.0

14.3.13.39. interior_ring_n

Geeft een specifieke binnenste ring terug uit een geometrie polygoon, of NULL als de invoergeometrie geen polygoon is.

Syntaxis

interior_ring_n(geometry, index)

Argumenten

  • geometry - geometrie polygoon

  • index - index van de terug te geven binnenste ring, waar 1 de eerste binnenste ring is

Voorbeelden

  • geom_to_wkt(interior_ring_n(geom_from_wkt('POLYGON((-1 -1, 4 0, 4 2, 0 2, -1 -1),(-0.1 -0.1, 0.4 0, 0.4 0.2, 0 0.2, -0.1 -0.1),(-1 -1, 4 0, 4 2, 0 2, -1 -1))'),1)) → ‘LineString (-0.1 -0.1, 0.4 0, 0.4 0.2, 0 0.2, -0.1 -0.1))’

14.3.13.40. intersection

Geeft een geometrie terug die het gedeelde deel weergeeft van twee geometrieën.

Syntaxis

intersection(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • geom_to_wkt( intersection( geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4)' ) ) ) → ‘LINESTRING(3 3, 4 4)’

  • geom_to_wkt( intersection( geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ), geom_from_wkt( 'MULTIPOINT(3.5 3.5, 4 5)' ) ) ) → ‘POINT(3.5 3.5)’

Lees verder: algoritme Kruising

14.3.13.41. intersects

Test of een geometrie een andere kruist. Geeft true terug als de geometrieën elkaar ruimtelijk kruisen (een stukje ruimte met elkaar delen) en false als zij dat niet doen.

Syntaxis

intersects(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • intersects( geom_from_wkt( 'POINT(4 4)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → true

  • intersects( geom_from_wkt( 'POINT(4 5)' ), geom_from_wkt( 'POINT(5 5)' ) ) → false

Lees verder: overlay_intersects

14.3.13.42. intersects_bbox

Test of een begrenzingsvak van een geometrie het begrenzingsvak van een andere geometrie overlapt. Geeft true terug als de geometrieën ruimtelijk kruisen met het gedefinieerde begrenzingsvak en false als zij dat niet doen.

Syntaxis

intersects_bbox(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • intersects_bbox( geom_from_wkt( 'POINT(4 5)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → true

  • intersects_bbox( geom_from_wkt( 'POINT(6 5)' ), geom_from_wkt( 'POLYGON((3 3, 4 4, 5 5, 3 3))' ) ) → false

14.3.13.43. is_closed

Geeft true terug als een lijn gesloten is (begin- en eindpunt zijn hetzelfde), of false als een lijn niet gesloten is. Als de geometrie geen lijn is, zal het resultaat NULL zijn.

Syntaxis

is_closed(geometry)

Argumenten

  • geometry - een geometrie lijn

Voorbeelden

  • is_closed(geom_from_wkt('LINESTRING(0 0, 1 1, 2 2)')) → false

  • is_closed(geom_from_wkt('LINESTRING(0 0, 1 1, 2 2, 0 0)')) → true

14.3.13.44. is_empty

Geeft true terug als een geometrie leeg is (zonder coördinaten), false als de geometrie niet leeg is en NULL als er geen geometrie is. Bekijk ook is_empty_or_null.

Syntaxis

is_empty(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • is_empty(geom_from_wkt('LINESTRING(0 0, 1 1, 2 2)')) → false

  • is_empty(geom_from_wkt('LINESTRING EMPTY')) → true

  • is_empty(geom_from_wkt('POINT(7 4)')) → false

  • is_empty(geom_from_wkt('POINT EMPTY')) → true

14.3.13.45. is_empty_or_null

Geeft true terug als een geometrie NULL of leeg is (zonder coördinaten), anders false. Deze functie is hetzelfde als de expressie ‘$geometry IS NULL or is_empty($geometry)’

Syntaxis

is_empty_or_null(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • is_empty_or_null(NULL) → true

  • is_empty_or_null(geom_from_wkt('LINESTRING(0 0, 1 1, 2 2)')) → false

  • is_empty_or_null(geom_from_wkt('LINESTRING EMPTY')) → true

  • is_empty_or_null(geom_from_wkt('POINT(7 4)')) → false

  • is_empty_or_null(geom_from_wkt('POINT EMPTY')) → true

14.3.13.46. is_multipart

Geeft true terug als de geometrie van het type Multi is.

Syntaxis

is_multipart(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • is_multipart(geom_from_wkt('MULTIPOINT ((0 0),(1 1),(2 2))')) → true

  • is_multipart(geom_from_wkt('POINT (0 0)')) → false

14.3.13.47. is_valid

Geeft true terug als een geometrie geldig is; of het goed gevormd is in 2D, overeenkomstig de regels van OGC.

Syntaxis

is_valid(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • is_valid(geom_from_wkt('LINESTRING(0 0, 1 1, 2 2, 0 0)')) → true

  • is_valid(geom_from_wkt('LINESTRING(0 0)')) → false

14.3.13.48. $length

Geeft de lengte van een lijn terug. Als u de lengte van een rand van een polygoon nodig hebt, gebruik dan in plaats hiervan $perimeter. De door deze functie berekende lengte respecteert zowel de instelling van de ellipsoïde voor het huidige project als de instellingen voor eenheden voor afstanden. Als, bijvoorbeeld, een ellipsoïde is ingesteld voor het project, dan zal de berekende lengte ellipsoïde zijn, en als er geen ellipsoïde is ingesteld, dan zal de lengte planimetrisch zijn.

Syntaxis

$length

Voorbeelden

  • $length → 42.4711

14.3.13.49. length

Geeft het aantal tekens in een tekenreeks terug of de lengte van een geometrie lijn.

Variant Tekenreeks

Geeft het aantal tekens in een tekenreeks terug.

Syntaxis

length(string)

Argumenten

  • string - tekenreeks waarvan de lengte moet worden geteld

Voorbeelden

  • length('hello') → 5

Variant Geometrie

Geeft de lengte terug van een geometrie-object lijn. Berekeningen zijn altijd planimetrisch in het ruimtelijke referentiesysteem (SRS) van deze geometrie, en de eenheden van de teruggegeven lengte komen overeen met de eenheden voor het SRS. Dit verschilt van de door de functie $length uitgevoerde berekeningen, die ellipsoïde berekeningen zal uitvoeren, gebaseerd op de instellingen voor de ellipsoïde van het project en eenheden voor afstanden.

Syntaxis

length(geometry)

Argumenten

  • geometry - geometrie-object lijn

Voorbeelden

  • length(geom_from_wkt('LINESTRING(0 0, 4 0)')) → 4.0

14.3.13.50. line_interpolate_angle

Geeft de hoek terug parallel aan de geometrie op een gespecificeerde afstand langs een geometrie lijnstring. Hoeken zijn in graden vanaf Noord met de klok mee.

Syntaxis

line_interpolate_angle(geometry, distance)

Argumenten

  • geometry - een geometrie lijn

  • distance - afstand langs de lijn waarop de hoek moet worden geïnterpoleerd

Voorbeelden

  • line_interpolate_angle(geometry:=geom_from_wkt('LineString(0 0, 10 0)'),distance:=5) → 90.0

14.3.13.51. line_interpolate_point

Geeft het geïnterpoleerde punt terug van een gespecificeerde afstand langs een geometrie lijn.

Syntaxis

line_interpolate_point(geometry, distance)

Argumenten

  • geometry - een geometrie lijn

  • distance - afstand langs de lijn waarop moet worden geïnterpoleerd

Voorbeelden

  • geom_to_wkt(line_interpolate_point(geometry:=geom_from_wkt('LineString(0 0, 10 0)'),distance:=5)) → ‘Point (5 0)’

Lees verder: algoritme Punt op lijn interpoleren

14.3.13.52. line_locate_point

Geeft de afstand langs een lijnstring terug die overeenkomt met het dichtstbijzijnde punt die de lijnstring komt tot nabij een gespecificeerde geometrie punt.

Syntaxis

line_locate_point(geometry, point)

Argumenten

  • geometry - een geometrie lijn

  • point - geometrie punt waarvan het dichtstbijzijnde punt op de lijn moet worden gevonden

Voorbeelden

  • line_locate_point(geometry:=geom_from_wkt('LineString(0 0, 10 0)'),point:=geom_from_wkt('Point(5 0)')) → 5.0

14.3.13.53. line_merge

Geeft een geometrie LineString of MultiLineString terug, waar enige verbonden LineStrings van de geometrie voor de invoer is samengevoegd naar één enkele lijn. Deze functie zal NULL teruggeven als een geometrie wordt doorgegeven die geen LineString/MultiLineString is.

Syntaxis

line_merge(geometry)

Argumenten

  • geometry - een geometrie LineString/MultiLineString

Voorbeelden

  • geom_to_wkt(line_merge(geom_from_wkt('MULTILINESTRING((0 0, 1 1),(1 1, 2 2))'))) → ‘LineString(0 0,1 1,2 2)’

  • geom_to_wkt(line_merge(geom_from_wkt('MULTILINESTRING((0 0, 1 1),(11 1, 21 2))'))) → ‘MultiLineString((0 0, 1 1),(11 1, 21 2)’

14.3.13.54. line_substring

Geeft het gedeelte van een geometrie lijn (of boog) terug dat valt tussen de gespecificeerde begin- en eindafstanden (gemeten vanaf het begin van de lijn). Waarden Z en M worden lineair geïnterpoleerd vanuit bestaande waarden.

Syntaxis

line_substring(geometry, start_distance, end_distance)

Argumenten

  • geometry - een geometrie lijn of boog

  • start_distance - afstand tot begin subtekenreeks

  • end_distance - afstand tot einde substring

Voorbeelden

  • geom_to_wkt(line_substring(geometry:=geom_from_wkt('LineString(0 0, 10 0)'),start_distance:=2,end_distance=6)) → ‘LineString (2 0,6 0)’

Lees verder: algoritme Lijn subdeel

14.3.13.55. m

Geeft de waarde M van een geometrie punt terug.

Syntaxis

m(geometry)

Argumenten

  • geometry - een geometrie punt

Voorbeelden

  • m( geom_from_wkt( 'POINTM(2 5 4)' ) ) → 4

14.3.13.56. m_max

Geeft de maximale waarde M (measure) van een geometrie terug.

Syntaxis

m_max(geometry)

Argumenten

  • geometry - een geometrie die waarden M bevat

Voorbeelden

  • m_max( make_point_m( 0,0,1 ) ) → 1

  • m_max(make_line( make_point_m( 0,0,1 ), make_point_m( -1,-1,2 ), make_point_m( -2,-2,0 ) ) ) → 2

14.3.13.57. m_min

Geeft de minimale waarde M (measure) van een geometrie terug.

Syntaxis

m_min(geometry)

Argumenten

  • geometry - een geometrie die waarden M bevat

Voorbeelden

  • m_min( make_point_m( 0,0,1 ) ) → 1

  • m_min(make_line( make_point_m( 0,0,1 ), make_point_m( -1,-1,2 ), make_point_m( -2,-2,0 ) ) ) → 0

14.3.13.58. main_angle

Geeft de hoofdhoek van een geometrie terug (met de wijzers van de klok mee, in graden vanaf noord), die de hoek weergeeft van het georiënteerde minimale begrenzingsrechthoek die de geometrie volledig bedekt.

Syntaxis

main_angle(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • main_angle(geom_from_wkt('Polygon ((321577 129614, 321581 129618, 321585 129615, 321581 129610, 321577 129614))')) → 38.66

14.3.13.59. make_circle

Maakt een cirkelpolygoon.

Syntaxis

make_circle(center, radius, [segments=36])

[] markeert optionele argumenten

Argumenten

  • center - middelpunt van de cirkel

  • radius - straal van de cirkel

  • segments - optioneel argument voor segmenteren van de polygoon. Standaard is deze waarde 36

Voorbeelden

  • geom_to_wkt(make_circle(make_point(10,10), 5, 4)) → ‘Polygon ((10 15, 15 10, 10 5, 5 10, 10 15))’

  • geom_to_wkt(make_circle(make_point(10,10,5), 5, 4)) → ‘PolygonZ ((10 15 5, 15 10 5, 10 5 5, 5 10 5, 10 15 5))’

  • geom_to_wkt(make_circle(make_point(10,10,5,30), 5, 4)) → ‘PolygonZM ((10 15 5 30, 15 10 5 30, 10 5 5 30, 5 10 5 30, 10 15 5 30))’

14.3.13.60. make_ellipse

Maakt een ellips-polygoon

Syntaxis

make_ellipse(center, semi_major_axis, semi_minor_axis, azimuth, [segments=36])

[] markeert optionele argumenten

Argumenten

  • center - middelpunt van de ellips

  • semi_major_axis - semi-hoofdas van de ellips

  • semi_minor_axis - semi-hulpas van de ellips

  • azimuth - oriëntatie van de ellips

  • segments - optioneel argument voor segmenteren van de polygoon. Standaard is deze waarde 36

Voorbeelden

  • geom_to_wkt(make_ellipse(make_point(10,10), 5, 2, 90, 4)) → ‘Polygon ((15 10, 10 8, 5 10, 10 12, 15 10))’

  • geom_to_wkt(make_ellipse(make_point(10,10,5), 5, 2, 90, 4)) → ‘PolygonZ ((15 10 5, 10 8 5, 5 10 5, 10 12 5, 15 10 5))’

  • geom_to_wkt(make_ellipse(make_point(10,10,5,30), 5, 2, 90, 4)) → ‘PolygonZM ((15 10 5 30, 10 8 5 30, 5 10 5 30, 10 12 5 30, 15 10 5 30))’

14.3.13.61. make_line

Maakt een lijngeometrie uit een serie van puntgeometrieën.

Variant Lijst met argumenten

Punten van de lijn worden als afzonderlijke argumenten gespecificeerd voor de functie.

Syntaxis

make_line(point1, point2, …)

Argumenten

  • point - een geometrie punt (of array met punten)

Voorbeelden

  • geom_to_wkt(make_line(make_point(2,4),make_point(3,5))) → ‘LineString (2 4, 3 5)’

  • geom_to_wkt(make_line(make_point(2,4),make_point(3,5),make_point(9,7))) → ‘LineString (2 4, 3 5, 9 7)’

Variant Array

Punten van de lijn worden als een array van punten gespecificeerd.

Syntaxis

make_line(array)

Argumenten

  • array - array met punten

Voorbeelden

  • geom_to_wkt(make_line(array(make_point(2,4),make_point(3,5),make_point(9,7)))) → ‘LineString (2 4, 3 5, 9 7)’

14.3.13.62. make_point

Maakt een geometrie punt van X- en Y-waarden (en optioneel waarden Z of M)

Syntaxis

make_point(x, y, [z], [m])

[] markeert optionele argumenten

Argumenten

  • x - X-coördinaat van punt

  • y - Y-coördinaat van punt

  • z - optioneel Z-coördinaat van punt

  • m - optionele waarde M van punt

Voorbeelden

  • geom_to_wkt(make_point(2,4)) → ‘Point (2 4)’

  • geom_to_wkt(make_point(2,4,6)) → ‘PointZ (2 4 6)’

  • geom_to_wkt(make_point(2,4,6,8)) → ‘PointZM (2 4 6 8)’

14.3.13.63. make_point_m

Maakt een geometrie punt uit X- en Y-coördinaten en waarde M.

Syntaxis

make_point_m(x, y, m)

Argumenten

  • x - X-coördinaat van punt

  • y - Y-coördinaat van punt

  • m - waarde M van punt

Voorbeelden

  • geom_to_wkt(make_point_m(2,4,6)) → ‘PointM (2 4 6)’

14.3.13.64. make_polygon

Maakt een geometrie polygoon van een buitenste ring en optioneel een verzameling van geometrieën van binnenste ringen

Syntaxis

make_polygon(outerRing, [innerRing1], [innerRing2], …)

[] markeert optionele argumenten

Argumenten

  • outerRing - geometrie gesloten lijn voor de buitenste ring van de polygoon

  • innerRing - optionele geometrie gesloten lijn voor binnenste ring

Voorbeelden

  • geom_to_wkt(make_polygon(geom_from_wkt('LINESTRING( 0 0, 0 1, 1 1, 1 0, 0 0 )'))) → ‘Polygon ((0 0, 0 1, 1 1, 1 0, 0 0))’

  • geom_to_wkt(make_polygon(geom_from_wkt('LINESTRING( 0 0, 0 1, 1 1, 1 0, 0 0 )'),geom_from_wkt('LINESTRING( 0.1 0.1, 0.1 0.2, 0.2 0.2, 0.2 0.1, 0.1 0.1 )'),geom_from_wkt('LINESTRING( 0.8 0.8, 0.8 0.9, 0.9 0.9, 0.9 0.8, 0.8 0.8 )'))) → ‘Polygon ((0 0, 0 1, 1 1, 1 0, 0 0),(0.1 0.1, 0.1 0.2, 0.2 0.2, 0.2 0.1, 0.1 0.1),(0.8 0.8, 0.8 0.9, 0.9 0.9, 0.9 0.8, 0.8 0.8))’

14.3.13.65. make_rectangle_3points

Maakt een rechthoek uit 3 punten.

Syntaxis

make_rectangle_3points(point1, point2, point3, [option=0])

[] markeert optionele argumenten

Argumenten

  • point1 - Eerste punt.

  • point2 - Tweede punt.

  • point3 - Derde punt.

  • option - Een optioneel argument om de rechthoek te construeren. Standaard is deze waarde 0. Waarde mag 0 (afstand) of 1 (geprojecteerd) zijn. Optie afstand: Tweede afstand is gelijk aan de afstand tussen het 2e en 3e punt. Optie geprojecteerd: Tweede afstand is gelijk aan de afstand van de loodrechte projectie van het 3e punt op het segment of het verlengde daarvan.

Voorbeelden

  • geom_to_wkt(make_rectangle(make_point(0, 0), make_point(0,5), make_point(5, 5), 0))) → ‘Polygon ((0 0, 0 5, 5 5, 5 0, 0 0))’

  • geom_to_wkt(make_rectangle(make_point(0, 0), make_point(0,5), make_point(5, 3), 1))) → ‘Polygon ((0 0, 0 5, 5 5, 5 0, 0 0))’

14.3.13.66. make_regular_polygon

Maakt een normale polygoon.

Syntaxis

make_regular_polygon(center, radius, number_sides, [circle=0])

[] markeert optionele argumenten

Argumenten

  • center - middelpunt van de normale polygoon

  • radius - tweede punt. Het eerste als de normale polygoon wordt ingeschreven. Het middelpunt van de eerste zijde als de normale polygoon wordt omschreven.

  • number_sides - Aantal zijden/randen van de normale polygoon

  • circle - Optioneel argument om de normale polygoon te construeren. Standaard is deze waarde 0. Waarde mag zijn 0 (ingeschreven) of 1 (omschreven)

Voorbeelden

  • geom_to_wkt(make_regular_polygon(make_point(0,0), make_point(0,5), 5)) → ‘Polygon ((0 5, 4.76 1.55, 2.94 -4.05, -2.94 -4.05, -4.76 1.55, 0 5))’

  • geom_to_wkt(make_regular_polygon(make_point(0,0), project(make_point(0,0), 4.0451, radians(36)), 5)) → ‘Polygon ((0 5, 4.76 1.55, 2.94 -4.05, -2.94 -4.05, -4.76 1.55, 0 5))’

14.3.13.67. make_square

Maakt een vierkant uit een diagonaal.

Syntaxis

make_square(point1, point2)

Argumenten

  • point1 - Eerste punt van de diagonaal

  • point2 - Laatste punt van de diagonaal

Voorbeelden

  • geom_to_wkt(make_square( make_point(0,0), make_point(5,5))) → ‘Polygon ((0 0, -0 5, 5 5, 5 0, 0 0))’

  • geom_to_wkt(make_square( make_point(5,0), make_point(5,5))) → ‘Polygon ((5 0, 2.5 2.5, 5 5, 7.5 2.5, 5 0))’

14.3.13.68. make_triangle

Maakt een driehoekige polygoon.

Syntaxis

make_triangle(point1, point2, point3)

Argumenten

  • point1 - eerste punt van de driehoek

  • point2 - tweede punt van de driehoek

  • point3 - derde punt van de driehoek

Voorbeelden

  • geom_to_wkt(make_triangle(make_point(0,0), make_point(5,5), make_point(0,10))) → ‘Triangle ((0 0, 5 5, 0 10, 0 0))’

  • geom_to_wkt(boundary(make_triangle(make_point(0,0), make_point(5,5), make_point(0,10)))) → ‘LineString (0 0, 5 5, 0 10, 0 0)’

14.3.13.69. minimal_circle

Geeft de minimale omsluitende cirkel van een geometrie terug. Dit vertegenwoordigt de minimale cirkel die alle geometrieën binnen de verzameling omsluit.

Syntaxis

minimal_circle(geometry, [segments=36])

[] markeert optionele argumenten

Argumenten

  • geometry - een geometrie

  • segments - optioneel argument voor segmenteren van de polygoon. Standaard is deze waarde 36

Voorbeelden

  • geom_to_wkt( minimal_circle( geom_from_wkt( 'LINESTRING(0 5, 0 -5, 2 1)' ), 4 ) ) → ‘Polygon ((0 5, 5 -0, -0 -5, -5 0, 0 5))’

  • geom_to_wkt( minimal_circle( geom_from_wkt( 'MULTIPOINT(1 2, 3 4, 3 2)' ), 4 ) ) → ‘Polygon ((3 4, 3 2, 1 2, 1 4, 3 4))’

Lees verder: algoritme Minimale omsluitende cirkels

14.3.13.70. nodes_to_points

Geeft een geometrie multipunt terug, bestaande uit elke knoop in de invoergeometrie.

Syntaxis

nodes_to_points(geometry, [ignore_closing_nodes=false])

[] markeert optionele argumenten

Argumenten

  • geometry - object geometrie

  • ignore_closing_nodes - optioneel argument dat specificeert of duplicaat-knopen, die lijnen of ringen van polygonen sluiten, ook moeten worden opgenomen. Standaard is false, stel in op true om te vermijden dat deze duplicaat-knopen worden opgenomen in de verzameling voor de uitvoer.

Voorbeelden

  • geom_to_wkt(nodes_to_points(geom_from_wkt('LINESTRING(0 0, 1 1, 2 2)'))) → ‘MultiPoint ((0 0),(1 1),(2 2))’

  • geom_to_wkt(nodes_to_points(geom_from_wkt('POLYGON((-1 -1, 4 0, 4 2, 0 2, -1 -1))'),true)) → ‘MultiPoint ((-1 -1),(4 0),(4 2),(0 2))’

Lees verder: algoritme Punten uitnemen

14.3.13.71. num_geometries

Geeft het aantal geometrieën terug uit een verzameling geometrieën, of NULL als de invoergeometrie geen verzameling is.

Syntaxis

num_geometries(geometry)

Argumenten

  • geometry - verzameling geometrieën

Voorbeelden

  • num_geometries(geom_from_wkt('GEOMETRYCOLLECTION(POINT(0 1), POINT(0 0), POINT(1 0), POINT(1 1))')) → 4

14.3.13.72. num_interior_rings

Geeft het aantal binnenste ringen terug uit een polygoon of verzameling van geometrie, of NULL als de invoergeometrie geen polygoon of verzameling van geometrie is.

Syntaxis

num_interior_rings(geometry)

Argumenten

  • geometry - invoergeometrie

Voorbeelden

  • num_interior_rings(geom_from_wkt('POLYGON((-1 -1, 4 0, 4 2, 0 2, -1 -1),(-0.1 -0.1, 0.4 0, 0.4 0.2, 0 0.2, -0.1 -0.1))')) → 1

14.3.13.73. num_points

Geeft het aantal punten in een geometrie terug.

Syntaxis

num_points(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • num_points($geometry) → aantal punten in de geometrie van het huidige object

14.3.13.74. num_rings

Geeft het aantal ringen (inclusief buitenste ringen) terug uit een polygoon of verzameling van geometrie, of NULL als de invoergeometrie geen polygoon of verzameling is.

Syntaxis

num_rings(geometry)

Argumenten

  • geometry - invoergeometrie

Voorbeelden

  • num_rings(geom_from_wkt('POLYGON((-1 -1, 4 0, 4 2, 0 2, -1 -1),(-0.1 -0.1, 0.4 0, 0.4 0.2, 0 0.2, -0.1 -0.1))')) → 2

14.3.13.75. offset_curve

Geeft een geometrie terug die wordt gevormd door de verspringing van een geometrie lijn naar de kant. Afstanden zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

offset_curve(geometry, distance, [segments=8], [join=1], [miter_limit=2.0])

[] markeert optionele argumenten

Argumenten

  • geometry - een geometrie (multi)lijn

  • distance - afstand voor de verschuiving. Positieve waarden zullen links van de lijn worden gebufferd, negatieve waarden aan de rechterkant

  • segments - aantal te gebruiken segmenten om een kwartcirkel weer te geven als een afgeronde stijl voor samenvoegen wordt gebruikt. Een groter aantal resulteert in een gladdere lijn met meer knopen.

  • join - stijl voor samenvoegen van hoeken, waar 1 = rond, 2 = verstek en 3 = afgeschuind

  • miter_limit - limiet voor de verhouding van het verstek, gebruikt voor zeer scherpe hoeken (alleen bij het gebruiken van samenvoegingen in verstek)

Voorbeelden

  • offset_curve($geometry, 10.5) → verschuiving van de lijn naar links met 10.5 eenheden

  • offset_curve($geometry, -10.5) → verschuiving van de lijn naar rechts met 10.5 eenheden

  • offset_curve($geometry, 10.5, segments=16, join=1) → verschuiving van de lijn naar links met 10.5 eenheden, meer segmenten gebruikend wat resulteert in een gladdere boog

  • offset_curve($geometry, 10.5, join=3) → verschuiving van de lijn naar links met 10.5 eenheden, met een afgeschuinde samenvoeging

Lees verder: algoritme Verspringing lijnen

14.3.13.76. order_parts

Sorteert de delen van een MultiGeometrie op opgegeven criteria

Syntaxis

order_parts(geometry, orderby, ascending)

Argumenten

  • geometry - een geometrie van het type multi

  • orderby - een tekenreeks voor een expressie die de criteria voor de volgorde definieert

  • ascending - Booleaanse waarde, True voor oplopend, False voor aflopend

Voorbeelden

  • geom_to_wkt(order_parts(geom_from_wkt('MultiPolygon (((1 1, 5 1, 5 5, 1 5, 1 1)),((1 1, 9 1, 9 9, 1 9, 1 1)))'), 'area($geometry)', False)) → ‘MultiPolygon (((1 1, 9 1, 9 9, 1 9, 1 1)),((1 1, 5 1, 5 5, 1 5, 1 1)))’

  • geom_to_wkt(order_parts(geom_from_wkt('LineString(1 2, 3 2, 4 3)'), '1', True)) → ‘LineString(1 2, 3 2, 4 3)’

14.3.13.77. oriented_bbox

Geeft een geometrie terug die het minimale georiënteerde begrenzingsvak van een invoergeometrie weergeeft.

Syntaxis

oriented_bbox(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • geom_to_wkt( oriented_bbox( geom_from_wkt( 'MULTIPOINT(1 2, 3 4, 3 2)' ) ) ) → ‘Polygon ((3 2, 3 4, 1 4, 1 2, 3 2))’

Lees verder: algoritme Georiënteerd minimum begrenzingsvak

14.3.13.78. overlaps

Test of een geometrie een andere overlapt. Geeft true terug als de geometrieën ruimte delen, van dezelfde dimensie zijn, maar niet volledig door elkaar worden omvat.

Syntaxis

overlaps(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • overlaps( geom_from_wkt( 'LINESTRING(3 5, 4 4, 5 5, 5 3)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → true

  • overlaps( geom_from_wkt( 'LINESTRING(0 0, 1 1)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → false

14.3.13.79. overlay_contains

Geeft terug of het huidige object ruimtelijk minstens één object uit een doellaag bevat, of een array van op een expressie gebaseerde resultaten voor de objecten in de doellaag die zijn opgenomen in het huidige object.

Lees meer over het onderliggende predikaat van GEOS “Contains”, zoals beschreven in de functie voor PostGIS ST_Contains.

Syntaxis

overlay_contains(layer, [expression], [filter], [limit], [cache=false])

[] markeert optionele argumenten

Argumenten

  • layer - de laag waarvan de overleg wordt gecontroleerd

  • expression - een optionele expressie die moet worden geëvalueerd met de objecten van de doellaag. Indien niet ingesteld zal de functie slechts een Booleaanse waarde teruggeven die aangeeft of er tenminste één overeenkomst is.

  • filter - een optionele expressie om de te controleren doelobjecten te filteren. Indien niet ingesteld zullen alle objecten worden gecontroleerd.

  • limit - een optioneel geheel getal (integer) om het aantal overeenkomende objecten te beperken. Indien niet ingesteld zullen alle overeenkomende objecten worden teruggegeven.

  • cache - stel dit in op true om een lokale ruimtelijke index te bouwen (dit is meestal niet gewenst, tenzij u werkt met een bijzonder trage gegevensprovider)

Voorbeelden

  • overlay_contains('regions') → true als het huidige object ruimtelijk een region bevat

  • overlay_contains('regions', filter:= population > 10000) → true als het huidige object ruimtelijk een region bevat met een population die groter is dan 10000

  • overlay_contains('regions', name) → een array van namen, voor de regions die zijn opgenomen in het huidige object

  • array_to_string(overlay_contains('regions', name)) → een tekenreeks als een kommagescheiden lijst van namen, voor de regions die zijn opgenomen in het huidige object

  • array_length(overlay_contains('regions', name)) → het aantal regions dat is opgenomen in het huidige object

  • array_sort(overlay_contains(layer:='regions', expression:="name", filter:= population > 10000)) → een gesorteerde array van namen, voor de regions die zijn opgenomen in het huidige object en met een population die groter is dan 10000

  • overlay_contains(layer:='regions', expression:= geom_to_wkt($geometry), limit:=2) → een array van geometrieën (in WKT), voor maximaal twee regions die zijn opgenomen in het huidige object

Lees verder: contains, array bewerken, algoritme Selecteren op plaats

14.3.13.80. overlay_crosses

Geeft terug of het huidige object ruimtelijk kruist met minstens één object uit een doellaag, of een array van op een expressie gebaseerde resultaten voor de objecten in de doellaag die worden gekruist door het huidige object.

Lees meer over het onderliggende predikaat van GEOS “Crosses”, zoals beschreven in de functie voor PostGIS ST_Crosses.

Syntaxis

overlay_crosses(layer, [expression], [filter], [limit], [cache=false])

[] markeert optionele argumenten

Argumenten

  • layer - de laag waarvan de overleg wordt gecontroleerd

  • expression - een optionele expressie die moet worden geëvalueerd met de objecten van de doellaag. Indien niet ingesteld zal de functie slechts een Booleaanse waarde teruggeven die aangeeft of er tenminste één overeenkomst is.

  • filter - een optionele expressie om de te controleren doelobjecten te filteren. Indien niet ingesteld zullen alle objecten worden gecontroleerd.

  • limit - een optioneel geheel getal (integer) om het aantal overeenkomende objecten te beperken. Indien niet ingesteld zullen alle overeenkomende objecten worden teruggegeven.

  • cache - stel dit in op true om een lokale ruimtelijke index te bouwen (dit is meestal niet gewenst, tenzij u werkt met een bijzonder trage gegevensprovider)

Voorbeelden

  • overlay_crosses('regions') → true als het huidige object ruimtelijk kruist met een region

  • overlay_crosses('regions', filter:= population > 10000) → true als het huidige object ruimtelijk kruist met een region met een population die groter is dan 10000

  • overlay_crosses('regions', name) → een array van namen, voor de regions die worden gekruist door het huidige object

  • array_to_string(overlay_crosses('regions', name)) → een tekenreeks als een kommagescheiden lijst van namen, voor de regions die worden gekruist door het huidige object

  • array_sort(overlay_crosses(layer:='regions', expression:="name", filter:= population > 10000)) → een gesorteerde array van namen, voor de regions die worden gekruist door het huidige object en met een population die groter is dan 10000

  • overlay_crosses(layer:='regions', expression:= geom_to_wkt($geometry), limit:=2) → een array van geometrieën (in WKT), voor maximaal twee regions die worden gekruist door het huidige object

Lees verder: crosses, array bewerken, algoritme Selecteren op plaats

14.3.13.81. overlay_disjoint

Geeft terug of het huidige object ruimtelijk is losgekoppeld van alle objecten uit een doellaag bevat, of een array van op een expressie gebaseerde resultaten voor de objecten in de doellaag die zijn losgekoppeld van het huidige object.

Lees meer over het onderliggende predikaat van GEOS “Disjoint”, zoals beschreven in de functie voor PostGIS ST_Disjoint.

Syntaxis

overlay_disjoint(layer, [expression], [filter], [limit], [cache=false])

[] markeert optionele argumenten

Argumenten

  • layer - de laag waarvan de overleg wordt gecontroleerd

  • expression - een optionele expressie die moet worden geëvalueerd met de objecten van de doellaag. Indien niet ingesteld zal de functie slechts een Booleaanse waarde teruggeven die aangeeft of er tenminste één overeenkomst is.

  • filter - een optionele expressie om de te controleren doelobjecten te filteren. Indien niet ingesteld zullen alle objecten worden gecontroleerd.

  • limit - een optioneel geheel getal (integer) om het aantal overeenkomende objecten te beperken. Indien niet ingesteld zullen alle overeenkomende objecten worden teruggegeven.

  • cache - stel dit in op true om een lokale ruimtelijke index te bouwen (dit is meestal niet gewenst, tenzij u werkt met een bijzonder trage gegevensprovider)

Voorbeelden

  • overlay_disjoint('regions') → true als het huidige object ruimtelijk is losgekoppeld van alle regions

  • overlay_disjoint('regions', filter:= population > 10000) → true als het huidige object ruimtelijk is losgekoppeld van alle regions met een population die groter is dan 10000

  • overlay_disjoint('regions', name) → een array van namen, voor de regions die ruimtelijk zijn losgekoppeld van het huidige object

  • array_to_string(overlay_disjoint('regions', name)) → een tekenreeks als een kommagescheiden lijst van namen, voor de regions die ruimtelijk zijn losgekoppeld van het huidige object

  • array_sort(overlay_disjoint(layer:='regions', expression:="name", filter:= population > 10000)) → een gesorteerde array van namen, voor de regions die ruimtelijk zijn losgekoppeld van het huidige object en met een population die groter is dan 10000

  • overlay_disjoint(layer:='regions', expression:= geom_to_wkt($geometry), limit:=2) → een array van geometrieën (in WKT), voor maximaal twee regions die ruimtelijk zijn losgekoppeld van het huidige object

Lees verder: disjoint, array bewerken, algoritme Selecteren op plaats

14.3.13.82. overlay_equals

Geeft terug of het huidige object ruimtelijk gelijk is aan minstens één object uit een doellaag, of een array van op een expressie gebaseerde resultaten voor de objecten in de doellaag die ruimtelijk gelijk zijn aan het huidige object.

Lees meer over het onderliggende predikaat van GEOS “Equals”, zoals beschreven in de functie voor PostGIS ST_Equals.

Syntaxis

overlay_equals(layer, [expression], [filter], [limit], [cache=false])

[] markeert optionele argumenten

Argumenten

  • layer - de laag waarvan de overleg wordt gecontroleerd

  • expression - een optionele expressie die moet worden geëvalueerd met de objecten van de doellaag. Indien niet ingesteld zal de functie slechts een Booleaanse waarde teruggeven die aangeeft of er tenminste één overeenkomst is.

  • filter - een optionele expressie om de te controleren doelobjecten te filteren. Indien niet ingesteld zullen alle objecten worden gecontroleerd.

  • limit - een optioneel geheel getal (integer) om het aantal overeenkomende objecten te beperken. Indien niet ingesteld zullen alle overeenkomende objecten worden teruggegeven.

  • cache - stel dit in op true om een lokale ruimtelijke index te bouwen (dit is meestal niet gewenst, tenzij u werkt met een bijzonder trage gegevensprovider)

Voorbeelden

  • overlay_equals('regions') → true als het huidige object ruimtelijk gelijk is aan een region

  • overlay_equals('regions', filter:= population > 10000) → true als het huidige object ruimtelijk gelijk is aan een region met een population die groter is dan 10000

  • overlay_equals('regions', name) → een array van namen, voor de regions die ruimtelijk gelijk zijn aan het huidige object

  • array_to_string(overlay_equals('regions', name)) → een tekenreeks als een kommagescheiden lijst van namen, voor de regions die ruimtelijk gelijk zijn aan het huidige object

  • array_sort(overlay_equals(layer:='regions', expression:="name", filter:= population > 10000)) → een gesorteerde array van namen, voor de regions die ruimtelijk gelijk zijn aan het huidige object en met een population die groter is dan 10000

  • overlay_equals(layer:='regions', expression:= geom_to_wkt($geometry), limit:=2) → een array van geometrieën (in WKT), voor maximaal twee regions die ruimtelijk gelijk zijn aan het huidige object

Lees verder: array bewerken, algoritme Selecteren op plaats

14.3.13.83. overlay_intersects

Geeft terug of het huidige object ruimtelijk minstens één object uit een doellaag kruist, of een array van op een expressie gebaseerde resultaten voor de objecten in de doellaag die het huidige object kruist.

Lees meer over het onderliggende predikaat van GEOS “Intersects”, zoals beschreven in de functie voor PostGIS ST_Intersects.

Syntaxis

overlay_intersects(layer, [expression], [filter], [limit], [cache=false])

[] markeert optionele argumenten

Argumenten

  • layer - de laag waarvan de overleg wordt gecontroleerd

  • expression - een optionele expressie die moet worden geëvalueerd met de objecten van de doellaag. Indien niet ingesteld zal de functie slechts een Booleaanse waarde teruggeven die aangeeft of er tenminste één overeenkomst is.

  • filter - een optionele expressie om de te controleren doelobjecten te filteren. Indien niet ingesteld zullen alle objecten worden gecontroleerd.

  • limit - een optioneel geheel getal (integer) om het aantal overeenkomende objecten te beperken. Indien niet ingesteld zullen alle overeenkomende objecten worden teruggegeven.

  • cache - stel dit in op true om een lokale ruimtelijke index te bouwen (dit is meestal niet gewenst, tenzij u werkt met een bijzonder trage gegevensprovider)

Voorbeelden

  • overlay_crosses('regions') → true als het huidige object ruimtelijk een region kruist

  • overlay_intersects('regions', filter:= population > 10000) → true als het huidige object ruimtelijk een region kruist met een population die groter is dan 10000

  • overlay_intersects('regions', name) → een array van namen, voor de regions gekruist door het huidige object

  • array_to_string(overlay_intersects('regions', name)) → een tekenreeks als een kommagescheiden lijst van namen, voor de regions gekruist door het huidige object

  • array_sort(overlay_intersects(layer:='regions', expression:="name", filter:= population > 10000)) → een gesorteerde array van namen, voor de regions gekruist door het huidige object en met een population die groter is dan 10000

  • overlay_intersects(layer:='regions', expression:= geom_to_wkt($geometry), limit:=2) → een array van geometrieën (in WKT), voor maximaal twee regions gekruist door het huidige object

Lees verder: intersects, array bewerken, algoritme Selecteren op plaats

14.3.13.84. overlay_nearest

Geeft terug of het huidige object binnen een bepaalde afstand object(en) heeft uit een doellaag, of een array van op een expressie gebaseerde resultaten voor de objecten in de doellaag binnen een bepaalde afstand van het huidige object.

Opmerking: Deze functie kan erg traag zijn en veel geheugen gebruiken voor grote lagen.

Syntaxis

overlay_nearest(layer, [expression], [filter], [limit=1], [max_distance], [cache=false])

[] markeert optionele argumenten

Argumenten

  • layer - de doellaag

  • expression - een optionele expressie die moet worden geëvalueerd met de objecten van de doellaag. Indien niet ingesteld zal de functie slechts een Booleaanse waarde teruggeven die aangeeft of er tenminste één overeenkomst is.

  • filter - een optionele expressie om de te controleren doelobjecten te filteren. Indien niet ingesteld zullen alle objecten worden gebruikt.

  • limit - een optioneel geheel getal (integer) om het aantal overeenkomende objecten te beperken. Indien niet ingesteld zal alleen het dichtstbijzijnde object worden teruggegeven. Indien ingesteld op -1, geeft het alle overeenkomende objecten terug.

  • max_distance - een optionele afstand om het zoeken naar overeenkomende objecten te beperken. Indien niet ingesteld zullen alle objecten van de doellaag worden gebruikt.

  • cache - stel dit in op true om een lokale ruimtelijke index te bouwen (dit is meestal niet gewenst, tenzij u werkt met een bijzonder trage gegevensprovider)

Voorbeelden

  • overlay_nearest('airports') → true als de laag “airports” minstens één object heeft

  • overlay_nearest('airports', max_distance:= 5000) → true als er een vliegveld is binnen een afstand van 5000 kaarteenheden vanaf het huidige object

  • overlay_nearest('airports', name) → de naam van het dichtstbijzijnde vliegveld tot het huidige object, als een array

  • array_to_string(overlay_nearest('airports', name)) → de naam van het dichtstbijzijnde vliegveld tot het huidige object, als een tekenreeks

  • overlay_nearest(layer:='airports', expression:= name, max_distance:= 5000) → de naam van het dichtstbijzijnde vliegveld binnen een afstand van 5000 kaarteenheden vanaf het huidige object, als een array

  • overlay_nearest(layer:='airports', expression:="name", filter:= "Use"='Civilian', limit:=3) → een array van namen, voor ten hoogste drie dichtstbijzijnde burgerlijke vliegvelden, gesorteerd op afstand

  • overlay_nearest(layer:='airports', expression:="name", limit:= -1, max_distance:= 5000) → een array van namen, voor alle vliegvelden binnen een afstand van 5000 kaarteenheden vanaf het huidige object, gesorteerd op afstand

Lees verder: array bewerken, algoritme Koppel attributen op dichtstbijzijnde

14.3.13.85. overlay_touches

Geeft terug of het huidige object ruimtelijk één object uit een doellaag raakt, of een array van op een expressie gebaseerde resultaten voor de objecten in de doellaag die worden geraakt door het huidige object.

Lees meer over het onderliggende predikaat van GEOS “Touches”, zoals beschreven in de functie voor PostGIS ST_Touches.

Syntaxis

overlay_touches(layer, [expression], [filter], [limit], [cache=false])

[] markeert optionele argumenten

Argumenten

  • layer - de laag waarvan de overleg wordt gecontroleerd

  • expression - een optionele expressie die moet worden geëvalueerd met de objecten van de doellaag. Indien niet ingesteld zal de functie slechts een Booleaanse waarde teruggeven die aangeeft of er tenminste één overeenkomst is.

  • filter - een optionele expressie om de te controleren doelobjecten te filteren. Indien niet ingesteld zullen alle objecten worden gecontroleerd.

  • limit - een optioneel geheel getal (integer) om het aantal overeenkomende objecten te beperken. Indien niet ingesteld zullen alle overeenkomende objecten worden teruggegeven.

  • cache - stel dit in op true om een lokale ruimtelijke index te bouwen (dit is meestal niet gewenst, tenzij u werkt met een bijzonder trage gegevensprovider)

Voorbeelden

  • overlay_touches('regions') → true als het huidige object ruimtelijk een region raakt

  • overlay_touches('regions', filter:= population > 10000) → true als het huidige object ruimtelijk een region raakt met een population die groter is dan 10000

  • overlay_touches('regions', name) → een array van namen, voor de regions die worden geraakt door het huidige object

  • string_to_array(overlay_touches('regions', name)) → een tekenreeks als een kommagescheiden lijst van namen, voor de regions die worden geraakt door het huidige object

  • array_sort(overlay_touches(layer:='regions', expression:="name", filter:= population > 10000)) → een gesorteerde array van namen, voor de regions die worden geraakt door het huidige object en met een population die groter is dan 10000

  • overlay_touches(layer:='regions', expression:= geom_to_wkt($geometry), limit:=2) → een array van geometrieën (in WKT), voor maximaal twee regions die worden geraakt door het huidige object

Lees verder: touches, array bewerken, algoritme Selecteren op plaats

14.3.13.86. overlay_within

Geeft terug of het huidige object ruimtelijk binnen minstens één object uit een doellaag ligt, of een array van op een expressie gebaseerde resultaten voor de objecten in de doellaag die het huidige object bevatten.

Lees meer over het onderliggende predikaat van GEOS “Within”, zoals beschreven in de functie voor PostGIS ST_Within.

Syntaxis

overlay_within(layer, [expression], [filter], [limit], [cache=false])

[] markeert optionele argumenten

Argumenten

  • layer - de laag waarvan de overleg wordt gecontroleerd

  • expression - een optionele expressie die moet worden geëvalueerd met de objecten van de doellaag. Indien niet ingesteld zal de functie slechts een Booleaanse waarde teruggeven die aangeeft of er tenminste één overeenkomst is.

  • filter - een optionele expressie om de te controleren doelobjecten te filteren. Indien niet ingesteld zullen alle objecten worden gecontroleerd.

  • limit - een optioneel geheel getal (integer) om het aantal overeenkomende objecten te beperken. Indien niet ingesteld zullen alle overeenkomende objecten worden teruggegeven.

  • cache - stel dit in op true om een lokale ruimtelijke index te bouwen (dit is meestal niet gewenst, tenzij u werkt met een bijzonder trage gegevensprovider)

Voorbeelden

  • overlay_within('regions') → true als het huidige object ruimtelijk in een region ligt

  • overlay_within('regions', filter:= population > 10000) → true als het huidige object ruimtelijk in een region ligt met een population die groter is dan 10000

  • overlay_within('regions', name) → een array van namen, voor de regions die het huidige object bevatten

  • array_to_string(overlay_within('regions', name)) → een tekenreeks als een kommagescheiden lijst van namen, voor de regions die het huidige object bevatten

  • array_sort(overlay_within(layer:='regions', expression:="name", filter:= population > 10000)) → een gesorteerde array van namen, voor de regions die het huidige object bevatten en met een population die groter is dan 10000

  • overlay_within(layer:='regions', expression:= geom_to_wkt($geometry), limit:=2) → een array van geometrieën (in WKT), voor maximaal twee regions die het huidige object bevatten

Lees verder: within, array bewerken, algoritme Selecteren op plaats

14.3.13.87. $perimeter

Geeft de lengte van de perimeter van het huidige object terug. De door deze functie berekende perimeter respecteert zowel de instelling van de ellipsoïde voor het huidige project als de instellingen voor eenheden voor afstand. Als, bijvoorbeeld, een ellipsoïde is ingesteld voor het project, dan zal de berekende perimeter ellipsoïde zijn, en als er geen ellipsoïde is ingesteld, dan zal de perimeter planimetrisch zijn.

Syntaxis

$perimeter

Voorbeelden

  • $perimeter → 42

14.3.13.88. perimeter

Geeft de perimeter terug van een geometrie-object polygoon. Berekeningen zijn altijd planimetrisch in het ruimtelijke referentiesysteem (SRS) van deze geometrie, en de eenheden van de teruggegeven perimeter komen overeen met de eenheden voor het SRS. Dit verschilt van de door de functie $perimeter uitgevoerde berekeningen, die ellipsoïde berekeningen zal uitvoeren, gebaseerd op de instellingen voor de ellipsoïde van het project en eenheden voor de afstanden.

Syntaxis

perimeter(geometry)

Argumenten

  • geometry - geometrie-object polygoon

Voorbeelden

  • perimeter(geom_from_wkt('POLYGON((0 0, 4 0, 4 2, 0 2, 0 0))')) → 12.0

14.3.13.89. point_n

Geeft een specifieke knoop van een geometrie terug.

Syntaxis

point_n(geometry, index)

Argumenten

  • geometry - object geometrie

  • index - index van terug te geven knoop, waar 1 de eerste knoop is; als de waarde negatief is, zal de geselecteerde index voor het punt zijn totale aantal minus de absolute waarde zijn

Voorbeelden

  • geom_to_wkt(point_n(geom_from_wkt('POLYGON((0 0, 4 0, 4 2, 0 2, 0 0))'),2)) → ‘Point (4 0)’

Lees verder: algoritme Specifieke punten uitnemen

14.3.13.90. point_on_surface

Geeft een punt terug dat gegarandeerd is gelegen op het oppervlak van een geometrie.

Syntaxis

point_on_surface(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • point_on_surface($geometry) → een geometrie punt

Lees verder: algoritme Punt op oppervlak

14.3.13.91. pole_of_inaccessibility

Berekent de geschatte Pool van Ontoegankelijkheid voor een oppervlak, wat het meest veraf gelegen interne punt is vanaf de grens van het oppervlak. Deze functie gebruikt het algoritme ‘polylabel’ (Vladimir Agafonkin, 2016), wat een iteratieve benadering is die gegarandeerd het ware punt van de Pool van Ontoegankelijkheid vind binnen een gespecificeerde tolerantie. Meer preciezere tolerantie vereist meer doorlopen en zullen langer duren om te berekenen.

Syntaxis

pole_of_inaccessibility(geometry, tolerance)

Argumenten

  • geometry - een geometrie

  • tolerance - maximale afstand tussen het teruggegeven punt en de locatie van de ware pool

Voorbeelden

  • geom_to_wkt(pole_of_inaccessibility( geom_from_wkt('POLYGON((0 1, 0 9, 3 10, 3 3, 10 3, 10 1, 0 1))'), 0.1))' → ‘Point(1.546875 2.546875)’

Lees verder: algoritme Pool van ontoegankelijkheid

14.3.13.92. project

Geeft een geprojecteerd punt terug vanaf een beginpunt met een afstand, richting (azimut) en een hoogte in radialen.

Syntaxis

project(point, distance, azimuth, [elevation])

[] markeert optionele argumenten

Argumenten

  • point - beginpunt

  • distance - te projecteren afstand

  • azimuth - azimut in radialen, met de wijzers van de klok mee, waar 0 overeenkomt met noord

  • elevation - hoek van de helling in radialen

Voorbeelden

  • geom_to_wkt(project(make_point(1, 2), 3, radians(270))) → ‘Point(-2, 2)’

Lees verder: algoritme Punten projecteren (Cartesiaans)

14.3.13.93. relate

Test de weergave Dimensional Extended 9 Intersection Model (DE-9IM) van de relatie tussen twee geometrieën.

Variant Relatie

Geeft de weergave Dimensional Extended 9 Intersection Model (DE-9IM) van de relatie tussen twee geometrieën weer.

Syntaxis

relate(geometry, geometry)

Argumenten

  • geometry - een geometrie

  • geometry - een geometrie

Voorbeelden

  • relate( geom_from_wkt( 'LINESTRING(40 40,120 120)' ), geom_from_wkt( 'LINESTRING(40 40,60 120)' ) ) → ‘FF1F00102’

Variant Overeenkomst patroon

Test of de relatie DE-9IM tussen twee geometrieën overeenkomt met een gespecificeerd patroon.

Syntaxis

relate(geometry, geometry, pattern)

Argumenten

  • geometry - een geometrie

  • geometry - een geometrie

  • pattern - het patroon voor DE-9IM dat overeen moet komen

Voorbeelden

  • relate( geom_from_wkt( 'LINESTRING(40 40,120 120)' ), geom_from_wkt( 'LINESTRING(40 40,60 120)' ), '**1F001**' ) → True

14.3.13.94. reverse

Draait de richting van een lijn om door de volgorde van zijn punten om te draaien.

Syntaxis

reverse(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • geom_to_wkt(reverse(geom_from_wkt('LINESTRING(0 0, 1 1, 2 2)'))) → ‘LINESTRING(2 2, 1 1, 0 0)’

Lees verder: algoritme Omgekeerde lijnrichting

14.3.13.95. rotate

Geeft de geroteerde versie van een geometrie terug. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

rotate(geometry, rotation, [center])

[] markeert optionele argumenten

Argumenten

  • geometry - een geometrie

  • rotation - rotatie in graden met de wijzers van de klok mee

  • center - middelpunt van de rotatie. Indien niet gespecificeerd wordt het midden van het begrenzingsvak van de geometrie gebruikt

Voorbeelden

  • rotate($geometry, 45, make_point(4, 5)) → geometrie 45 graden geroteerd, met de wijzers van de klok mee, rond het punt (4, 5)

  • rotate($geometry, 45) → geometrie 45 graden geroteerd, met de wijzers van de klok mee, rond het middelpunt van zijn begrenzingsvak

14.3.13.96. segments_to_lines

Geeft een geometrie multilijn terug, bestaande uit een lijn voor elk segment in de invoergeometrie.

Syntaxis

segments_to_lines(geometry)

Argumenten

  • geometry - object geometrie

Voorbeelden

  • geom_to_wkt(segments_to_lines(geom_from_wkt('LINESTRING(0 0, 1 1, 2 2)'))) → ‘MultiLineString ((0 0, 1 1),(1 1, 2 2))’

Lees verder: algoritme Lijnen uitvergroten

14.3.13.97. shortest_line

Geeft de kortste lijn terug die geometry1 en geometry2 met elkaar verbindt. De resulterende lijn zal beginnen op geometry1 en eindigen op geometry2.

Syntaxis

shortest_line(geometry1, geometry2)

Argumenten

  • geometry1 - geometrie waar vandaan de kortste lijn moet worden gezocht

  • geometry2 - geometrie waarnaar de kortste lijn moet worden gevonden

Voorbeelden

  • geom_to_wkt(shortest_line(geom_from_wkt('LINESTRING (20 80, 98 190, 110 180, 50 75 )'),geom_from_wkt('POINT(100 100)'))) → ‘LineString(73.0769 115.384, 100 100)’

14.3.13.98. simplify

Vereenvoudigt een geometrie door knopen te verwijderen vanaf een afstand die is gebaseerd op een drempelwaarde (d.i, het algoritme Douglas Peucker). Het algoritme behoudt grote afwijkingen in geometrieën en verkleint het aantal punten op nagenoeg rechte segmenten.

Syntaxis

simplify(geometry, tolerance)

Argumenten

  • geometry - een geometrie

  • tolerance - maximale afwijking van rechte segmenten voor de te verwijderen punten

Voorbeelden

  • geom_to_wkt(simplify(geometry:=geom_from_wkt('LineString(0 0, 5 0.1, 10 0)'),tolerance:=5)) → ‘LineString(0 0, 10 0)’

Lees verder: algoritme Vereenvoudigen

14.3.13.99. simplify_vw

Vereenvoudigt een geometrie door knopen te verwijderen op een op een gebied gebaseerde drempelwaarde (d.i, het algoritme Visvalingam-Whyatt). Het algoritme verwijdert punten die kleine gebieden vormen in geometrieën, bijv. kleine uitsteeksels of nagenoeg rechte segmenten.

Syntaxis

simplify_vw(geometry, tolerance)

Argumenten

  • geometry - een geometrie

  • tolerance - een meting van het maximale gebied dat door een knoop wordt gemaakt voor de te verwijderen knoop

Voorbeelden

  • geom_to_wkt(simplify_vw(geometry:=geom_from_wkt('LineString(0 0, 5 0, 5.01 10, 5.02 0, 10 0)'),tolerance:=5)) → ‘LineString(0 0, 10 0)’

Lees verder: algoritme Vereenvoudigen

14.3.13.100. single_sided_buffer

Geeft een geometrie terug die wordt gevormd door slechts één zijde van een geometrie lijn te bufferen. Afstanden zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

single_sided_buffer(geometry, distance, [segments=8], [join=1], [miter_limit=2.0])

[] markeert optionele argumenten

Argumenten

  • geometry - een geometrie (multi)lijn

  • distance - bufferafstand. Positieve waarden zullen links van de lijnen worden gebufferd, negatieve waarden aan de rechterkant

  • segments - aantal te gebruiken segmenten om een kwartcirkel weer te geven als een afgeronde stijl voor samenvoegen wordt gebruikt. Een groter aantal resulteert in een gladdere buffer met meer knopen.

  • join - stijl voor samenvoegen van hoeken, waar 1 = rond, 2 = verstek en 3 = afgeschuind

  • miter_limit - limiet voor de verhouding van het verstek, gebruikt voor zeer scherpe hoeken (alleen bij het gebruiken van samenvoegingen in verstek)

Voorbeelden

  • single_sided_buffer($geometry, 10.5) → lijn, gebufferd aan de linkerkant met 10.5 eenheden

  • single_sided_buffer($geometry, -10.5) → lijn, gebufferd aan de rechterkant met 10.5 eenheden

  • single_sided_buffer($geometry, 10.5, segments=16, join=1) → lijn, gebufferd aan de linkerkant met 10.5 eenheden, met meer segmenten om een gladdere buffer te krijgen

  • single_sided_buffer($geometry, 10.5, join=3) → lijn, gebufferd aan de linkerkant met 10.5 eenheden, met een afgeschuinde samenvoeging

Lees verder: algoritme Enkelzijdige buffer

14.3.13.101. smooth

Maakt een geometrie gladder door het toevoegen van extra knopen die hoeken in de geometrie afronden. Als invoergeometrieën waarden Z of M bevatten, zullen deze ook gladder worden gemaakt en de uitvoergeometrie zal dezelfde dimensie behouden als de invoergeometrie.

Syntaxis

smooth(geometry, [iterations=1], [offset=0.25], [min_length=-1], [max_angle=180])

[] markeert optionele argumenten

Argumenten

  • geometry - een geometrie

  • iterations - aantal doorlopen om gladder te maken die moet worden toegepast. Hogere getallen resulteren in gladdere, maar meer complexe geometrieën.

  • offset - waarde tussen 0 en 0.5 die beheert hoe “nauw” de afgevlakte geometrieën de originele geometrieën volgen. Kleinere waarden resulteren in nauwer glad maken, grotere waarden resulteren in losser glad maken.

  • min_length - minimale lengte van segmenten waarop gladder maken moet worden toegepast. Deze parameter kan worden gebruikt om het plaatsen van teveel aanvullende knopen in kortere segmenten van de geometrie te vermijden.

  • max_angle - maximale hoek voor de knoop waarop gladder maken moet worden toegepast (0-180). Door de maximale hoek te verlagen kunnen opzettelijke scherpe hoeken in de geometrie worden behouden. Een waarde van, bijvoorbeeld, 80 graden zal rechte hoeken in de geometrie behouden.

Voorbeelden

  • geom_to_wkt(smooth(geometry:=geom_from_wkt('LineString(0 0, 5 0, 5 5)'),iterations:=1,offset:=0.2,min_length:=-1,max_angle:=180)) → ‘LineString (0 0, 4 0, 5 1, 5 5)’

Lees verder: algoritme Glad maken

14.3.13.102. start_point

Geeft de eerste knoop van een geometrie terug.

Syntaxis

start_point(geometry)

Argumenten

  • geometry - object geometrie

Voorbeelden

  • geom_to_wkt(start_point(geom_from_wkt('LINESTRING(4 0, 4 2, 0 2)'))) → ‘Point (4 0)’

Lees verder: algoritme Specifieke punten uitnemen

14.3.13.103. sym_difference

Geeft een geometrie terug die het gedeelde deel weergeeft van twee geometrieën die elkaar niet kruisen.

Syntaxis

sym_difference(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • geom_to_wkt( sym_difference( geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ), geom_from_wkt( 'LINESTRING(3 3, 8 8)' ) ) ) → ‘LINESTRING(5 5, 8 8)’

Lees verder: algoritme Symmetrisch verschil

14.3.13.104. tapered_buffer

Maakt een buffer langs een geometrie lijn waarbij de diameter van de buffer gelijkmatig varieert over de lengte van de lijn.

Syntaxis

tapered_buffer(geometry, start_width, end_width, [segments=8])

[] markeert optionele argumenten

Argumenten

  • geometry - invoergeometrie. Moet een geometrie (multi)lijn zijn.

  • start_width - breedte van de buffer aan het begin van de lijn,

  • end_width - breedte van de buffer aan het einde van de lijn.

  • segments - aantal segmenten om bogen van een kwartcirkel te benaderen in de buffer.

Voorbeelden

  • tapered_buffer(geometry:=geom_from_wkt('LINESTRING(1 2, 4 2)'),start_width:=1,end_width:=2,segments:=8) → Een taps toelopende buffer, beginnend met een diameter van 0.5 en eindigend met een diameter van 0.2 langs de geometrie lijn.

Lees verder: algoritme Taps toelopende buffers

14.3.13.105. touches

Test of een geometrie een andere raakt. Geeft true terug als de geometrieën tenminste één gemeenschappelijk punt hebben, maar hun interieurs niet kruisen.

Syntaxis

touches(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • touches( geom_from_wkt( 'LINESTRING(5 3, 4 4)' ), geom_from_wkt( 'LINESTRING(3 3, 4 4, 5 5)' ) ) → true

  • touches( geom_from_wkt( 'POINT(4 4)' ), geom_from_wkt( 'POINT(5 5)' ) ) → false

Lees verder: overlay_touches

14.3.13.106. transform

Geeft de getransformeerde geometrie terug van het bron-CRS naar het doel-CRS.

Syntaxis

transform(geometry, source_auth_id, dest_auth_id)

Argumenten

  • geometry - een geometrie

  • source_auth_id - het ID van het bron-CRS

  • dest_auth_id - het ID van het doel-CRS

Voorbeelden

  • geom_to_wkt( transform( make_point(488995.53240249, 7104473.38600835), 'EPSG:2154', 'EPSG:4326' ) ) → ‘POINT(0 51)’

Lees verder: algoritme Laag opnieuw projecteren

14.3.13.107. translate

Geeft een vertaalde versie van een geometrie terug. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

translate(geometry, dx, dy)

Argumenten

  • geometry - een geometrie

  • dx - delta X

  • dy - delta Y

Voorbeelden

  • translate($geometry, 5, 10) → een geometrie van hetzelfde type als de originele

Lees verder: algoritme Vertalen

14.3.13.108. union

Geeft een geometrie terug die de verenigde verzameling van punten weergeeft van de geometrieën.

Syntaxis

union(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • geom_to_wkt( union( make_point(4, 4), make_point(5, 5) ) ) → ‘MULTIPOINT(4 4, 5 5)’

14.3.13.109. wedge_buffer

Geeft een wigvormige buffer terug, afkomstig uit een geometrie punt.

Syntaxis

wedge_buffer(center, azimuth, width, outer_radius, [inner_radius=0.0])

[] markeert optionele argumenten

Argumenten

  • center - middelpunt (origine) van de buffer. Moet een geometrie punt zijn.

  • azimuth - hoek (in graden) voor waar het midden van de wig naartoe moet wijzen.

  • width - breedte buffer (in graden). Onthoud dat de wig zich zal uitstrekken tot de helft van de breedte van de hoek aan elke zijde van de richting van de azimut.

  • outer_radius - buitenste straal voor de buffers

  • inner_radius - optionele binnenste straal voor de buffers

Voorbeelden

  • wedge_buffer(center:=geom_from_wkt('POINT(1 2)'),azimuth:=90,width:=180,outer_radius:=1) → Een wigvormige buffer, gecentreerd op het punt (1,2), gaande in oostelijk richting, met een breedte van 180 graden en een buitenste straal van 1.

Lees verder: algoritme Wigvormige buffers maken

14.3.13.110. within

Test of een geometrie in een andere ligt. Geeft true terug als geometry1 volledig binnen geometry2 ligt.

Syntaxis

within(geometry1, geometry2)

Argumenten

  • geometry1 - een geometrie

  • geometry2 - een geometrie

Voorbeelden

  • within( geom_from_wkt( 'POINT( 0.5 0.5)' ), geom_from_wkt( 'POLYGON((0 0, 0 1, 1 1, 1 0, 0 0))' ) ) → true

  • within( geom_from_wkt( 'POINT( 5 5 )' ), geom_from_wkt( 'POLYGON((0 0, 0 1, 1 1, 1 0, 0 0 ))' ) ) → false

Lees verder: overlay_within

14.3.13.111. $x

Geeft de X-coördinaat van het huidige geometrie punt terug. Als het object een object multipunt is, dan zal de X-coördinaat van het eerste punt worden teruggegeven.

Syntaxis

$x

Voorbeelden

  • $x → 42

14.3.13.112. x

Geeft de X-coördinaat van een geometrie punt terug, of de X-coördinaat van het zwaartepunt van een geometrie niet-punt.

Syntaxis

x(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • x( geom_from_wkt( 'POINT(2 5)' ) ) → 2

  • x( $geometry ) → X-coördinaat van het zwaartepunt van het huidige object

14.3.13.113. $x_at

Haalt een X-coördinaat op van de geometrie van het huidige object.

Syntaxis

$x_at(i)

Argumenten

  • i - index van een punt van een lijn (indices beginnen met 0; negatieve waarden zijn van toepassing vanaf de laatste index, beginnend met -1)

Voorbeelden

  • $x_at(1) → 5

14.3.13.114. x_max

Geeft de maximum X-coördinaat van een geometrie terug. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

x_max(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • x_max( geom_from_wkt( 'LINESTRING(2 5, 3 6, 4 8)') ) → 4

14.3.13.115. x_min

Geeft de minimum X-coördinaat van een geometrie terug. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

x_min(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • x_min( geom_from_wkt( 'LINESTRING(2 5, 3 6, 4 8)') ) → 2

14.3.13.116. $y

Geeft de Y-coördinaat van het huidige geometrie punt terug. Als het object een object multipunt is, dan zal de Y-coördinaat van het eerste punt worden teruggegeven.

Syntaxis

$y

Voorbeelden

  • $y → 42

14.3.13.117. y

Geeft de Y-coördinaat van een geometrie punt terug, of de Y-coördinaat van het zwaartepunt van een geometrie niet-punt.

Syntaxis

y(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • y( geom_from_wkt( 'POINT(2 5)' ) ) → 5

  • y( $geometry ) → Y-coördinaat van het zwaartepunt van het huidige object

14.3.13.118. $y_at

Haalt een Y-coördinaat op van de geometrie van het huidige object.

Syntaxis

$y_at(i)

Argumenten

  • i - index van een punt van een lijn (indices beginnen met 0; negatieve waarden zijn van toepassing vanaf de laatste index, beginnend met -1)

Voorbeelden

  • $y_at(1) → 2

14.3.13.119. y_max

Geeft de maximum Y-coördinaat van een geometrie terug. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

y_max(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • y_max( geom_from_wkt( 'LINESTRING(2 5, 3 6, 4 8)') ) → 8

14.3.13.120. y_min

Geeft de minimum Y-coördinaat van een geometrie terug. Berekeningen zijn in het ruimtelijke referentiesysteem van deze geometrie.

Syntaxis

y_min(geometry)

Argumenten

  • geometry - een geometrie

Voorbeelden

  • y_min( geom_from_wkt( 'LINESTRING(2 5, 3 6, 4 8)') ) → 5

14.3.13.121. z

Geeft de Z-coördinaat van een geometrie punt terug, of NULL als de geometrie geen waarde Z heeft.

Syntaxis

z(geometry)

Argumenten

  • geometry - een geometrie punt

Voorbeelden

  • z( geom_from_wkt( 'POINTZ(2 5 7)' ) ) → 7

14.3.13.122. z_max

Geeft de maximum Z-coördinaat van een geometrie terug, of NULL als de geometrie geen waarde Z heeft.

Syntaxis

z_max(geometry)

Argumenten

  • geometry - een geometrie met een Z-coördinaat

Voorbeelden

  • z_max( geom_from_wkt( 'POINT ( 0 0 1 )' ) ) → 1

  • z_max( geom_from_wkt( 'MULTIPOINT ( 0 0 1 , 1 1 3 )' ) ) → 3

  • z_max( make_line( make_point( 0,0,0 ), make_point( -1,-1,-2 ) ) ) → 0

  • z_max( geom_from_wkt( 'LINESTRING( 0 0 0, 1 0 2, 1 1 -1 )' ) ) → 2

  • z_max( geom_from_wkt( 'POINT ( 0 0 )' ) ) → NULL

14.3.13.123. z_min

Geeft de minimum Z-coördinaat van een geometrie terug, of NULL als de geometrie geen waarde Z heeft.

Syntaxis

z_min(geometry)

Argumenten

  • geometry - een geometrie met een Z-coördinaat

Voorbeelden

  • z_min( geom_from_wkt( 'POINT ( 0 0 1 )' ) ) → 1

  • z_min( geom_from_wkt( 'MULTIPOINT ( 0 0 1 , 1 1 3 )' ) ) → 1

  • z_min( make_line( make_point( 0,0,0 ), make_point( -1,-1,-2 ) ) ) → -2

  • z_min( geom_from_wkt( 'LINESTRING( 0 0 0, 1 0 2, 1 1 -1 )' ) ) → -1

  • z_min( geom_from_wkt( 'POINT ( 0 0 )' ) ) → NULL

14.3.14. Functies voor lay-out

Deze groep bevat functies waarmee u eigenschappen voor items van lay-out kunt bewerken.

14.3.14.1. item_variables

Geeft een kaart van variabelen terug uit een item van lay-out binnen deze afdruklay-out.

Syntaxis

item_variables(id)

Argumenten

  • id - ID van het item van afdruklay-out

Voorbeelden

  • map_get( item_variables('Map 0'), 'map_scale') → schaal van het item ‘Map 0’ in de huidige afdruyklay-out

Lees verder: Lijst van standaard variabelen

14.3.15. Lagen

Deze groep bevat een lijst met beschikbare lagen in het huidige project. Dit biedt een handige manier om expressies te schrijven die verwijzen naar meerdere lagen, zoals voor het uitvoeren van query’s voor samenvoegen, attributen of ruimtelijke.

Het verschaft ook enkele handige functies om lagen te bewerken.

14.3.15.1. decode_uri

Neemt een laag en decodeert de URI van de onderliggende gegevensprovider. Beschikbare informatie is afhankelijk van de gegevensprovider.

Syntaxis

decode_uri(layer, [part])

[] markeert optionele argumenten

Argumenten

  • layer - De laag waarvan de URI moet worden gedecodeerd.

  • part - Het terug te geven gedeelte van de URI. Indien niet gespecificeerd zal een kaart met alle URI-gedeelten worden teruggegeven.

Voorbeelden

  • decode_uri(@layer) → {‘layerId’: ‘0’, ‘layerName’: ‘’, ‘path’: ‘/home/qgis/shapefile.shp’}

  • decode_uri(@layer) → {‘layerId’: NULL, ‘layerName’: ‘layer’, ‘path’: ‘/home/qgis/geopackage.gpkg’}

  • decode_uri(@layer, 'path') → ‘C:\my_data\qgis\shape.shp’

14.3.16. Functies Kaartobjecten

Deze groep bevat functies voor expressies voor het creëren en bewerken van gegevensstructuren ‘map’ (ook wel bekend als het datatype dictionary, paren sleutel-waarde of associatieve arrays). Anders dan de gegevensstructuur lijst waar de volgorde van de waarden van belang is, is de volgorde van de paren sleutel-waarde in het kaartobject niet relevant en worden waarden geïdentificeerd met hun sleutels.

14.3.16.1. from_json

Laadt een als JSON opgemaakte tekenreeks.

Syntaxis

from_json(string)

Argumenten

  • string - tekenreeks JSON

Voorbeelden

  • from_json('{"qgis":"rocks"}') → { ‘qgis’: ‘rocks’ }

  • from_json('[1,2,3]') → [1,2,3]

14.3.16.2. hstore_to_map

Maakt een kaart uit een als hstore opgemaakte tekenreeks.

Syntaxis

hstore_to_map(string)

Argumenten

  • string - de tekenreeks voor de invoer

Voorbeelden

  • hstore_to_map('qgis=>rocks') → { ‘qgis’: ‘rocks’ }

14.3.16.3. json_to_map

Maakt een kaart uit een als JSON opgemaakte tekenreeks.

Syntaxis

json_to_map(string)

Argumenten

  • string - de tekenreeks voor de invoer

Voorbeelden

  • json_to_map('{"qgis":"rocks"}') → { ‘qgis’: ‘rocks’ }

14.3.16.4. map

Geeft een kaart terug die alle sleutels en waarden bevat die als parameters voor het paar werden doorgegeven.

Syntaxis

map(key1, value1, key2, value2, …)

Argumenten

  • key - een sleutel (tekenreeks)

  • value - een waarde

Voorbeelden

  • map('1','one','2', 'two') → { ‘1’: ‘one’, ‘2’: ‘two’ }

14.3.16.5. map_akeys

Geeft alle sleutels van een kaart terug als een array.

Syntaxis

map_akeys(map)

Argumenten

  • map - een kaart

Voorbeelden

  • map_akeys(map('1','one','2','two')) → [ ‘1’, ‘2’ ]

14.3.16.6. map_avals

Geeft alle waarden van een kaart terug als een array.

Syntaxis

map_avals(map)

Argumenten

  • map - een kaart

Voorbeelden

  • map_avals(map('1','one','2','two')) → [ ‘one’, ‘two’ ]

14.3.16.7. map_concat

Geeft een kaart terug die alle items van de opgegeven kaarten bevat. Als twee kaarten dezelfde sleutel bevatten, wordt de waarde van de tweede kaart genomen.

Syntaxis

map_concat(map1, map2, …)

Argumenten

  • map - een kaart

Voorbeelden

  • map_concat(map('1','one', '2','overridden'),map('2','two', '3','three')) → { ‘1’: ‘one’, ‘2’: ‘two’, ‘3’: ‘three’ }

14.3.16.8. map_delete

Geeft een kaart terug waaruit de opgegeven sleutel en de bijbehorende waarde zijn verwijderd.

Syntaxis

map_delete(map, key)

Argumenten

  • map - een kaart

  • key - de te verwijderen sleutel

Voorbeelden

  • map_delete(map('1','one','2','two'),'2') → { ‘1’: ‘one’ }

14.3.16.9. map_exist

Geeft true terug als de opgegeven sleutel bestaat in de kaart.

Syntaxis

map_exist(map, key)

Argumenten

  • map - een kaart

  • key - de sleutel die moet worden gezocht

Voorbeelden

  • map_exist(map('1','one','2','two'),'3') → false

14.3.16.10. map_get

Geeft de waarde van een kaart terug, opgegeven als zijn sleutel. Geeft NULL terug als de sleutel niet bestaat.

Syntaxis

map_get(map, key)

Argumenten

  • map - een kaart

  • key - de sleutel die moet worden gezocht

Voorbeelden

  • map_get(map('1','one','2','two'),'2') → ‘two’

  • map_get( item_variables('Map 0'), 'map_scale') → schaal van het item ‘Map 0’ (als die bestaat) in de huidige afdruklay-out

14.3.16.11. map_insert

Geeft een kaart terug met een toegevoegde sleutel/waarde. Als de sleutel al bestaat wordt de waarde daarvan overschreven.

Syntaxis

map_insert(map, key, value)

Argumenten

  • map - een kaart

  • key - de toe te voegen sleutel

  • value - de toe te voegen waarde

Voorbeelden

  • map_insert(map('1','one'),'3','three') → { ‘1’: ‘one’, ‘3’: ‘three’ }

  • map_insert(map('1','one','2','overridden'),'2','two') → { ‘1’: ‘one’, ‘2’: ‘two’ }

14.3.16.12. map_to_hstore

Voeg kaartelementen samen tot een als hstore opgemaakte tekenreeks.

Syntaxis

map_to_hstore(map)

Argumenten

  • map - de kaart voor de invoer

Voorbeelden

  • map_to_hstore(map('qgis','rocks')) → ‘“qgis”=>”rocks”’

14.3.16.13. map_to_json

Voeg kaartelementen samen tot een als JSON opgemaakte tekenreeks.

Syntaxis

map_to_json(map)

Argumenten

  • map - de kaart voor de invoer

Voorbeelden

  • map_to_json(map('qgis','rocks')) → {“qgis”:”rocks”}

14.3.16.14. to_json

Maak een als JSON opgemaakte tekenreeks uit een kaart, een array of een andere waarde.

Syntaxis

to_json(value)

Argumenten

  • value - De waarde voor de invoer

Voorbeelden

  • to_json(map('qgis','rocks')) → {“qgis”:”rocks”}

  • to_json(array(1,2,3)) → [1,2,3]

14.3.17. Wiskundige functies

Deze groep bevat wiskundige functies (bijv. vierkantswortel, sin en cos).

14.3.17.1. abs

Geeft de absolute waarde van een getal terug.

Syntaxis

abs(value)

Argumenten

  • value - een getal

Voorbeelden

  • abs(-2) → 2

14.3.17.2. acos

Geeft de inverse cosinus van een waarde in radialen terug.

Syntaxis

acos(value)

Argumenten

  • value - cosinus van een hoek in radialen

Voorbeelden

  • acos(0.5) → 1.0471975511966

14.3.17.3. asin

Geeft de inverse sinus van een waarde in radialen terug.

Syntaxis

asin(value)

Argumenten

  • value - sinus van een hoek in radialen

Voorbeelden

  • asin(1.0) → 1.5707963267949

14.3.17.4. atan

Geeft de inverse tangens van een waarde in radialen terug.

Syntaxis

atan(value)

Argumenten

  • value - tangens van een hoek in radialen

Voorbeelden

  • atan(0.5) → 0.463647609000806

14.3.17.5. atan2

Geeft de inverse tangens van dy/dx terug door de twee tekens van de twee argumenten te gebruiken om het kwadrant van het resultaat te bepalen

Syntaxis

atan2(dy, dx)

Argumenten

  • dy - verschil Y-coördinaat

  • dx - verschil X-coördinaat

Voorbeelden

  • atan2(1.0, 1.732) → 0.523611477769969

14.3.17.6. azimuth

Geeft de op het noorden gebaseerde azimut terug als de hoek in radialen, met de klok mee gemeten van de verticaal van point_a naar point_b.

Syntaxis

azimuth(point_a, point_b)

Argumenten

  • point_a - geometrie punt

  • point_b - geometrie punt

Voorbeelden

  • degrees( azimuth( make_point(25, 45), make_point(75, 100) ) ) → 42.273689

  • degrees( azimuth( make_point(75, 100), make_point(25,45) ) ) → 222.273689

14.3.17.7. ceil

Rondt een getal naar boven af.

Syntaxis

ceil(value)

Argumenten

  • value - een getal

Voorbeelden

  • ceil(4.9) → 5

  • ceil(-4.9) → -4

14.3.17.8. clamp

Beperkt een invoerwaarde tot een gespecificeerd bereik.

Syntaxis

clamp(minimum, input, maximum)

Argumenten

  • minimum - de kleinste waarde voor invoer die is toegestaan.

  • input - een waarde die zal worden beperkt tot het bereik dat wordt gespecificeerd door minimum en maximum

  • maximum - de grootste waarde voor invoer die is toegestaan.

Voorbeelden

  • clamp(1,5,10) → 5

    input ligt tussen 1 en 10 en wordt dus ongewijzigd teruggegeven

  • clamp(1,0,10) → 1

    input is kleiner dan de minimum waarde van 1, dus geeft de functie 1 terug

  • clamp(1,11,10) → 10

    input is groter dan de maximum waarde van 10, dus geeft de functie 10 terug

14.3.17.9. cos

Geeft de cosinus van een hoek terug.

Syntaxis

cos(angle)

Argumenten

  • angle - hoek in radialen

Voorbeelden

  • cos(1.571) → 0.000796326710733263

14.3.17.10. degrees

Converteert van radialen naar graden.

Syntaxis

degrees(radians)

Argumenten

  • radians - numerieke waarde

Voorbeelden

  • degrees(3.14159) → 180

  • degrees(1) → 57.2958

14.3.17.11. exp

Geeft de exponentieel van een waarde terug.

Syntaxis

exp(value)

Argumenten

  • value - getal waarvan de exponentieel moet worden teruggegeven

Voorbeelden

  • exp(1.0) → 2.71828182845905

14.3.17.12. floor

Rondt een getal naar beneden af.

Syntaxis

floor(value)

Argumenten

  • value - een getal

Voorbeelden

  • floor(4.9) → 4

  • floor(-4.9) → -5

14.3.17.13. inclination

Geeft de hoek terug die wordt gemeten tussen de zenith (0) en de nadir (180) van point_a naar point_b.

Syntaxis

inclination(point_a, point_b)

Argumenten

  • point_a - geometrie punt

  • point_b - geometrie punt

Voorbeelden

  • inclination( make_point( 5, 10, 0 ), make_point( 5, 10, 5 ) ) → 0.0

  • inclination( make_point( 5, 10, 0 ), make_point( 5, 10, 0 ) ) → 90.0

  • inclination( make_point( 5, 10, 0 ), make_point( 50, 100, 0 ) ) → 90.0

  • inclination( make_point( 5, 10, 0 ), make_point( 5, 10, -5 ) ) → 180.0

14.3.17.14. ln

Geeft de natuurlijke logaritme van een waarde terug.

Syntaxis

ln(value)

Argumenten

  • value - numerieke waarde

Voorbeelden

  • ln(1) → 0

  • ln(2.7182818284590452354) → 1

14.3.17.15. log

Geeft de waarde van de logaritme van de opgegeven waarde en basis terug.

Syntaxis

log(base, value)

Argumenten

  • base - elkpositief getal

  • value - elk positief getal

Voorbeelden

  • log(2, 32) → 5

  • log(0.5, 32) → -5

14.3.17.16. log10

Geeft de waarde van de logaritme basis 10 van de opgegeven expressie terug.

Syntaxis

log10(value)

Argumenten

  • value - elk positief getal

Voorbeelden

  • log10(1) → 0

  • log10(100) → 2

14.3.17.17. max

Geeft de grootste waarde uit een verzameling waarden terug.

Syntaxis

max(value1, value2, …)

Argumenten

  • value - een getal

Voorbeelden

  • max(2,10.2,5.5) → 10.2

  • max(20.5,NULL,6.2) → 20.5

14.3.17.18. min

Geeft de kleinste waarde uit een verzameling waarden terug.

Syntaxis

min(value1, value2, …)

Argumenten

  • value - een getal

Voorbeelden

  • min(20.5,10,6.2) → 6.2

  • min(2,-10.3,NULL) → -10.3

14.3.17.19. pi

Geeft de waarde Pi terug voor berekeningen.

Syntaxis

pi()

Voorbeelden

  • pi() → 3.14159265358979

14.3.17.20. radians

Converteert van graden naar radialen.

Syntaxis

radians(degrees)

Argumenten

  • degrees - numerieke waarde

Voorbeelden

  • radians(180) → 3.14159

  • radians(57.2958) → 1

14.3.17.21. rand

Geeft een willekeurig geheel getal terug binnen het bereik dat is gespecificeerd door de argumenten minimum en maximum (inclusief). Als zaad wordt opgegeven zal het teruggegeven altijd hetzelfde zijn, afhankelijk van het zaad.

Syntaxis

rand(min, max, [seed=NULL])

[] markeert optionele argumenten

Argumenten

  • min - een integer (geheel getal) dat het gewenste kleinst mogelijke willekeurige getal weergeeft

  • max - een integer (geheel getal) dat het gewenste grootst mogelijke willekeurige getal weergeeft

  • seed - elke waarde die als zaad moet worden gebruikt

Voorbeelden

  • rand(1, 10) → 8

14.3.17.22. randf

Geeft een willekeurig getal float terug binnen het bereik dat is gespecificeerd door de argumenten minimum en maximum (inclusief). Als zaad wordt opgegeven zal het teruggegeven altijd hetzelfde zijn, afhankelijk van het zaad.

Syntaxis

randf([min=0.0], [max=1.0], [seed=NULL])

[] markeert optionele argumenten

Argumenten

  • min - een getal float dat het gewenste kleinst mogelijke willekeurige getal weergeeft

  • max - een getal float dat het gewenste grootst mogelijke willekeurige getal weergeeft

  • seed - elke waarde die als zaad moet worden gebruikt

Voorbeelden

  • randf(1, 10) → 4.59258286403147

14.3.17.23. round

Rondt een getal af naar het aantal plaatsen achter de komma.

Syntaxis

round(value, [places=0])

[] markeert optionele argumenten

Argumenten

  • value - decimale getal dat moet worden afgerond

  • places - Optionele integer die het aantal plaatsen achter de komma weergeeft voor het afronden van decimalen. Mag negatief zijn.

Voorbeelden

  • round(1234.567, 2) → 1234.57

  • round(1234.567) → 1235

14.3.17.24. scale_exp

Transformeert een opgegeven waarde uit een invoerdomein naar een uitvoerbereik met behulp van een exponentiële boog. Deze functie kan worden gebruikt om het gemakkelijker te maken waarden in of uit het gespecificeerde uitvoerbereik te plaatsen.

Syntaxis

scale_exp(value, domain_min, domain_max, range_min, range_max, exponent)

Argumenten

  • value - Een waarde in het invoerdomein. De functie zal een overeenkomende geschaalde waarde in het uitvoerbereik teruggeven.

  • domain_min - Specificeert de minimum waarde in het invoerdomein, de kleinste waarde die de invoerwaarde zou mogen hebben.

  • domain_max - Specificeert de maximum waarde in het invoerdomein, de grootste waarde die de invoerwaarde zou mogen hebben.

  • range_min - Specificeert de minimum waarde in het uitvoerbereik, de kleinste waarde die door de functie zou mogen worden uitgevoerd.

  • range_min - Specificeert de maximum waarde in het uitvoerbereik, de grootste waarde die door de functie zou mogen worden uitgevoerd.

  • exponent - Een positieve waarde (groter dan 0), die de manier bepaalt waarop invoerwaarden in kaart worden gebracht in het uitvoerbereik. Grote exponenten zullen r voor zorgen dat de uitvoerwaarden ‘gemakkelijk instromen’, langzaam beginnend voordat zij accelereren als de invoerwaarden het maximum van het domein bereiken. Kleinere exponenten (kleiner dan 1) zullen er voor zorgen dat uitvoerwaarden ‘gemakkelijk uitstromen’, waarbij het in kaart brengen snel begint maar vertraagt als het het maximum van het domein nadert.

Voorbeelden

  • scale_exp(5,0,10,0,100,2) → 25

    gemakkelijk instromend, met een exponent 2

  • scale_exp(3,0,10,0,100,0.5) → 54.772

    gemakkelijk uitstromend, met een exponent 0.5

14.3.17.25. scale_linear

Transformeert een opgegeven waarde uit een invoerdomein naar een uitvoerbereik met behulp van lineaire interpolatie.

Syntaxis

scale_linear(value, domain_min, domain_max, range_min, range_max)

Argumenten

  • value - Een waarde in het invoerdomein. De functie zal een overeenkomende geschaalde waarde in het uitvoerbereik teruggeven.

  • domain_min - Specificeert de minimum waarde in het invoerdomein, de kleinste waarde die de invoerwaarde zou mogen hebben.

  • domain_max - Specificeert de maximum waarde in het invoerdomein, de grootste waarde die de invoerwaarde zou mogen hebben.

  • range_min - Specificeert de minimum waarde in het uitvoerbereik, de kleinste waarde die door de functie zou mogen worden uitgevoerd.

  • range_min - Specificeert de maximum waarde in het uitvoerbereik, de grootste waarde die door de functie zou mogen worden uitgevoerd.

Voorbeelden

  • scale_linear(5,0,10,0,100) → 50

  • scale_linear(0.2,0,1,0,360) → 72

    op schaal brengen van een waarde tussen 0 en 1 naar een hoek tussen 0 en 360

  • scale_linear(1500,1000,10000,9,20) → 9.6111111

    op schaal brengen van een populatie die varieert tussen 1000 en 10000 naar een grootte van het lettertype tussen 9 en 20

14.3.17.26. sin

Geeft de sinus van een hoek terug.

Syntaxis

sin(angle)

Argumenten

  • angle - hoek in radialen

Voorbeelden

  • sin(1.571) → 0.999999682931835

14.3.17.27. sqrt

Geeft de vierkantswortel van een waarde terug.

Syntaxis

sqrt(value)

Argumenten

  • value - een getal

Voorbeelden

  • sqrt(9) → 3

14.3.17.28. tan

Geeft de tangens van een hoek terug.

Syntaxis

tan(angle)

Argumenten

  • angle - hoek in radialen

Voorbeelden

  • tan(1.0) → 1.5574077246549

14.3.18. Operatoren

Deze groep bevat operatoren (bijv. +, -, *). Onthoud dat voor de meeste wiskundige functies hieronder, als één van de invoeren NULL is, het resultaat NULL is.

Functie

Omschrijving

a + b

Optellen van twee waarden (a plus b)

a - b

Aftrekken van twee waarden (a min b)

a * b

Vermenigvuldigen van twee waarden (a vermenigvuldigd met b)

a / b

Delen van twee waarden (a gedeeld door b)

a % b

Restant van deling van a door b (bijv. 7 % 2 = 1, of 2 past drie keer in 7 met restant 1)

a ^ b

Macht van twee waarden (bijvoorbeeld 2^2=4 of 2^3=8)

a < b

Vergelijkt twee waarden en evalueert naar 1 als de waarde aan de linkerkant kleiner is dan de waarde aan de rechterkant (a is kleiner dan b)

a <= b

Vergelijkt twee waarden en evalueert naar 1 als de waarde aan de linkerkant kleiner of gelijk is aan de waarde aan de rechterkant.

a <> b

Vergelijkt twee waarden en evalueert naar 1 als zij niet aan elkaar gelijk zijn

a = b

Vergelijkt twee waarden en evalueert naar 1 als zij aan elkaar gelijk zijn

a != b

a en b zijn niet aan elkaar gelijk

a > b

Vergelijkt twee waarden en evalueert naar 1 als de waarde aan de linkerkant groter is dan de waarde aan de rechterkant (a is groter dan b)

a >= b

Vergelijkt twee waarden en evalueert naar 1 als de waarde aan de linkerkant groter of gelijk is aan de waarde aan de rechterkant.

a ~ b

a komt overeen met de reguliere expressie b

||

Voegt twee waarden samen in één tekenreeks. Als één van de waarden NULL is, zal het resultaat NULL zijn

‘\n’

Voegt een nieuwe regel in in een tekenreeks

LIKE

Geeft 1 terug als de eerste parameter overeenkomt met het opgegeven patroon

ILIKE

Geeft 1 terug als de eerste parameter, hoofdletter ongevoelig, overeenkomt met het opgegeven patroon. (LIKE mag in plaats van ILIKE worden gebruikt om de overeenkomst hoofdlettergevoelig te maken)

a IS b

Test of twee waarden identiek zijn. Geeft 1 terug als a hetzelfde is als b

a OR b

Geeft 1 terug als voorwaarde a of voorwaarde b waar is

a AND b

Geeft 1 terug als voorwaarden a en b waar zijn

NOT

Draait een voorwaarde om

“Kolom_naam”

Waarde van het veld Kolom_naam, zorg er voor dat u niet verward raakt door het enkele aanhalingsteken, zie hieronder

‘string’

een waarde tekenreeks, zorg er voor niet te worden verward met dubbele aanhalingstekens, zie hierboven

NULL

waarde null

a IS NULL

a heeft geen waarde

a IS NOT NULL

a heeft een waarde

a IN (waarde[,waarde])

a staat tussen de vermelde waarden

a NOT IN (waarde[,waarde])

a staat niet tussen de vermelde waarden

Enkele voorbeelden:

  • Voegt een tekenreeks en een waarde uit een naam van een kolom samen:

    'My feature''s id is: ' || "gid"
    
  • Test of het veld voor het attribuut “description” begint met de tekenreeks ‘Hello’ in de waarde (let op de positie van het teken %):

    "description" LIKE 'Hello%'
    

14.3.19. Functies voor Processing

Deze groep bevat functies die werken op algoritmen van Processing.

14.3.19.1. parameter

Geeft de waarde van een parameter voor de invoer voor een algoritme van Processing terug.

Syntaxis

parameter(name)

Argumenten

  • name - naam van de corresponderende parameter voor de invoer

Voorbeelden

  • parameter('BUFFER_SIZE') → 5.6

14.3.20. Functies voor rasters

Deze groep bevat functies voor bewerkingen van rasterlagen.

14.3.20.1. raster_statistic

Geeft statistieken uit een rasterlaag terug.

Syntaxis

raster_statistic(layer, band, property)

Argumenten

  • layer - een tekenreeks die ofwel een laagnaam of een laag-ID vertegenwoordigt

  • band - integer die het bandnummer van de rasterlaag weergeeft, beginnend met 1

  • property - een tekenreeks die correspondeert met de terug te geven eigenschap. Geldige opties zijn:

    • min: minimum waarde

    • max: maximum waarde

    • avg: gemiddelde (gemiddeld) waarde

    • stdev: standaardafwijking van waarden

    • range: bereik van waarden (max - min)

    • sum: som van alle waarden uit het raster

Voorbeelden

  • raster_statistic('lc',1,'avg') → Gemniddelde waarde uit band 1 van rasterlaag ‘lc’

  • raster_statistic('ac2010',3,'min') → Minimum waarde uit band 3 van rasterlaag ‘ac2010’

14.3.20.2. raster_value

Geeft de rasterwaarde terug voor het opgegeven punt.

Syntaxis

raster_value(layer, band, point)

Argumenten

  • layer - de naam of ID van een rasterlaag

  • band - het bandnummer waaruit de waarde moet worden genomen.

  • point - geometrie punt (voor meerdelige geometrieën die meer dan één deel hebben zal een waarde NULL worden teruggegeven)

Voorbeelden

  • raster_value('dem', 1, make_point(1,1)) → 25

14.3.21. Functies Records en attributen

Deze groep bevat functies voor het bewerken van unieke record-ID’s.

14.3.21.1. attribute

Geeft een attribuut uit een object terug.

Variant 1

Geeft de waarde van een attribuut van het huidige object terug.

Syntaxis

attribute(attribute_name)

Argumenten

  • attribute_name - naam van het terug te geven attribuut

Voorbeelden

  • attribute( 'name' ) → waarde die is opgeslagen in het attribuut ‘name’ voor het huidige object

Variant 2

Maakt het mogelijk het doelobject en de naam van het attribuut te specificeren.

Syntaxis

attribute(feature, attribute_name)

Argumenten

  • feature - een object

  • attribute_name - naam van het terug te geven attribuut

Voorbeelden

  • attribute( @atlas_feature, 'name' ) → waarde die is opgeslagen in het attribuut ‘name’ voor het huidige object van atlas

14.3.21.2. attributes

Geeft een kaart terug van alle attributen van een object, met veldnamen als sleutels voor de kaart.

Variant 1

Geeft een kaart van alle attributen van het huidige object terug.

Syntaxis

attributes()

Voorbeelden

  • attributes()['name'] → waarde die is opgeslagen in het attribuut ‘name’ voor het huidige object

Variant 2

Maakt het mogelijk het doelobject te specificeren.

Syntaxis

attributes(feature)

Argumenten

  • feature - een object

Voorbeelden

  • attributes( @atlas_feature )['name'] → waarde die is opgeslagen in het attribuut ‘name’ voor het huidige object van atlas

Lees verder: Functies Kaartobjecten

14.3.21.3. $currentfeature

Geeft het huidige object weer dat wordt geëvalueerd. Dit kan worden gebruikt met de functie ‘attribute’ om waarden van attributen van het huidige object te evalueren.

Syntaxis

$currentfeature

Voorbeelden

  • attribute( $currentfeature, 'name' ) → waarde die is opgeslagen in het attribuut ‘name’ voor het huidige object

14.3.21.4. display_expression

Geeft de weergave-expressie terug voor een opgegeven object op een laag. De expressie wordt standaard geëvalueerd. Kan worden gebruikt met nul, een of meer argumenten, bekijk de details hieronder.

Geen parameters

Indien aangeroepen zonder parameters, zal de functie de weergave-expressie van het huidige object op de huidige laag evalueren.

Syntaxis

display_expression()

Voorbeelden

  • display_expression() → De weergave-expressie van het huidige object op de huidige laag.

Ëén parameter ‘feature’

Indien aangeroepen met een parameter ‘feature’ zal de functie de weergave-expressie van het gespecificeerde object op de huidige laag evalueren.

Syntaxis

display_expression(feature)

Argumenten

  • feature - Het object dat zou moeten worden geëvalueerd.

Voorbeelden

  • display_expression(@atlas_feature) → De weergave-expressie van het huidige object van atlas.

Parameters voor laag en object

Indien aangeroepen met een parameter voor zowel de laag als een object zal de functie het gespecificeerde object op de gespecificeerde laag evalueren.

Syntaxis

display_expression(layer, feature, [evaluate=true])

[] markeert optionele argumenten

Argumenten

  • layer - De laag (of diens ID of naam)

  • feature - Het object dat zou moeten worden geëvalueerd.

  • evaluate - Of de expressie moet worden geëvalueerd. Indien false zal de expressie worden teruggegeven als alleen een letterlijke tekenreeks (die potentieel later zou kunnen worden geëvalueerd met de functie ‘eval’).

Voorbeelden

  • display_expression( 'streets', get_feature_by_id('streets', 1)) → De weergave-expressie van het object met de ID 1 op de laag ‘streets’.

  • display_expression('a_layer_id', $currentfeature, 'False') → De weergave-expressie van het huidige object niet geëvalueerd.

14.3.21.5. get_feature

Geeft het eerste object uit een laag terug dat voldoet aan een bepaalde opgegeven waarde voor een attribuut.

Syntaxis

get_feature(layer, attribute, value)

Argumenten

  • layer - laagnaam of ID

  • attribute - naam van het attribuut

  • value - waarde van het attribuut die overeen moet komen

Voorbeelden

  • get_feature('streets','name','main st') → feeste gevonden object op de laag “streets” met de waarde “main st” in het veld “name”

14.3.21.6. get_feature_by_id

Geeft het object met een ID op een laag terug.

Syntaxis

get_feature_by_id(layer, feature_id)

Argumenten

  • layer - laag, laagnaam of laag-ID

  • feature_id - het ID van het object dat zou moeten worden teruggegeven

Voorbeelden

  • get_feature_by_id('streets', 1) → het object met de ID 1 op de laag “streets”

Lees verder: $id

14.3.21.7. $id

Geeft het object-ID van de huidige rij terug.

Syntaxis

$id

Voorbeelden

  • $id → 42

14.3.21.8. is_selected

Geeft True terug als een object is geselecteerd. Kan worden gebruikt met nul, een of meer argumenten, bekijk de details hieronder.

Geen parameters

Indien aangeroepen zonder parameters, zal de functie true teruggeven als het huidige object op de huidige laag is geselecteerd.

Syntaxis

is_selected()

Voorbeelden

  • is_selected() → True als het huidige object op de huidige laag is geselecteerd.

Ëén parameter ‘feature’

Indien aangeroepen met alleen een parameter ‘feature’ zal de functie true teruggeven als het gespecificeerde object op de huidige laag is geselecteerd.

Syntaxis

is_selected(feature)

Argumenten

  • feature - Het object dat zou moeten worden gecontroleerd of het geselecteerd is.

Voorbeelden

  • is_selected(@atlas_feature) → True als een geselecteerd object op de huidige laag het actieve object van atlas is.

  • is_selected(get_feature(@layer, 'name', 'Main St.'))) → True als het uniek benoemde object “Main St.” op de huidige laag is geselecteerd.

  • is_selected(get_feature_by_id(@layer, 1)) → True als het object met de ID 1 op de huidige laag is geselecteerd.

Twee parameters

Indien aangeroepen met een parameter voor zowel de laag als een object zal de functie true teruggeven als het gespecificeerde object op de gespecificeerde laag is geselecteerd.

Syntaxis

is_selected(layer, feature)

Argumenten

  • layer - De laag (zijn ID of naam) waarop de selectie zal worden gecontroleerd.

  • feature - Het object dat zou moeten worden gecontroleerd of het geselecteerd is.

Voorbeelden

  • is_selected( 'streets', get_feature('streets', 'name', "street_name")) → True als de huidige straat van het gebouw is geselecteerd (er van uitgaande dat de laag met gebouwen een veld, genaamd ‘street_name’, heeft en de laag ‘streets’ een veld, genaamd ‘name’, met unieke waarden heeft).

  • is_selected( 'streets', get_feature_by_id('streets', 1)) → True als het object met de ID 1 op de laag “streets” is geselecteerd.

14.3.21.9. maptip

Geeft de kaarttip terug voor een opgegeven object op een laag. De expressie wordt standaard geëvalueerd. Kan worden gebruikt met nul, een of meer argumenten, bekijk de details hieronder.

Geen parameters

Indien aangeroepen zonder parameters, zal de functie de kaarttip van het huidige object op de huidige laag evalueren.

Syntaxis

maptip()

Voorbeelden

  • maptip() → De kaarttip van het huidige object op de huidige laag.

Ëén parameter ‘feature’

Indien aangeroepen met een parameter ‘feature’ zal de functie de weergave-expressie van het gespecificeerde object op de huidige laag evalueren.

Syntaxis

maptip(feature)

Argumenten

  • feature - Het object dat zou moeten worden geëvalueerd.

Voorbeelden

  • maptip(@atlas_feature) → De kaarttip van het huidige object van atlas.

Parameters voor laag en object

Indien aangeroepen met een parameter voor zowel de laag als een object zal de functie het gespecificeerde object op de gespecificeerde laag evalueren.

Syntaxis

maptip(layer, feature, [evaluate=true])

[] markeert optionele argumenten

Argumenten

  • layer - De laag (of diens ID of naam)

  • feature - Het object dat zou moeten worden geëvalueerd.

  • evaluate - Of de expressie moet worden geëvalueerd. Indien false zal de expressie worden teruggegeven als alleen een letterlijke tekenreeks (die potentieel later zou kunnen worden geëvalueerd met de functie ‘eval_template’).

Voorbeelden

  • maptip('streets', get_feature_by_id('streets', 1)) → De kaarttip van het object met de ID 1 op de laag ‘streets’.

  • maptip('a_layer_id', $currentfeature, 'False') → De kaarttip van het huidige object niet geëvalueerd.

14.3.21.10. num_selected

Geeft het aantal geselecteerde objecten op een opgegeven laag terug. Werkt standaard op de laag waarop de expressie wordt geëvalueerd.

Syntaxis

num_selected([layer=current layer])

[] markeert optionele argumenten

Argumenten

  • layer - De laag (of zijn ID of naam) waarvan gecontroleerd moet worden of die is geselecteerd.

Voorbeelden

  • num_selected() → Het aantal geselecteerde objecten op de huidige laag.

  • num_selected('streets') → Het aantal geselecteerde objecten op de laag ‘streets’

14.3.21.11. represent_value

Geeft de geconfigureerde waarde voor weergave terug voor een veldwaarde. Het is afhankelijk van het geconfigureerde type widget. Dit is vaak nuttig met de widgets ‘Waardenkaart’.

Syntaxis

represent_value(value, fieldName)

Argumenten

  • value - De waarde die zou moeten worden opgelost. Meestal een veld.

  • fieldName - De veldnaam waarvoor de configuratie van de widget zou moeten worden geladen. (Optioneel)

Voorbeelden

  • represent_value("field_with_value_map") → Omschrijving voor waarde

  • represent_value('static value', 'field_name') → Omschrijving voor statische waarde

Lees verder: typen widget

14.3.21.12. sqlite_fetch_and_increment

Beheren van automatisch verhogende waarden in databases van SQLite.

Standaardwaarden voor SQLite kunnen alleen worden toegepast met invoegen en niet vooraf worden opgehaald.

Dit maakt het onmogelijk om een automatisch verhogende primaire sleutel op te halen via AUTO_INCREMENT voordat de rij in de database wordt gemaakt. Opmerking terzijde: met PostgreSQL werkt dit via de optie evaluate default values.

Bij het toevoegen van nieuwe objecten met relaties, is het echt fijn om in staat te zijn om reeds kinderen toe te voegen voor een ouder, terwijl het ouder-formulier nog steeds geopend is, maar het ouder-object nog niet is ingediend.

Deze functie kan worden gebruikt om, teneinde deze beperking te omzeilen, reeksen waarden te beheren in een afzonderlijke tabel met op SQL gebaseerde indelingen, zoals gpkg.

De tabel met de reeks zal worden gefilterd op een ID voor de reeks (filter_attribute en filter_value) en de huidige waarde van het id_field zal worden verhoogd met 1 en de verhoogde waarde wordt teruggegeven.

Als aanvullende kolommen waarden vereisen die zijn gespecificeerd, kan de kaart default_values voor dit doel worden gebruikt.

Opmerking

Deze functie past de doel-SQLitetabel aan. Het is bedoeld om te gebruiken met configuraties voor standaardwaarde voor attributen.

Wanneer de parameter voor de database een laag is en de laag staat in de modus Transactie, zal de waarde slechts eenmaal worden opgehaald gedurende de levenscyclus van een transactie en gecachet en verhoogd. Dit maakt het niet veilig om parallel vanuit verschillende processen te werken met dezelfde database.

Syntaxis

sqlite_fetch_and_increment(database, table, id_field, filter_attribute, filter_value, [default_values])

[] markeert optionele argumenten

Argumenten

  • database - Pad naar het bestand van SQLite of laag van Geopackage

  • table - Naam van de tabel die de reeksen beheert

  • id_field - Naam van het veld dat de huidige waarde bevat

  • filter_attribute - Naam van het veld dat een unieke identificatie voor deze reeks bevat. Moet een index UNIQUE hebben.

  • filter_value - Naam van de te gebruiken reeks.

  • default_values - Kaart met aanvullende standaardwaarden voor aanvullende kolommen in de tabel. De waarden moeten zijn omsloten door aanhalingstekens. Functies zijn toegestaan.

Voorbeelden

  • sqlite_fetch_and_increment(@layer, 'sequence_table', 'last_unique_id', 'sequence_id', 'global', map('last_change', 'date(''now'')', 'user', '''' || @user_account_name || '''')) → 0

  • sqlite_fetch_and_increment(layer_property(@layer, 'path'), 'sequence_table', 'last_unique_id', 'sequence_id', 'global', map('last_change', 'date(''now'')', 'user', '''' || @user_account_name || '''')) → 0

Lees verder: Eigenschappen Databronnen, Een tot veel- of veel-tot-veel-relaties maken

14.3.21.13. uuid

Genereert een Universally Unique Identifier (UUID) voor elke rij met de methode van Qt QUuid::createUuid. Elke UUID is 38 tekens lang.

Syntaxis

uuid()

Voorbeelden

  • uuid() → ‘{0bd2f60f-f157-4a6d-96af-d4ba4cb366a1}’

14.3.22. Relaties

Deze groep bevat de lijst met relaties die beschikbaar zijn in het huidige project, met hun beschrijvingen. Het verschaft een snelle toegang tot de ID van de relatie voor het schrijven van een expressie (met bijv. de functie relation_aggregate) of het aanpassen van een formulier.

14.3.23. Tekstfuncties

Deze groep bevat functies die werken op tekst (bijv. vervangen, omzetten naar hoofdletters).

14.3.23.1. ascii

Geeft de code voor Unicode terug dat is geassocieerd met het eerste teken uit een tekenreeks.

Syntaxis

ascii(string)

Argumenten

  • string - de naar Unicode te decoderen tekenreeks

Voorbeelden

  • ascii('Q') → 81

14.3.23.2. char

Geeft het teken terug dat is geassocieerd met een code voor Unicode.

Syntaxis

char(code)

Argumenten

  • code - een getal voor Unicode

Voorbeelden

  • char(81) → ‘Q’

14.3.23.3. concat

Voegt verscheidene tekenreeksen samen tot een. Waarden NULL worden geconverteerd naar lege tekenreeksen. Andere waarden (zoals getallen) worden geconverteerd naar tekenreeksen.

Syntaxis

concat(string1, string2, …)

Argumenten

  • string - een waarde tekenreeks

Voorbeelden

  • concat('sun', 'set') → ‘sunset’

  • concat('a','b','c','d','e') → ‘abcde’

  • concat('Anno ', 1984) → ‘Anno 1984’

  • concat('The Wall', NULL) → ‘The Wall’

Over het samenvoegen van velden

U kunt ook tekenreeksen of veldwaarden samenvoegen met ofwel de operatoren || of +, met enkele speciale karakteristieken:

  • De operator + betekent ook het optellen van de expressie, dus als u een integer deel hebt (veld of numerieke waarde), kan dit gevoelig zijn voor fouten en kunt u beter de andere gebruiken:

    'My feature id is: ' + "gid" => triggers an error as gid returns an integer
    
  • Wanneer een van de argumenten een waarde NULL is, zullen || of + een waarde NULL teruggeven. U zou misschien de functie concat willen gebruiken om de andere argumenten, ongeacht de waarde NULL, terug te geven:

    'My feature id is: ' + NULL ==> NULL
    'My feature id is: ' || NULL => NULL
    concat('My feature id is: ', NULL) => 'My feature id is: '
    

14.3.23.4. format

Maakt een tekenreeks op met behulp van de opgegeven argumenten.

Syntaxis

format(string, arg1, arg2, …)

Argumenten

  • string - Een tekenreeks met plaatsvervangers voor de argumenten. Gebruik %1, %2, etc voor plaatsvervangers. Plaatsvervangers mogen worden herhaald.

  • arg - elk type. Elk aantal argumenten.

Voorbeelden

  • format('Dit %1 een %2','is', 'test') → ‘Dit is een test’

14.3.23.5. format_date

Maakt een type date of tekenreeks op in een aangepaste indeling voor de tekenreeks. Gebruikt Qt date/time-indeling tekenreeksen. Bekijk QDateTime::fromString.

Syntaxis

format_date(datetime, format, [language])

[] markeert optionele argumenten

Argumenten

  • datetime - waarde date, time of datetime

  • format - Tekenreekssjabloon dat moet worden gebruikt voor het indelen van de tekenreeks.

    Expressie

    Uitvoer

    d

    de dag als getal zonder voorloopnul (1 tot en met 31)

    dd

    de dag als getal met voorloopnul (01 tot en met 31)

    ddd

    de verkorte gelokaliseerde naam van de dag (bijv. ‘maa’ tot en met ‘zon’)

    dddd

    de lange gelokaliseerde naam van de dag (bijv. ‘maandag’ tot en met ‘zondag’)

    M

    de maand als getal zonder voorloopnul (1-12)

    MM

    de maand als getal met voorloopnul (01-12)

    MMM

    de verkorte gelokaliseerde naam van de maand (bijv. ‘jan’ tot en met ‘dec’)

    MMMM

    de lange gelokaliseerde naam van de maand (bijv. ‘januari’ tot en met ‘december’)

    yy

    het jaar als een cijfer met twee getallen (00-99)

    yyyy

    het jaar als een cijfer met vier getallen

    Deze expressies kunnen worden gebruikt voor het tijdsgedeelte van de indeling van de tekenreeks:

    Expressie

    Uitvoer

    h

    het uur als getal zonder voorloopnul (0 tot en met 23 of 1 tot en met 12 met weergave AM/PM)

    hh

    het uur als getal met voorloopnul (00 tot en met 23 of 01 tot en met 12 met weergave AM/PM)

    H

    het uur als getal zonder voorloopnul (0 tot en met 23, zelfs met weergave AM/PM)

    HH

    het uur als getal met voorloopnul (00 tot en met 23, zelfs met weergave AM/PM)

    m

    de minuut als getal zonder voorloopnul (0 tot en met 59)

    mm

    de minuut als getal met voorloopnul (00 tot en met 59)

    s

    de seconde als getal zonder voorloopnul (0 tot en met 59)

    ss

    de seconde als getal met voorloopnul (00 tot en met 59)

    z

    de milliseconden zonder achterliggende nullen (0 tot en met 999)

    zzz

    de milliseconden met achterliggende nullen (000 tot en met 999)

    AP of A

    geïnterpreteerd als een tijd AM/PM. AP moet zijn ofwel ‘AM’ of ‘PM’.

    ap of a

    geïnterpreteerd als een tijd AM/PM. ap moet zijn ofwel ‘am’ of ‘pm’.

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om de datum op te maken als een aangepaste tekenreeks

Voorbeelden

  • format_date('2012-05-15','dd.MM.yyyy') → ‘15.05.2012’

  • format_date('2012-05-15','d MMMM yyyy','fr') → ‘15 mai 2012’

  • format_date('2012-05-15','dddd') → ‘Tuesday’

  • format_date('2012-05-15 13:54:20','dd.MM.yy') → ‘15.05.12’

  • format_date('13:54:20','hh:mm AP') → ‘01:54 PM’

14.3.23.6. format_number

Geeft een getal terug dat is opgemaakt met het lokale scheidingsteken voor duizendtallen. Breekt ook het getal af tot het opgegeven aantal plaatsen achter de komma.

Syntaxis

format_number(number, places, [language])

[] markeert optionele argumenten

Argumenten

  • number - getal dat moet worden opgemaakt

  • places - integer die het aantal plaatsen achter de komma weergeeft voor het afbreken van de tekenreeks.

  • language - taal (kleine letters, twee- of drieletterige ISO 639-taalcode) gebruikt om het getal op te maken als een tekenreeks

Voorbeelden

  • format_number(10000000.332,2) → ‘10,000,000.33’

  • format_number(10000000.332,2,'fr') → ‘10 000 000,33’

14.3.23.7. left

Geeft een subtekenreeks terug die de n meest links gelegen tekens van de tekenreeks bevat.

Syntaxis

left(string, length)

Argumenten

  • string - een tekenreeks

  • length - integer. Het aantal tekens, vanaf links, van de tekenreeks die moeten worden teruggegeven.

Voorbeelden

  • left('Hello World',5) → ‘Hello’

14.3.23.8. length

Geeft het aantal tekens in een tekenreeks terug of de lengte van een geometrie lijn.

Variant Tekenreeks

Geeft het aantal tekens in een tekenreeks terug.

Syntaxis

length(string)

Argumenten

  • string - tekenreeks waarvan de lengte moet worden geteld

Voorbeelden

  • length('hello') → 5

Variant Geometrie

Geeft de lengte terug van een geometrie-object lijn. Berekeningen zijn altijd planimetrisch in het ruimtelijke referentiesysteem (SRS) van deze geometrie, en de eenheden van de teruggegeven lengte komen overeen met de eenheden voor het SRS. Dit verschilt van de door de functie $length uitgevoerde berekeningen, die ellipsoïde berekeningen zal uitvoeren, gebaseerd op de instellingen voor de ellipsoïde van het project en eenheden voor afstanden.

Syntaxis

length(geometry)

Argumenten

  • geometry - geometrie-object lijn

Voorbeelden

  • length(geom_from_wkt('LINESTRING(0 0, 4 0)')) → 4.0

14.3.23.9. lower

Converteert een tekenreeks naar kleine letters.

Syntaxis

lower(string)

Argumenten

  • string - de naar kleine letters te converteren tekenreeks

Voorbeelden

  • lower('HELLO World') → ‘hello world’

14.3.23.10. lpad

Geeft een tekenreeks terug van de opgegeven breedte die vanaf links is uitgevuld met een vulteken. Als de doelbreedte smaller is dan de lengte van de tekenreeks, wordt de tekenreeks afgebroken.

Syntaxis

lpad(string, width, fill)

Argumenten

  • string - tekenreeks die moet worden uitgevuld

  • width - lengte van de nieuwe tekenreeks

  • fill - teken waarmee de resterende ruimte moet worden uitgevuld

Voorbeelden

  • lpad('Hello', 10, 'x') → ‘xxxxxHello’

  • lpad('Hello', 3, 'x') → ‘Hel’

14.3.23.11. regexp_match

Geeft de eerste overeenkomende positie van een reguliere expressie binnen een tekenreeks van Unicode terug, of 0 als de subtekenreeks niet wordt gevonden.

Syntaxis

regexp_match(input_string, regex)

Argumenten

  • input_string - de tekenreeks die moet worden getest tegen de reguliere expressie

  • regex - De reguliere expressie die getest moet worden. Tekens backslash moeten dubbel worden geëscaped (bijv. “\\s” om overeen te komen met een teken voor witruimte of “\\b” om overeen te komen met een woordgrens)

Voorbeelden

  • regexp_match('QGIS ROCKS','\\sROCKS') → 5

  • regexp_match('Budač','udač\\b') → 2

14.3.23.12. regexp_replace

Geeft een tekenreeks terug waarin de opgegeven reguliere expressie is vervangen.

Syntaxis

regexp_replace(input_string, regex, replacement)

Argumenten

  • input_string - de tekenreeks waarin de overeenkomsten moeten worden vervangen

  • regex - De reguliere expressie die vervangen moet worden. Tekens backslash moeten dubbel worden geëscaped (bijv. “\\s” om overeen te komen met een teken voor witruimte).

  • replacement - De tekenreeks die alle overeenkomsten van de opgegeven reguliere expressie zal vervangen. Vanggroepen kunnen in de tekenreeks voor vervangen worden ingevoegd met \\1, \\2, etc.

Voorbeelden

  • regexp_replace('QGIS SHOULD ROCK','\\sSHOULD\\s',' DOES ') → ‘QGIS DOES ROCK’

  • regexp_replace('ABC123','\\d+','') → ‘ABC’

  • regexp_replace('mijn naam is Jan','(.*) is (.*)','\\2 is \\1') → ‘Jan is mijn naam’

14.3.23.13. regexp_substr

Geeft het gedeelte van een tekenreeks terug dat overeenkomt met een opgegeven reguliere expressie.

Syntaxis

regexp_substr(input_string, regex)

Argumenten

  • input_string - de tekenreeks waarin de overeenkomsten moeten worden gevonden

  • regex - De reguliere expressie die getest moet worden. Tekens backslash moeten dubbel worden geëscaped (bijv. “\\s” om overeen te komen met een teken voor witruimte).

Voorbeelden

  • regexp_substr('abc123','(\\d+)') → ‘123’

14.3.23.14. replace

Geeft een tekenreeks terug waarin de opgegeven tekenreeks, array, of kaart met tekenreeksen is vervangen.

Variant tekenreeks & array

Geeft een tekenreeks terug waarin de opgegeven tekenreeks of array van tekenreeksen is vervangen door een tekenreeks of een array van tekenreeksen.

Syntaxis

replace(string, before, after)

Argumenten

  • string - de tekenreeks voor de invoer

  • before - de te vervangen tekenreeks of array van tekenreeksen

  • after - de tekenreeks of array van tekenreeksen die gebruikt moet worden als vervanging

Voorbeelden

  • replace('QGIS SHOULD ROCK','SHOULD','DOES') → ‘QGIS DOES ROCK’

  • replace('QGIS ABC',array('A','B','C'),array('X','Y','Z')) → ‘QGIS XYZ’

  • replace('QGIS',array('Q','S'),'') → ‘GI’

Variant kaart

Geeft een tekenreeks terug waarin de opgegeven kaart met sleutels is vervangen door gepaarde waarden.

Syntaxis

replace(string, map)

Argumenten

  • string - de tekenreeks voor de invoer

  • map - de kaart die de sleutels en waarden bevat

Voorbeelden

  • replace('APP SHOULD ROCK',map('APP','QGIS','SHOULD','DOES')) → ‘QGIS DOES ROCK’

14.3.23.16. rpad

Geeft een tekenreeks terug van de opgegeven breedte die vanaf rechts is uitgevuld met een vulteken. Als de doelbreedte smaller is dan de lengte van de tekenreeks, wordt de tekenreeks afgebroken.

Syntaxis

rpad(string, width, fill)

Argumenten

  • string - tekenreeks die moet worden uitgevuld

  • width - lengte van de nieuwe tekenreeks

  • fill - teken waarmee de resterende ruimte moet worden uitgevuld

Voorbeelden

  • rpad('Hello', 10, 'x') → ‘Helloxxxxx’

  • rpad('Hello', 3, 'x') → ‘Hel’

14.3.23.17. strpos

Geeft de eerste overeenkomende positie van een subtekenreeks binnen een andere tekenreeks terug, of 0 als de subtekenreeks niet wordt gevonden.

Syntaxis

strpos(haystack, needle)

Argumenten

  • haystack - tekenreeks waarin moet worden gezocht

  • needle - tekenreeks waarnaar moet worden gezocht

Voorbeelden

  • strpos('HELLO WORLD','WORLD') → 7

  • strpos('HELLO WORLD','GOODBYE') → 0

14.3.23.18. substr

Geeft een deel van een tekenreeks terug.

Syntaxis

substr(string, start, [length])

[] markeert optionele argumenten

Argumenten

  • string - de volledige tekenreeks voor de invoer

  • start - integer die de beginpositie weergeeft vanaf waar moet worden uitgenomen, beginnend met 1; als start negatief is, zal de teruggegeven tekenreeks beginnen aan het einde van de tekenreeks minus de waarde van start

  • length - integer die de lengte van de terug te geven tekenreeks weergeeft; als length negatief is, zal de teruggegeven tekenreeks de opgegeven lengte van tekens weglaten vanaf het einde van de tekenreeks

Voorbeelden

  • substr('HELLO WORLD',3,5) → ‘LLO W’

  • substr('HELLO WORLD',6) → ‘ WORLD’

  • substr('HELLO WORLD',-5) → ‘WORLD’

  • substr('HELLO',3,-1) → ‘LL’

  • substr('HELLO WORLD',-5,2) → ‘WO’

  • substr('HELLO WORLD',-5,-1) → ‘WORL’

14.3.23.19. title

Converteert alle woorden van een tekenreeks naar titels (alle woorden in kleine letters met hoofdletter aan het begin).

Syntaxis

title(string)

Argumenten

  • string - de naar titels te converteren tekenreeks

Voorbeelden

  • title('hello WOrld') → ‘Hello World’

14.3.23.20. to_string

Converteert een getal naar een tekenreeks.

Syntaxis

to_string(number)

Argumenten

  • number - Waarde integer of real. Het getal dat moet worden geconverteerd naar een tekenreeks.

Voorbeelden

  • to_string(123) → ‘123’

14.3.23.21. trim

Verwijdert alle voor- en achterliggende witruimte (spaties, tabs, etc) uit een tekenreeks.

Syntaxis

trim(string)

Argumenten

  • string - tekenreeks die moet worden getrimd

Voorbeelden

  • trim('   hello world    ') → ‘hello world’

14.3.23.22. upper

Converteert een tekenreeks naar hoofdletters.

Syntaxis

upper(string)

Argumenten

  • string - de naar hoofdletters te converteren tekenreeks

Voorbeelden

  • upper('hello WOrld') → ‘HELLO WORLD’

14.3.23.23. wordwrap

Geeft een tekenreeks terug, verpakt in een maximum/minimum aantal tekens.

Syntaxis

wordwrap(string, wrap_length, [delimiter_string])

[] markeert optionele argumenten

Argumenten

  • string - de te verpakken tekenreeks

  • wrap_length - een integer. Als wrap_length positief is dan geeft het getal het ideale maximale aantal te verpakken tekens weer; indien negatief, geeft het getal het minimale aantal te verpakken tekens weer.

  • delimiter_string - Optionele tekenreeks als scheidingsteken om naar een nieuwe regel te verpakken.

Voorbeelden

  • wordwrap('UNIVERSITY OF QGIS',13) → ‘UNIVERSITY OF<br>QGIS’

  • wordwrap('UNIVERSITY OF QGIS',-3) → ‘UNIVERSITY<br>OF QGIS’

14.3.24. Gebruikersexpressies

Deze groep bevat de expressies die zijn opgeslagen als gebruikersexpressies.

14.3.25. Variabelen

Deze groep bevat dynamische variabelen gerelateerd aan de toepassing, het projectbestand en andere instellingen. De beschikbaarheid van variabelen is afhankelijk van de context:

  • in het dialoogvenster expressionSelect Objecten selecteren met een expressie

  • in het dialoogvenster calculateField Veldberekening

  • in het dialoogvenster Laageigenschappen

  • uit de afdruklay-out

Deze variabelen zouden, om te kunnen worden gebruikt in een expressie, moeten worden voorafgegaan door het teken @ (bijv. @row_number).

Variabele

Omschrijving

algorithm_id

De unieke ID van een algoritme

animation_end_time

Einde van de tijdsperiode van Tijdbeheer voor de gehele animatie (als een waarde datetime)

animation_interval

Duur van de tijdsperiode van Tijdbeheer voor de gehele animatie (als een waarde interval)

animation_start_time

Begin van de tijdsperiode van Tijdbeheer voor de gehele animatie (als een waarde datetime)

atlas_feature

Het huidige object in atlas (als object object)

atlas_featureid

Het huidige atlas object-ID

atlas_featurenumber

Het huidige nummer voor het object van atlas in de lay-out

atlas_filename

De huidige bestandsnaam voor atlas

atlas_geometry

De geometrie voor het huidige atlas-object

atlas_layerid

De huidige ID voor de bedekkingslaag van atlas

atlas_layername

De naam van de huidige bedekkingslaag van atlas

atlas_pagename

De huidige paginanaam voor atlas

atlas_totalfeatures

Het totale aantal objecten in de atlas

canvas_cursor_point

De laatste cursorpositie in het kaartvenster in de geografische coördinaten van het project

cluster_color

De kleur van symbolen binnen een cluster, of NULL als symbolen gemixte kleuren hebben

cluster_size

Het aantal opgenomen symbolen binnen een cluster

current_feature

Het object dat momenteel wordt bewerkt in het attributenformulier of n de tabelrij

current_geometry

De geometrie van het object dat momenteel wordt bewerkt in het attributenformulier of in de tabelrij

current_parent_feature

geeft het object terug dat momenteel wordt bewerkt in het ouderformulier. Alleen te gebruiken in de context van een ingebed formulier.

current_parent_geometry

geeft de geometrie van het object terug dat momenteel wordt bewerkt in het ouderformulier. Alleen te gebruiken in de context van een ingebed formulier.

form_mode

Waar het formulier voor gebruikt wordt, zoals AddFeatureMode, SingleEditMode, MultiEditMode, SearchMode, AggregateSearchMode of IdentifyMode als tekenreeks.

frame_duration

Duur voor Tijdbeheer van elk frame voor de animatie (als een waarde interval)

frame_number

Huidige framenummer gedurende terugspelen van de animatie

frame_rate

Aantal frames per seconde gedurende terugspelen van de animatie

fullextent_maxx

Maximum waarde X uit volledig bereik kaartvenster (inclusief alle lagen)

fullextent_maxy

Maximum waarde Y uit volledig bereik kaartvenster (inclusief alle lagen)

fullextent_minx

Minimum waarde X uit volledig bereik kaartvenster (inclusief alle lagen)

fullextent_miny

Minimum waarde Y uit volledig bereik kaartvenster (inclusief alle lagen)

geometry_part_count

Het aantal delen in de geometrie van het gerenderde object

geometry_part_num

Het huidige nummer van het deel van de geometrie voor het object dat wordt gerenderd

geometry_point_count

Het aantal punten in het gerenderde deel van een geometrie

geometry_point_num

Het nummer van het huidige punt in het gerenderde deel van een geometrie

grid_axis

De huidige as voor het annotatieraster (bijv, ‘x’ voor longitude, ‘y’ voor latitude).

grid_number

De huidige waarde annotatieraster

item_id

Het huidige gebruikers-ID van item afdruklay-out (niet noodzakelijkerwijze uniek)

item_uuid

Het unieke ID van item afdruklay-out

layer

De huidige laag

layer_id

Het ID van de huidige laag

layer_ids

De ID’s van alle kaartlagen in het huidige project, als een lijst

layer_name

De naam van de huidige laag

layers

Alle kaartlagen in het huidige project, als een lijst

layout_dpi

De resolutie van de lay-out (DPI)

layout_name

De naam van de lay-out

layout_numpages

Het aantal pagina’s in de lay-out

layout_page

Het paginanummer van het huidige item in de lay-out

layout_pageheight

De hoogte van de actieve pagina in de lay-out (in mm)

layout_pagewidth

De breedte van de actieve pagina in de lay-out (in mm)

legend_column_count

Het aantal kolommen in de legenda

legend_filter_by_map

Geeft aan of de inhoud van de legenda is gefilterd op de kaart

legend_filter_out_atlas

Geeft aan of de Atlas is uitgefilterd van de legenda

legend_split_layers

Geeft aan of lagen in de legenda kunnen worden gesplitst

legend_title

De titel van de legenda

legend_wrap_string

Het/de teken(s) die zijn gebruikt om de tekst van de legenda te verpakken

map_crs

De naam van het coördinaten referentiesysteem van de huidige kaart

map_crs_acronym

Het acroniem van het coördinaten referentiesysteem van de huidige kaart

map_crs_definition

De volledige definitie van het coördinaten referentiesysteem van de huidige kaart

map_crs_description

De naam van het coördinaten referentiesysteem van de huidige kaart

map_crs_ellipsoid

Het acroniem van de ellipsoïde van het coördinaten referentiesysteem van de huidige kaart

map_crs_proj4

De definitie voor Proj4 van het coördinaten referentiesysteem van de huidige kaart

map_crs_wkt

De definitie voor WKT van het coördinaten referentiesysteem van de huidige kaart

map_end_time

Het einde van de tijdsperiode van Tijdbeheer voor de kaart (als een waarde datetime)

map_extent

De geometrie die het huidige bereik van de kaart weergeeft

map_extent_center

Het puntobject in het midden van het kaartvenster

map_extent_height

De huidige hoogte van de kaart

kaart_bereik_breedte

De huidige breedte van de kaart

map_id

Het ID van het huidige doel op de kaart. Dit zal ‘canvas’ zijn voor renderers van het kaartvenster, en het item-ID voor renderers van de afdruklay-out

map_interval

De duur van de tijdsperiode van Tijdbeheer voor de kaart (als een waarde interval)

map_layer_ids

De lijst met ID’s van op de kaart zichtbare lagen

map_layers

De lijst van op de kaart zichtbare lagen

map_rotation

De huidige rotatie van de kaart

map_scale

De huidige schaal van de kaart

map_start_time

Het begin van de tijdsperiode van Tijdbeheer voor de kaart (als een waarde datetime)

map_units

De maateenheden voor de kaart

model_path

Het volledige pad (inclusief bestandsnaam) van het huidige model (of pad van het project als het model is ingebed in een project).

model_folder

Map die het huidige model bevat (of map van het project als het model is ingebed in een project).

model_name

Naam van het huidige model

model_group

Groep voor het huidige model

notification_message

Inhoud van het notificatiebericht dat is verzonden door de provider (alleen beschikbaar voor acties die worden geactiveerd door notificaties van de provider).

parent

Verwijst naar het huidige object in de ouderlaag, toegang verschaffend tot de attributen en geometrie bij het filteren met een functie samenvoegen

project_abstract

De abstract van project, afkomstig uit de metadata van het project

project_area_units

De eenheid voor gebied voor het huidige project, gebruikt voor het berekenen van gebieden van geometrieën

project_author

De auteur van het project, afkomstig uit de metadata van het project

project_basename

De basisnaam van de bestandsnaam van het huidige project (zonder pad en extensie)

project_creation_date

De aanmaakdatum van het project, afkomstig uit de metadata van het project

project_crs

Het coördinaten referentiesysteem van het project

project_crs_arconym

Het acroniem van het coördinaten referentiesysteem van het project

project_crs_definition

De volledige definitie van het coördinaten referentiesysteem van het project

project_crs_description

De beschrijving van het coördinaten referentiesysteem van het project

project_crs_ellipsoid

De ellipsoïde van het coördinaten referentiesysteem van het project

project_crs_proj4

De weergave in Proj4 van het coördinaten referentiesysteem van het project

project_crs_wkt

De weergave in WKT (well known text) van het coördinaten referentiesysteem van het project

project_distance_units

De eenheid voor afstand voor het huidige project, gebruikt voor het berekenen van lengten van geometrieën en afstanden

project_ellipsoid

De naam van de ellipsoïde voor het huidige project, gebruikt voor het berekenen van geodetische gebieden of lengten van geometrieën

project_filename

De bestandsnaam van het huidige project

project_folder

De map voor het huidige project

project_home

Het pad naar de map voor het huidige project

project_identifier

De identificatie van het project, afkomstig uit de metadata van het project

project_keywords

De sleutelwoorden van het project, afkomstig uit de metadata van het project

project_last_saved

Datum/tijd van wanneer project voor het laatst werd opgeslagen.

project_path

Het volledige pad (inclusief bestandsnaam) van het huidige project

project_title

De titel van het huidige project

project_units

De eenheden van het CRS van het project

qgis_locale

De huidige taal van QGIS

qgis_os_name

De naam van het huidige besturingssysteem, bijv ‘Windows’, ‘Linux’ of ‘OSX’

qgis_platform

Het platform voor QGIS, bijv. ‘desktop’ of ‘server’

qgis_release_name

De naam van de huidige uitgave voor QGIS

qgis_short_version

De verkorte tekenreeks voor de huidige versie van QGIS

qgis_version

De tekenreeks voor de huidige versie van QGIS

qgis_version_no

Het huidige versienummer voor QGIS

row_number

Slaat het nummer van de huidige rij op

snapping_results

Geeft toegang tot de resultaten voor snappen bij digitaliseren van een object (alleen beschikbaar in Object toevoegen)

scale_value

De huidige waarde voor afstand van de schaalbalk

symbol_angle

De hoek van symbool dat is gebruikt om het object te renderen (alleen geldig voor markeringssymbolen)

symbol_color

De kleur van het symbool dat is gebruikt om het object te renderen

symbol_count

Het aantal objecten, weergegeven door het symbool (in de Legenda van lay-out)

symbol_id

Het interne ID van het symbool (in de Legenda van de lay-out)

symbol_label

Het label voor het symbool (ofwel een door de gebruiker gedefinieerd label of het standaard, automatisch gemaakte, label - in de Legenda van de lay-out)

symbol_layer_count

Totaal aantal symboollagen in het symbool

symbol_layer_index

Huidige index voor de symboollaag

symbol_marker_column

Kolomnummer voor markering (alleen geldig voor vullingen van puntpatroon).

symbol_marker_row

Rijnummer voor markering (alleen geldig voor vullingen van puntpatroon).

user_account_name

De accountnaam van de gebruiker voor het huidige besturingssysteem

user_full_name

De gebruikersnaam van de huidige gebruiker voor het besturingssysteem

value

De huidige waarde

with_variable

Maakt instellen van een variabele mogelijk om te gebruiken in een expressie om herhaaldelijk herberekenen van dezelfde waarde te vermijden

zoom_level

Zoomniveau van de tegel die momenteel wordt gerenderd (afgeleid van de huidige schaal van de kaart). Normaal gesproken in interval [0, 20].

Enkele voorbeelden:

  • Geef het X-coördinaat van het midden van een kaartitem in een lay-out terug:

    x( map_get( item_variables( 'map1'), 'map_extent_center' ) )
    
  • Geef, voor elk object op de huidige laag, het aantal overlappende objecten airports terug:

    aggregate( layer:='airport', aggregate:='count', expression:="code",
                   filter:=intersects( $geometry, geometry( @parent ) ) )
    
  • Haal het object_ID op van het eerste gesnapte punt van een lijn:

    with_variable(
      'first_snapped_point',
      array_first( @snapping_results ),
      attribute(
        get_feature_by_id(
          map_get( @first_snapped_point, 'layer' ),
          map_get( @first_snapped_point, 'feature_id' )
        ),
        'object_id'
      )
    )
    

14.3.26. Functies Recent

Deze groep bevat recent gebruikte functies. Afhankelijk van de context van zijn gebruik (object selecteren, veldberekening, algemeen), worden recent toegepaste expressies toegevoegd aan de corresponderende lijst (tot maximaal tien expressies), gesorteerd van de meest tot de minst recente. Dit maakt het gemakkelijker om snel eerder gebruikte expressies terug te vinden.