Viktigt
Översättning är en gemenskapsinsats du kan gå med i. Den här sidan är för närvarande översatt till 100.00%.
9.2. Lista över funktioner
De funktioner, operatorer och variabler som finns tillgängliga i QGIS listas nedan, grupperade efter kategorier.
9.2.1. Aggregat Funktioner
Den här gruppen innehåller funktioner som aggregerar värden över lager och fält.
Visa/dölj lista över funktioner
9.2.1.1. aggregate
Returnerar ett aggregerat värde som beräknats med hjälp av funktioner från ett annat lager.
Syntax |
aggregate(layer, aggregate, expression, [filter], [concatenator=’’], [order_by]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.2. array_agg
Returnerar en array med aggregerade värden från ett fält eller uttryck.
Syntax |
array_agg(expression, [group_by], [filter], [order_by]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.3. collect
Returnerar multipartgeometrin för aggregerade geometrier från ett uttryck
Syntax |
collect(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.4. concatenate
Returnerar alla aggregerade strängar från ett fält eller uttryck som förenas av en avgränsare.
Syntax |
concatenate(expression, [group_by], [filter], [concatenator], [order_by]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.5. concatenate_unique
Returnerar alla unika strängar från ett fält eller uttryck med en avgränsare.
Syntax |
concatenate_unique(expression, [group_by], [filter], [concatenator], [order_by]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.6. count
Returnerar antalet matchande funktioner.
Syntax |
count(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.7. count_distinct
Returnerar antalet distinkta värden.
Syntax |
count_distinct(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.8. count_missing
Returnerar antalet saknade (NULL) värden.
Syntax |
count_missing(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.9. iqr
Returnerar det beräknade intervallet mellan kvartilerna från ett fält eller uttryck.
Syntax |
iqr(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.10. majority
Returnerar den sammanlagda majoriteten av värden (det vanligast förekommande värdet) från ett fält eller uttryck.
Syntax |
majority(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.11. max_length
Returnerar den maximala längden på strängar från ett fält eller uttryck.
Syntax |
max_length(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.12. maximum
Returnerar det aggregerade maxvärdet från ett fält eller uttryck.
Syntax |
maximum(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.13. mean
Returnerar det aggregerade medelvärdet från ett fält eller uttryck.
Syntax |
mean(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.14. median
Returnerar det aggregerade medianvärdet från ett fält eller uttryck.
Syntax |
median(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.15. min_length
Returnerar den minsta längden på strängar från ett fält eller uttryck.
Syntax |
min_length(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.16. minimum
Returnerar det aggregerade minimivärdet från ett fält eller uttryck.
Syntax |
minimum(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.17. minority
Returnerar den aggregerade minoriteten av värden (minst förekommande värde) från ett fält eller uttryck.
Syntax |
minority(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.18. q1
Returnerar den beräknade första kvartilen från ett fält eller uttryck.
Syntax |
q1(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.19. q3
Returnerar den beräknade tredje kvartilen från ett fält eller uttryck.
Syntax |
q3(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.20. range
Returnerar det aggregerade värdeintervallet (maximum - minimum) från ett fält eller uttryck.
Syntax |
range(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.21. relation_aggregate
Returnerar ett aggregerat värde som beräknas med hjälp av alla matchande underordnade funktioner från en lagerrelation.
Syntax |
relation_aggregate(relation, aggregate, expression, [concatenator=’’], [order_by]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: vektor_relationer
9.2.1.22. stdev
Returnerar det aggregerade standardavvikelsevärdet från ett fält eller uttryck.
Syntax |
stdev(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.1.23. sum
Returnerar det aggregerade summerade värdet från ett fält eller uttryck.
Syntax |
sum(expression, [group_by], [filter]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.2. Array-funktioner
Den här gruppen innehåller funktioner för att skapa och manipulera matriser (även kända som listdatastrukturer). Ordningen på värdena i matrisen har betydelse, till skillnad från ’map’ datastruktur, där ordningen på nyckel-värde-paren är irrelevant och värdena identifieras av sina nycklar.
Visa/dölj lista över funktioner
9.2.2.1. array
Returnerar en array som innehåller alla värden som skickats som parameter.
Syntax |
array(värde1, värde2, …) |
Argument |
|
Exempel |
|
9.2.2.2. array_all
Returnerar TRUE om en array innehåller alla värden i en given array.
Syntax |
array_all(array_a, array_b) |
Argument |
|
Exempel |
|
9.2.2.3. array_append
Returnerar en array med det angivna värdet tillagt i slutet.
Syntax |
array_append(array, value) |
Argument |
|
Exempel |
|
9.2.2.4. array_cat
Returnerar en array som innehåller alla de angivna arrayer som är sammanlänkade.
Syntax |
array_cat(array1, array2, …) |
Argument |
|
Exempel |
|
9.2.2.5. array_contains
Returnerar TRUE om en array innehåller det angivna värdet.
Syntax |
array_contains(array, value) |
Argument |
|
Exempel |
|
9.2.2.6. array_count
Räknar antalet förekomster av ett givet värde i en array.
Syntax |
array_count(array, value) |
Argument |
|
Exempel |
|
9.2.2.7. array_distinct
Returnerar en array som innehåller distinkta värden av den angivna arrayen.
Syntax |
array_distinct(array) |
Argument |
|
Exempel |
|
9.2.2.8. array_filter
Returnerar en array med endast de objekt för vilka uttrycket utvärderas till sant.
Syntax |
array_filter(array, uttryck, [limit=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.2.9. array_find
Returnerar det lägsta indexet (0 för det första) för ett värde i en array. Returnerar -1 om värdet inte hittas.
Syntax |
array_find(array, value) |
Argument |
|
Exempel |
|
9.2.2.10. array_first
Returnerar det första värdet i en array.
Syntax |
array_first(array) |
Argument |
|
Exempel |
|
9.2.2.11. array_foreach
Returnerar en array med det angivna uttrycket utvärderat på varje objekt.
Syntax |
array_foreach(array, expression) |
Argument |
|
Exempel |
|
9.2.2.12. array_get
Returnerar det N:te värdet (0 för det första) eller det sista -N:te värdet (-1 för det sista) i en array.
Syntax |
array_get(array, pos) |
Argument |
|
Exempel |
|
Råd
Du kan också använda indexoperatorn ([]) för att hämta ett värde från en array.
9.2.2.13. array_insert
Returnerar en array med det angivna värdet tillagt på den angivna positionen.
Syntax |
array_insert(array, pos, value) |
Argument |
|
Exempel |
|
9.2.2.14. array_intersect
Returnerar TRUE om minst ett element i array1 finns i array2.
Syntax |
array_intersect(array1, array2) |
Argument |
|
Exempel |
|
9.2.2.15. array_last
Returnerar det sista värdet i en array.
Syntax |
array_last(array) |
Argument |
|
Exempel |
|
9.2.2.16. array_length
Returnerar antalet element i en array.
Syntax |
array_length(array) |
Argument |
|
Exempel |
|
9.2.2.17. array_majority
Returnerar de vanligaste värdena i en array.
Syntax |
array_majority(array, [option=’all’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.2.18. array_max
Returnerar det maximala värdet i en array.
Syntax |
array_max(array) |
Argument |
|
Exempel |
|
9.2.2.19. array_mean
Returnerar medelvärdet av aritmetiska värden i en matris. Icke-numeriska värden i matrisen ignoreras.
Syntax |
array_mean(array) |
Argument |
|
Exempel |
|
9.2.2.20. array_median
Returnerar medianen för aritmetiska värden i en matris. Icke-aritmetiska värden i matrisen ignoreras.
Syntax |
array_median(array) |
Argument |
|
Exempel |
|
9.2.2.21. array_min
Returnerar det lägsta värdet i en array.
Syntax |
array_min(array) |
Argument |
|
Exempel |
|
9.2.2.22. array_minority
Returnerar de mindre vanliga värdena i en array.
Syntax |
array_minority(array, [option=’all’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.2.23. array_prepend
Returnerar en array med det angivna värdet tillagt i början.
Syntax |
array_prepend(array, value) |
Argument |
|
Exempel |
|
9.2.2.24. array_prioritize
Returnerar en array som är sorterad enligt den ordning som anges i en annan array. Värden som finns i den första arrayen men som saknas i den andra arrayen läggs till i slutet av resultatet.
Syntax |
array_prioritize(array, array_prioritize) |
Argument |
|
Exempel |
|
9.2.2.25. array_remove_all
Returnerar en array där alla poster med det angivna värdet har tagits bort.
Syntax |
array_remove_all(array, value) |
Argument |
|
Exempel |
|
9.2.2.26. array_remove_at
Returnerar en array med elementet vid det angivna indexet borttaget. Stöder positivt (0 för det första elementet) och negativt (det sista -N:e värdet, -1 för det sista elementet) index.
Syntax |
array_remove_at(array, pos) |
Argument |
|
Exempel |
|
9.2.2.27. array_replace
Returnerar en array med det angivna värdet, arrayen eller värdekartan ersatt.
Värde- och matrisvariant
Returnerar en array med det angivna värdet eller värdearrayen ersatt av ett annat värde eller en värdearray.
Syntax |
array_replace(array, before, after) |
Argument |
|
Exempel |
|
Karta variant
Returnerar en array med de angivna map-nycklarna ersatta av sina parade värden.
Syntax |
array_replace(array, map) |
Argument |
|
Exempel |
|
Ytterligare läsning: replace, regexp_replace
9.2.2.28. array_reverse
Returnerar den angivna matrisen med matrisvärden i omvänd ordning.
Syntax |
array_reverse(array) |
Argument |
|
Exempel |
|
9.2.2.29. array_slice
Returnerar en del av matrisen. Skivan definieras av argumenten start_pos och end_pos.
Syntax |
array_slice(array, start_pos, end_pos) |
Argument |
|
Exempel |
|
9.2.2.30. array_sort
Returnerar den angivna matrisen med dess element sorterade.
Syntax |
array_sort(array, [ascending=true]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.2.31. array_sum
Returnerar summan av aritmetiska värden i en array. Icke-numeriska värden i matrisen ignoreras.
Syntax |
array_sum(array) |
Argument |
|
Exempel |
|
9.2.2.32. array_to_string
Sammanfogar arrayelement till en sträng som separeras med en avgränsare och använder en valfri sträng för tomma värden.
Syntax |
array_to_string(array, [delimiter=’,’], [empty_value=’’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: uttryck_funktion_arrayer_sträng_till_array
9.2.2.33. generate_series
Skapar en array som innehåller en sekvens av tal.
Syntax |
generate_series(start, stop, [step=1]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.2.34. geometries_to_array
Delar upp en geometri i enklare geometrier i en array.
Syntax |
geometries_to_array(geometry) |
Argument |
|
Exempel |
|
9.2.2.35. regexp_matches
Returnerar en array med alla strängar som fångats av fångstgrupper, i den ordning som grupperna själva förekommer i det angivna reguljära uttrycket mot en sträng.
Syntax |
regexp_matches(string, regex, [empty_value=’’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: substr, regexp_substr
9.2.2.36. string_to_array
Delar upp strängen i en array med hjälp av den medföljande avgränsaren och en valfri sträng för tomma värden.
Syntax |
string_to_array(string, [delimiter=’,’], [empty_value=’’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: array_to_string
9.2.3. Färgfunktioner
Denna grupp innehåller funktioner för att manipulera färger.
Visa/dölj lista över funktioner
9.2.3.1. color_cmyk
Returnerar en strängrepresentation av en färg baserad på dess cyan-, magenta-, gul- och svartkomponenter
Syntax |
color_cmyk(cyan, magenta, yellow, black) |
Argument |
|
Exempel |
|
9.2.3.2. color_cmyka
Returnerar en strängrepresentation av en färg baserad på dess cyan-, magenta-, gul-, svart- och alfa-komponenter (transparens)
Syntax |
color_cmyka(cyan, magenta, yellow, black, alpha) |
Argument |
|
Exempel |
|
9.2.3.3. color_cmykf
Returnerar ett färgobjekt baserat på dess cyan-, magenta-, gul-, svart- och alfakomponenter.
Syntax |
color_cmykf(cyan, magenta, gul, svart, [alpha=1.0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.3.4. color_grayscale_average
Applicerar ett gråskalefilter på en färg och returnerar den. Returnerad typ är samma som färgargumentet, dvs. en färgsträngrepresentation eller ett färgobjekt.
Syntax |
color_grayscale_average(color) |
Argument |
|
Exempel |
|
9.2.3.5. color_hsl
Returnerar en strängrepresentation av en färg baserat på dess attribut för nyans, mättnad och ljushet.
Syntax |
color_hsl(hue, saturation, lightness) |
Argument |
|
Exempel |
|
9.2.3.6. color_hsla
Returnerar en strängrepresentation av en färg baserat på dess attribut för nyans, mättnad, ljushet och alfa (transparens)
Syntax |
color_hsla(hue, saturation, lightness, alpha) |
Argument |
|
Exempel |
|
9.2.3.7. color_hslf
Returnerar ett färgobjekt baserat på dess attribut för nyans, mättnad och ljushet.
Syntax |
color_hslf(nyans, mättnad, ljushet, [alpha=1.0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.3.8. color_hsv
Returnerar en strängrepresentation av en färg baserat på dess attribut för nyans, mättnad och värde.
Syntax |
color_hsv(hue, saturation, value) |
Argument |
|
Exempel |
|
9.2.3.9. color_hsva
Returnerar en strängrepresentation av en färg baserat på dess attribut för nyans, mättnad, värde och alfa (transparens).
Syntax |
color_hsva(hue, saturation, value, alpha) |
Argument |
|
Exempel |
|
9.2.3.10. color_hsvf
Returnerar ett färgobjekt baserat på dess attribut för nyans, mättnad och värde.
Syntax |
färg_hsvf(nyans, mättnad, värde, [alfa=1,0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.3.11. color_mix
Returnerar en färg som blandar röd-, grön-, blå- och alfavärdena för två angivna färger baserat på ett givet förhållande. Returnerad typ är samma som färgargumenten, dvs. en färgsträngrepresentation eller ett färgobjekt.
Syntax |
color_mix(color1, color2, ratio) |
Argument |
|
Exempel |
|
9.2.3.12. color_mix_rgb
Returnerar en sträng som representerar en färg som blandar röd-, grön-, blå- och alfavärdena för två angivna färger baserat på ett givet förhållande.
Syntax |
color_mix_rgb(color1, color2, ratio) |
Argument |
|
Exempel |
|
9.2.3.13. color_part
Returnerar en specifik komponent från en färgsträng eller ett färgobjekt, t.ex. den röda komponenten eller alfakomponenten.
Syntax |
color_part(color, component) |
Argument |
|
Exempel |
|
9.2.3.14. color_rgb
Returnerar en strängrepresentation av en färg baserad på dess röda, gröna och blå komponenter.
Syntax |
color_rgb(red, green, blue) |
Argument |
|
Exempel |
|
9.2.3.15. color_rgba
Returnerar en strängrepresentation av en färg baserad på dess röda, gröna, blå och alfa (transparens) komponenter.
Syntax |
color_rgba(red, green, blue, alpha) |
Argument |
|
Exempel |
|
9.2.3.16. color_rgbf
Returnerar ett färgobjekt baserat på dess röd-, grön-, blå- och alfakomponenter.
Syntax |
color_rgbf(röd, grön, blå, [alpha=1,0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.3.17. create_ramp
Returnerar en gradientramp från en karta med färgsträngar och steg.
Syntax |
create_ramp(map, [discrete=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.3.18. darker
Returnerar en mörkare (eller ljusare) färg. Returnerad typ är samma som för färgargument, dvs. en färgsträngrepresentation eller ett färgobjekt.
Syntax |
darker(color, factor) |
Argument |
|
Exempel |
|
För vidare läsning: lighter
9.2.3.19. lighter
Returnerar en ljusare (eller mörkare) färg. Returnerad typ är samma som för färgargument, dvs. en färgsträngrepresentation eller ett färgobjekt.
Syntax |
lighter(color, factor) |
Argument |
|
Exempel |
|
För vidare läsning: uttrycksfunktion_färg_mörkare
9.2.3.20. project_color
Returnerar en färg från projektets färgschema.
Syntax |
project_color(name) |
Argument |
|
Exempel |
|
Ytterligare läsning: Ställa in projektfärger
9.2.3.21. project_color_object
Returnerar en färg från projektets färgschema. I motsats till project_color som returnerar en färgsträng, returnerar project_color_object ett färgobjekt.
Syntax |
project_color_object(name) |
Argument |
|
Exempel |
|
9.2.3.22. ramp_color
Returnerar en sträng som representerar en färg från en färgramp.
Sparad rampvariant
Returnerar en sträng som representerar en färg från en sparad ramp
Syntax |
ramp_color(ramp_name, value) |
Argument |
|
Exempel |
|
Observera
De tillgängliga färgramperna varierar mellan olika QGIS-installationer. Den här funktionen kanske inte ger förväntat resultat om du flyttar ditt QGIS-projekt mellan olika installationer.
Uttryck-skapad rampvariant
Returnerar en sträng som representerar en färg från en ramp som skapats med ett uttryck
Syntax |
ramp_color(ramp, value) |
Argument |
|
Exempel |
|
Ytterligare läsning: Inställning av en färgramp, Kortkommando för färgrampens rullgardinsmeny
9.2.3.23. ramp_color_object
Returnerar ett färgobjekt från en färgramp. I motsats till ramp_color som returnerar en färgsträngrepresentation, returnerar ramp_color_object ett färgobjekt.
Sparad rampvariant
Returnerar ett färgobjekt från en sparad ramp
Syntax |
ramp_color_object(ramp_name, value) |
Argument |
|
Exempel |
|
Observera
De tillgängliga färgramperna varierar mellan olika QGIS-installationer. Den här funktionen kanske inte ger förväntat resultat om du flyttar ditt QGIS-projekt mellan olika installationer.
Uttryck-skapad rampvariant
Returnerar ett färgobjekt från en ramp som skapats med ett uttryck
Syntax |
ramp_color_object(ramp, value) |
Argument |
|
Exempel |
|
9.2.3.24. set_color_part
Ställer in en specifik färgkomponent för en färgsträng eller ett färgobjekt, t.ex. röd komponent eller alfakomponent.
Syntax |
set_color_part(color, component, value) |
Argument |
|
Exempel |
|
9.2.4. Villkorliga funktioner
Den här gruppen innehåller funktioner för att hantera villkorliga kontroller i uttryck.
Visa/dölj lista över funktioner
9.2.4.1. CASE
CASE används för att utvärdera en serie villkor och returnera ett resultat för det första villkoret som uppfylls. Villkoren utvärderas sekventiellt, och om ett villkor är sant stoppas utvärderingen och motsvarande resultat returneras. Om inget av villkoren är sant returneras värdet i ELSE-satsen. Om ingen ELSE-sats anges och inget av villkoren uppfylls, returneras dessutom NULL.
CASE
WHEN villkor THEN resultat
[ …n ]
[ ELSE resultat ]
END
[ ] markerar valfria komponenter
Argument |
|
Exempel |
|
9.2.4.2. coalesce
Returnerar det första icke-NULL-värdet från uttrycksförteckningen.
Denna funktion kan ta ett valfritt antal argument.
Syntax |
coalesce(uttryck1, uttryck2, …) |
Argument |
|
Exempel |
|
9.2.4.3. if
Testar ett villkor och returnerar ett annat resultat beroende på den villkorliga kontrollen.
Syntax |
if(condition, result_when_true, result_when_false) |
Argument |
|
Exempel |
|
9.2.4.4. nullif
Returnerar ett NULL-värde om värde1 är lika med värde2; annars returneras värde1. Detta kan användas för att villkorligt ersätta värden med NULL.
Syntax |
nullif(värde1, värde2) |
Argument |
|
Exempel |
|
9.2.4.5. regexp_match
Returnerar den första matchande positionen som matchar ett reguljärt uttryck i en unikodsträng, eller 0 om delsträngen inte hittas.
Syntax |
regexp_match(input_string, regex) |
Argument |
|
Exempel |
|
9.2.4.6. try
Prövar ett uttryck och returnerar dess värde om det är felfritt. Om uttrycket ger ett fel returneras ett alternativt värde när det anges, annars returnerar funktionen NULL.
Syntax |
try(expression, [alternative]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.5. Konverteringar Funktioner
Denna grupp innehåller funktioner för att konvertera en datatyp till en annan (t.ex. sträng från/till heltal, binär från/till sträng, sträng till datum, …).
Visa/dölj lista över funktioner
9.2.5.1. from_base64
Avkodar en sträng i Base64-kodning till ett binärt värde.
Syntax |
from_base64(string) |
Argument |
|
Exempel |
|
9.2.5.2. hash
Skapar en hash från en sträng med en given metod. En byte (8 bitar) representeras av två hexadecimala ”siffror”, så ”md4” (16 byte) ger en 16 * 2 = 32 tecken lång hexadisk sträng och ”keccak_512” (64 byte) ger en 64 * 2 = 128 tecken lång hexadisk sträng.
Syntax |
hash(string, method) |
Argument |
|
Exempel |
|
9.2.5.3. md5
Skapar en md5-hash från en sträng.
Syntax |
md5(string) |
Argument |
|
Exempel |
|
9.2.5.4. sha256
Skapar en sha256-hash från en sträng.
Syntax |
sha256(string) |
Argument |
|
Exempel |
|
9.2.5.5. to_base64
Kodar ett binärt värde till en sträng med hjälp av Base64-kodning.
Syntax |
to_base64(value) |
Argument |
|
Exempel |
|
9.2.5.6. to_date
Konverterar en sträng till ett datumobjekt. En valfri formatsträng kan anges för att analysera strängen; se QDate::fromString eller dokumentationen av funktionen format_date för ytterligare dokumentation om formatet. Som standard används den aktuella QGIS-användarens locale.
Syntax |
to_date(string, [format], [language]) [] markerar valfria argument |
Argument |
|
Exempel |
|
För vidare läsning: format_date
9.2.5.7. to_datetime
Konverterar en sträng till ett datetime-objekt. En valfri formatsträng kan anges för att analysera strängen; se QDate::fromString, QTime::fromString eller dokumentationen av funktionen format_date för ytterligare dokumentation om formatet. Som standard används den aktuella QGIS-användarens locale.
Syntax |
to_datetime(string, [format], [language]) [] markerar valfria argument |
Argument |
|
Exempel |
|
För vidare läsning: format_date
9.2.5.8. to_decimal
Konverterar en koordinat för grader, minuter och sekunder till dess decimala motsvarighet.
Syntax |
to_decimal(value) |
Argument |
|
Exempel |
|
9.2.5.9. to_dm
Konverterar en koordinat till grad, minut.
Syntax |
to_dm(coordinate, axis, precision, [formatting=]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.5.10. to_dms
Konverterar en koordinat till grad, minut, sekund.
Syntax |
to_dms(coordinate, axis, precision, [formatting=]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.5.11. to_int
Konverterar en sträng till ett heltal. Om ett värde inte kan konverteras till heltal är uttrycket ogiltigt (t.ex. ”123asd” är ogiltigt).
Syntax |
to_int(string) |
Argument |
|
Exempel |
|
9.2.5.12. to_interval
Konverterar en sträng till en intervalltyp. Kan användas för att ta dagar, timmar, månad etc. från ett datum.
Syntax |
to_interval(string) |
Argument |
|
Exempel |
|
9.2.5.13. to_real
Konverterar en sträng till ett reellt tal. Om ett värde inte kan konverteras till ett reellt tal är uttrycket ogiltigt (t.ex. ”123.56asd” är ogiltigt). Tal avrundas efter att ändringar har sparats om precisionen är mindre än resultatet av konverteringen.
Syntax |
to_real(string) |
Argument |
|
Exempel |
|
9.2.5.14. to_string
Konverterar ett tal till en sträng.
Syntax |
to_string(number) |
Argument |
|
Exempel |
|
Ytterligare läsning: format_number
9.2.5.15. to_time
Konverterar en sträng till ett tidsobjekt. En valfri formatsträng kan anges för att analysera strängen; se QTime::fromString för ytterligare dokumentation om formatet.
Syntax |
to_time(string, [format], [language]) [] markerar valfria argument |
Argument |
|
Exempel |
|
För vidare läsning: format_date
9.2.6. Anpassade funktioner
Denna grupp innehåller funktioner som skapats av användaren. Se Funktion Redaktör för mer information.
9.2.7. Datum- och tidsfunktioner
Denna grupp innehåller funktioner för hantering av datum- och tidsdata. Den här gruppen delar flera funktioner med grupperna Konverteringar Funktioner (to_date, to_time, to_datetime, to_interval) och Strängfunktioner (format_date).
Observera
Lagring av datum, datatid och intervall i fält
Möjligheten att lagra datum-, tid- och datumtid-värden direkt i fält beror på datakällans leverantör (t.ex. accepterar Shapefile datum-format, men inte datumtid- eller tid-format). Följande är några förslag för att övervinna denna begränsning:
date, datetime och time kan konverteras och lagras i fält av texttyp med hjälp av funktionen format_date().
Intervall kan lagras i fält av heltals- eller decimaltyp efter användning av en av funktionerna för datumutdragning (t.ex. day() för att få intervallet uttryckt i dagar)
Visa/dölj lista över funktioner
9.2.7.1. age
Returnerar skillnaden mellan två datum eller datatider.
Skillnaden returneras som en Interval
och måste användas med någon av följande funktioner för att få ut användbar information:
year
month
week
day
hour
minute
second
Syntax |
age(datetime1, datetime2) |
Argument |
|
Exempel |
|
9.2.7.2. datetime_from_epoch
Returnerar en datatid vars datum och tid är antalet millisekunder, msecs, som har passerat sedan 1970-01-01T00:00:00.000, Coordinated Universal Time (Qt.UTC), och konverterat till Qt.LocalTime.
Syntax |
datetime_from_epoch(int) |
Argument |
|
Exempel |
|
9.2.7.3. day
Extraherar dagen från ett datum, eller antalet dagar från ett intervall.
Datumvariant
Extraherar dagen från ett datum eller en datetime.
Syntax |
day(date) |
Argument |
|
Exempel |
|
Intervallvariant
Beräknar längden i dagar för ett intervall.
Syntax |
day(interval) |
Argument |
|
Exempel |
|
9.2.7.4. day_of_week
Returnerar veckodagen för ett angivet datum eller en angiven datatid. Det returnerade värdet sträcker sig från 0 till 6, där 0 motsvarar en söndag och 6 en lördag.
Syntax |
day_of_week(date) |
Argument |
|
Exempel |
|
9.2.7.5. epoch
Returnerar intervallet i millisekunder mellan unix-epoken och ett givet datumvärde.
Syntax |
epoch(date) |
Argument |
|
Exempel |
|
9.2.7.6. format_date
Formaterar en datatyp eller sträng till ett anpassat strängformat. Använder Qt datum/tid formatsträngar. Se QDateTime::toString.
Syntax |
format_date(datetime, format, [language]) [] markerar valfria argument |
||||||||||||||||||||||||||||||||||||||||||||||||
Argument |
|
||||||||||||||||||||||||||||||||||||||||||||||||
Exempel |
|
9.2.7.7. hour
Extraherar timdelen från en datetime eller tid, eller antalet timmar från ett intervall.
Tidsvariant
Extraherar timdelen från en tid eller datetime.
Syntax |
hour(datetime) |
Argument |
|
Exempel |
|
Intervallvariant
Beräknar längden i timmar för ett intervall.
Syntax |
hour(interval) |
Argument |
|
Exempel |
|
9.2.7.8. make_date
Skapar ett datumvärde från siffrorna år, månad och dag.
Syntax |
make_date(year, month, day) |
Argument |
|
Exempel |
|
9.2.7.9. make_datetime
Skapar ett datetime-värde från siffrorna år, månad, dag, timme, minut och sekund.
Syntax |
make_datetime(year, month, day, hour, minute, second) |
Argument |
|
Exempel |
|
9.2.7.10. make_interval
Skapar ett intervallvärde från värdena år, månad, veckor, dagar, timmar, minuter och sekunder.
Syntax |
make_interval([years=0], [months=0], [weeks=0], [days=0], [hours=0], [minutes=0], [seconds=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.7.11. make_time
Skapar ett tidsvärde från tim-, minut- och sekundtal.
Syntax |
make_time(hour, minute, second) |
Argument |
|
Exempel |
|
9.2.7.12. minute
Extraherar minutdelen från en datatid eller tid, eller antalet minuter från ett intervall.
Tidsvariant
Extraherar minutdelen från en tid eller datetime.
Syntax |
minute(datetime) |
Argument |
|
Exempel |
|
Intervallvariant
Beräknar längden i minuter för ett intervall.
Syntax |
minute(interval) |
Argument |
|
Exempel |
|
9.2.7.13. month
Extraherar månadsdelen från ett datum, eller antalet månader från ett intervall.
Datumvariant
Extraherar månadsdelen från ett datum eller en datetime.
Syntax |
month(date) |
Argument |
|
Exempel |
|
Intervallvariant
Beräknar längden i månader för ett intervall.
Syntax |
month(interval) |
Argument |
|
Exempel |
|
9.2.7.14. now
Returnerar aktuellt datum och aktuell tid. Funktionen är statisk och ger konsekventa resultat när den utvärderas. Den tid som returneras är den tid då uttrycket förbereds.
Syntax |
now() |
Exempel |
|
9.2.7.15. sekund
Extraherar sekunddelen från en datetime eller tid, eller antalet sekunder från ett intervall.
Tidsvariant
Extraherar sekunddelen från en tid eller datetime.
Syntax |
sekund(datetime) |
Argument |
|
Exempel |
|
Intervallvariant
Beräknar längden i sekunder för ett intervall.
Syntax |
second(interval) |
Argument |
|
Exempel |
|
9.2.7.16. to_date
Konverterar en sträng till ett datumobjekt. En valfri formatsträng kan anges för att analysera strängen; se QDate::fromString eller dokumentationen av funktionen format_date för ytterligare dokumentation om formatet. Som standard används den aktuella QGIS-användarens locale.
Syntax |
to_date(string, [format], [language]) [] markerar valfria argument |
Argument |
|
Exempel |
|
För vidare läsning: format_date
9.2.7.17. to_datetime
Konverterar en sträng till ett datetime-objekt. En valfri formatsträng kan anges för att analysera strängen; se QDate::fromString, QTime::fromString eller dokumentationen av funktionen format_date för ytterligare dokumentation om formatet. Som standard används den aktuella QGIS-användarens locale.
Syntax |
to_datetime(string, [format], [language]) [] markerar valfria argument |
Argument |
|
Exempel |
|
För vidare läsning: format_date
9.2.7.18. to_interval
Konverterar en sträng till en intervalltyp. Kan användas för att ta dagar, timmar, månad etc. från ett datum.
Syntax |
to_interval(string) |
Argument |
|
Exempel |
|
9.2.7.19. to_time
Konverterar en sträng till ett tidsobjekt. En valfri formatsträng kan anges för att analysera strängen; se QTime::fromString för ytterligare dokumentation om formatet.
Syntax |
to_time(string, [format], [language]) [] markerar valfria argument |
Argument |
|
Exempel |
|
För vidare läsning: format_date
9.2.7.20. week
Extraherar veckonumret från ett datum, eller antalet veckor från ett intervall.
Datumvariant
Extraherar veckonumret från ett datum eller en datetime.
Syntax |
week(date) |
Argument |
|
Exempel |
|
Intervallvariant
Beräknar längden i veckor för ett intervall.
Syntax |
week(interval) |
Argument |
|
Exempel |
|
9.2.7.21. year
Extraherar årsdelen från ett datum, eller antalet år från ett intervall.
Datumvariant
Extraherar årsdelen från ett datum eller en datetime.
Syntax |
year(date) |
Argument |
|
Exempel |
|
Intervallvariant
Beräknar längden i år för ett intervall.
Syntax |
year(interval) |
Argument |
|
Exempel |
|
**Några exempel: **
Förutom dessa funktioner ger subtraktion av datum, datumtider eller tider med hjälp av operatorn -
(minus) ett intervall.
Om du adderar eller subtraherar ett intervall till datum, datetime eller tid med operatörerna +
(plus) och -
(minus) får du tillbaka en datetime.
Få antalet dagar tills QGIS 3.0 släpps:
to_date('2017-09-29') - to_date(now()) -- Returns <interval: 203 days>
Samma sak med tiden:
to_datetime('2017-09-29 12:00:00') - now() -- Returns <interval: 202.49 days>
Hämta datatiden för 100 dagar från och med nu:
now() + to_interval('100 days') -- Returns <datetime: 2017-06-18 01:00:00>
9.2.8. Fält och värden
Innehåller en lista över fält från det aktiva skiktet och specialvärden. Fältlistan innehåller de som lagras i datasetet, virtual och auxiliary samt från joins.
Dubbelklicka på ett fältnamn för att lägga till det i ditt uttryck. Du kan också skriva fältnamnet (helst inom dubbla citattecken) eller dess alias.
För att hämta fältvärden som ska användas i ett uttryck väljer du lämpligt fält och i den widget som visas väljer du mellan 10 Samples och All Unique. De begärda värdena visas sedan och du kan använda rutan Search högst upp i listan för att filtrera resultatet. Exempelvärden kan också nås genom att högerklicka på ett fält.
Om du vill lägga till ett värde i det uttryck du skriver, dubbelklickar du på det i listan. Om värdet är av strängtyp ska det ha ett enkelt citattecken, annars behövs inget citattecken.
Visa/dölj lista över funktioner
9.2.8.1. NULL
Motsvarar ett NULL-värde.
Syntax |
NULL |
Exempel |
|
Observera
Om du vill testa för NULL använder du ett IS NULL- eller IS NOT NULL-uttryck.
9.2.9. Funktioner för filer och sökvägar
Denna grupp innehåller funktioner som manipulerar fil- och sökvägsnamn.
Visa/dölj lista över funktioner
9.2.9.1. base_file_name
Returnerar filens basnamn utan katalog- eller filsuffix.
Syntax |
base_file_name(path) |
Argument |
|
Exempel |
|
9.2.9.2. exif
Hämtar exif-taggvärden från en bildfil.
Syntax |
exif(path, [tag]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.9.3. file_exists
Returnerar TRUE om en filsökväg finns.
Syntax |
file_exists(path) |
Argument |
|
Exempel |
|
9.2.9.4. file_name
Returnerar namnet på en fil (inklusive filtillägget), exklusive katalogen.
Syntax |
file_name(path) |
Argument |
|
Exempel |
|
9.2.9.5. file_path
Returnerar katalogkomponenten i en filsökväg. Detta inkluderar inte filnamnet.
Syntax |
file_path(path) |
Argument |
|
Exempel |
|
9.2.9.6. file_size
Returnerar storleken (i byte) på en fil.
Syntax |
file_size(path) |
Argument |
|
Exempel |
|
9.2.9.7. file_suffix
Returnerar filsuffixet (tillägget) från en filsökväg.
Syntax |
file_suffix(path) |
Argument |
|
Exempel |
|
9.2.9.8. is_directory
Returnerar TRUE om en sökväg motsvarar en katalog.
Syntax |
is_directory(path) |
Argument |
|
Exempel |
|
9.2.9.9. is_file
Returnerar TRUE om en sökväg motsvarar en fil.
Syntax |
is_file(path) |
Argument |
|
Exempel |
|
9.2.10. Formulär Funktioner
Den här gruppen innehåller funktioner som uteslutande fungerar i attributformulärskontexten. Till exempel i inställningarna för fältets widgets.
Visa/dölj lista över funktioner
9.2.10.1. current_parent_value
Denna funktion kan endast användas i ett inbäddat formulär och returnerar det aktuella, osparade värdet för ett fält i det överordnade formulär som för närvarande redigeras. Detta kommer att skilja sig från den överordnade funktionens faktiska attributvärden för funktioner som för närvarande redigeras eller som ännu inte har lagts till i ett överordnat skikt. När den här funktionen används i ett filteruttryck för en widget med värderelation bör den förpackas i en ”coalesce()” som kan hämta den faktiska överordnade funktionen från skiktet när formuläret inte används i ett inbäddat sammanhang.
Syntax |
current_parent_value(field_name) |
Argument |
|
Exempel |
|
9.2.10.2. current_value
Returnerar det aktuella, osparade värdet för ett fält i formuläret eller tabellraden som för närvarande redigeras. Detta skiljer sig från objektets faktiska attributvärden för objekt som håller på att redigeras eller som ännu inte har lagts till i ett skikt.
Syntax |
current_value(field_name) |
Argument |
|
Exempel |
|
9.2.11. Fuzzy matchningsfunktioner
Denna grupp innehåller funktioner för fuzzy-jämförelser mellan värden.
Visa/dölj lista över funktioner
9.2.11.1. hamming_distance
Returnerar Hamming-avståndet mellan två strängar. Detta motsvarar antalet tecken vid motsvarande positioner i indatasträngarna där tecknen är olika. Inmatningssträngarna måste vara lika långa och jämförelsen är skiftlägeskänslig.
Syntax |
hamming_distance(sträng1, sträng2) |
Argument |
|
Exempel |
|
9.2.11.2. levenshtein
Returnerar Levenshtein-editeringsavståndet mellan två strängar. Detta motsvarar det minsta antal teckenredigeringar (infogningar, borttagningar eller substitutioner) som krävs för att ändra en sträng till en annan.
Levenshtein-avståndet är ett mått på likheten mellan två strängar. Mindre avstånd innebär att strängarna är mer lika, och större avstånd innebär att strängarna är mer olika. Avståndet är skiftlägeskänsligt.
Syntax |
levenshtein(string1, string2) |
Argument |
|
Exempel |
|
9.2.11.3. longest_common_substring
Returnerar den längsta gemensamma delsträngen mellan två strängar. Denna delsträng är den längsta sträng som är en delsträng av de två indatasträngarna. Till exempel är den längsta gemensamma delsträngen av ”ABABC” och ”BABCA” ”BABC”. Substrängen är skiftlägeskänslig.
Syntax |
longest_common_substring(string1, string2) |
Argument |
|
Exempel |
|
9.2.11.4. soundex
Returnerar Soundex-representationen av en sträng. Soundex är en fonetisk matchningsalgoritm, så strängar med liknande ljud bör representeras av samma Soundex-kod.
Syntax |
soundex(string) |
Argument |
|
Exempel |
|
9.2.12. Allmänna funktioner
Denna grupp innehåller allmänt sammansatta funktioner.
Visa/dölj lista över funktioner
9.2.12.1. env
Hämtar en miljövariabel och returnerar dess innehåll som en sträng. Om variabeln inte hittas returneras NULL. Detta är praktiskt för att injicera systemspecifik konfiguration som enhetsbeteckningar eller sökvägsprefix. Definitionen av miljövariabler beror på operativsystemet, kontrollera med din systemadministratör eller dokumentationen för operativsystemet hur detta kan ställas in.
Syntax |
env(name) |
Argument |
|
Exempel |
|
9.2.12.2. eval
Utvärderar ett uttryck som skickas i form av en sträng. Användbart för att expandera dynamiska parametrar som skickas som kontextvariabler eller fält.
Syntax |
eval(expression) |
Argument |
|
Exempel |
|
9.2.12.3. eval_template
Utvärderar en mall som skickas i form av en sträng. Användbar för att expandera dynamiska parametrar som skickas som kontextvariabler eller fält.
Syntax |
eval_template(template) |
Argument |
|
Exempel |
|
9.2.12.4. is_layer_visible
Returnerar TRUE om ett angivet lager är synligt.
Syntax |
is_layer_visible(layer) |
Argument |
|
Exempel |
|
9.2.12.5. mime_type
Returnerar mimetypen för binärdata.
Syntax |
mime_type(bytes) |
Argument |
|
Exempel |
|
9.2.12.6. var
Returnerar det värde som lagrats i en angiven variabel.
Syntax |
var(name) |
Argument |
|
Exempel |
|
Ytterligare läsning: Lista över standard variabler
9.2.12.7. with_variable
Denna funktion ställer in en variabel för varje uttryckskod som kommer att anges som 3:e argument. Detta är endast användbart för komplicerade uttryck, där samma beräknade värde måste användas på olika ställen.
Syntax |
with_variable(name, value, expression) |
Argument |
|
Exempel |
|
9.2.13. Geometri Funktioner
Den här gruppen innehåller funktioner som arbetar med geometriska objekt (t.ex. buffert, transform, $area).
Visa/dölj lista över funktioner
9.2.13.1. affine_transform
Returnerar geometrin efter en affin transformation. Beräkningarna görs i geometrins rumsliga referenssystem. Operationerna utförs i ordningen skala, rotation, translation. Om det finns en Z- eller M-offset men koordinaten inte finns i geometrin kommer den att läggas till.
Syntax |
affine_transform(geometry, delta_x, delta_y, rotation_z, scale_x, scale_y, [delta_z=0], [delta_m=0], [scale_z=1], [scale_m=1]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.4 Vektorpunktlager (gröna prickar) före (vänster) och efter (höger) en affin transformation (översättning).
9.2.13.2. angle_at_vertex
Returnerar bisektorvinkeln (medelvinkeln) till geometrin för ett angivet vertex på en linjestringgeometri. Vinklar anges i grader medurs från norr.
Syntax |
angle_at_vertex(geometry, vertex) |
Argument |
|
Exempel |
|
9.2.13.3. apply_dash_pattern
Använder ett streckmönster på en geometri och returnerar en MultiLineString-geometri som är indatageometrin som streckas längs varje linje/ring med det angivna mönstret.
Syntax |
apply_dash_pattern(geometry, pattern, [start_rule=no_rule], [end_rule=no_rule], [adjustment=both], [pattern_offset=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.4. $area
Returnerar arean för den aktuella funktionen. Den area som beräknas med den här funktionen respekterar både ellipsoidinställningen och inställningarna för areaenhet i det aktuella projektet. Om t.ex. en ellipsoid har ställts in för projektet kommer den beräknade arean att vara ellipsoidisk, och om ingen ellipsoid har ställts in kommer den beräknade arean att vara planimetrisk.
Syntax |
$area |
Exempel |
|
9.2.13.5. area
Returnerar arean för ett geometriskt polygonobjekt. Beräkningar är alltid planimetriska i det rumsliga referenssystemet (SRS) för denna geometri, och enheterna för den returnerade ytan kommer att matcha enheterna för SRS. Detta skiljer sig från de beräkningar som utförs av funktionen $area, som utför ellipsoidiska beräkningar baserat på projektets inställningar för ellipsoid och areaenheter.
Syntax |
area(geometry) |
Argument |
|
Exempel |
|
9.2.13.6. azimuth
Returnerar den nordbaserade azimuten som vinkeln i radianer mätt medurs från vertikalen på punkt_a till punkt_b.
Syntax |
azimuth(point_a, point_b) |
Argument |
|
Exempel |
|
9.2.13.7. bearing
Returnerar den nordbaserade bäringen som vinkeln i radianer mätt medurs på ellipsoiden från vertikalen på punkt_a till punkt_b.
Syntax |
bearing(point_a, point_b, [source_crs], [ellipsoid]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.8. boundary
Returnerar stängningen av geometrins kombinatoriska gräns (dvs. geometrins topologiska gräns). Till exempel kommer en polygongeometri att ha en gräns som består av linjestringarna för varje ring i polygonen. Vissa geometrityper har inte någon definierad gräns, t.ex. punkter eller geometrisamlingar, och returnerar NULL.
Syntax |
boundary(geometry) |
Argument |
|
Exempel |
|

Fig. 9.5 Gräns (svart streckad linje) för källans polygonlager
Ytterligare läsning: Begränsning-algoritm
9.2.13.9. bounds
Returnerar en geometri som representerar begränsningsboxen för en indatageometri. Beräkningar görs i det rumsliga referenssystemet för denna geometri.
Syntax |
bounds(geometry) |
Argument |
|
Exempel |
|

Fig. 9.6 Svarta linjer representerar de avgränsande boxarna för varje polygonfunktion
Ytterligare läsning: Begränsande boxar algoritm
9.2.13.10. bounds_height
Returnerar höjden på den avgränsande boxen för en geometri. Beräkningar görs i geometrins rumsliga referenssystem.
Syntax |
bounds_height(geometry) |
Argument |
|
Exempel |
|
9.2.13.11. bounds_width
Returnerar bredden på den avgränsande boxen för en geometri. Beräkningar görs i geometrins rumsliga referenssystem.
Syntax |
bounds_width(geometry) |
Argument |
|
Exempel |
|
9.2.13.12. buffer
Returnerar en geometri som representerar alla punkter vars avstånd från denna geometri är mindre än eller lika med distance. Beräkningar görs i det rumsliga referenssystemet för denna geometri.
Syntax |
buffert(geometri, avstånd, [segment=8], [cap=’round’], [join=’round’], [miter_limit=2]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.7 Buffert (i gult) för punkter, linjer, polygoner med positiv buffert och polygoner med negativ buffert
Ytterligare läsning: Buffra-algoritm
9.2.13.13. buffer_by_m
Skapar en buffert längs en linjegeometri där buffertdiametern varierar beroende på m-värdena i linjens hörnpunkter.
Syntax |
buffert_by_m(geometri, [segment=8]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.8 Buffring av linjefunktioner med hjälp av m-värdet på topparna
Ytterligare läsning: Buffert med variabel bredd (av M-värde) algoritm
9.2.13.14. centroid
Returnerar den geometriska mittpunkten för en geometri.
Syntax |
centroid(geometry) |
Argument |
|
Exempel |
|

Fig. 9.9 De röda stjärnorna representerar centroiderna för funktionerna i inmatningslagret.
Ytterligare läsning: Centroider algoritm
9.2.13.15. close_line
Returnerar en sluten linjestring av den inmatade linjesträngen genom att lägga till den första punkten i slutet av linjen, om den inte redan är sluten. Om geometrin inte är en radsträng eller en sträng med flera rader blir resultatet NULL.
Syntax |
close_line(geometry) |
Argument |
|
Exempel |
|
9.2.13.16. closest_point
Returnerar den punkt på geometri1 som ligger närmast geometri2.
Syntax |
closest_point(geometry1, geometry2) |
Argument |
|
Exempel |
|
9.2.13.17. collect_geometries
Samlar en uppsättning geometrier till ett geometriobjekt med flera delar.
Lista över argument variant
Geometridelar anges som separata argument till funktionen.
Syntax |
collect_geometries(geometri1, geometri2, …) |
Argument |
|
Exempel |
|
Array-variant
Geometridelar specificeras som en array av geometridelar.
Syntax |
collect_geometries(array) |
Argument |
|
Exempel |
|
Ytterligare läsning: Samla in geometrier algoritm
9.2.13.18. combine
Returnerar kombinationen av två geometrier.
Syntax |
combine(geometry1, geometry2) |
Argument |
|
Exempel |
|
9.2.13.19. concave_hull
Returnerar en eventuellt konkav polygon som innehåller alla punkter i geometrin
Syntax |
concave_hull(geometry, target_percent, [allow_holes=False]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.10 Konkava skrov med ökande parameter för target_percent
Ytterligare läsning: convex_hull, Konkavt skrov algoritm
9.2.13.20. contains
Testar om en geometri innehåller en annan. Returnerar TRUE om och endast om inga punkter i geometri2 ligger i geometri1:s utsida och minst en punkt i geometri2:s insida ligger i geometri1:s insida.
Syntax |
contains(geometry1, geometry2) |
Argument |
|
Exempel |
|
Ytterligare läsning: overlay_contains
9.2.13.21. convex_hull
Returnerar det konvexa skrovet för en geometri. Den representerar den minsta konvexa geometrin som omsluter alla geometrier i uppsättningen.
Syntax |
convex_hull(geometry) |
Argument |
|
Exempel |
|

Fig. 9.11 Svarta linjer identifierar det konvexa skrovet för varje funktion
Ytterligare läsning: concave_hull, Konvex skrovform algoritm
9.2.13.22. crosses
Testar om en geometri korsar en annan. Returnerar TRUE om de angivna geometrierna har vissa, men inte alla, inre punkter gemensamt.
Syntax |
crosses(geometry1, geometry2) |
Argument |
|
Exempel |
|
Ytterligare läsning: overlay_crosses
9.2.13.23. densify_by_count
Tar en polygon- eller linjelagergeometri och genererar en ny där geometrierna har ett större antal hörn än den ursprungliga.
Syntax |
densify_by_count(geometry, vertices) |
Argument |
|
Exempel |
|

Fig. 9.12 Röda punkter visar topparna före och efter förtätningen
Ytterligare läsning: Förtätning efter antal algoritm
9.2.13.24. densify_by_distance
Tar en polygon- eller linjelagergeometri och genererar en ny där geometrierna förtätas genom att lägga till ytterligare hörn på kanter som har ett maximalt avstånd på det angivna intervallavståndet.
Syntax |
densify_by_distance(geometry, distance) |
Argument |
|
Exempel |
|

Fig. 9.13 Förtäta geometrin vid ett givet intervall
Ytterligare läsning: Förtätning med intervall algoritm
9.2.13.25. difference
Returnerar en geometri som representerar den del av geometri1 som inte korsar geometri2.
Syntax |
difference(geometry1, geometry2) |
Argument |
|
Exempel |
|

Fig. 9.14 Skillnadsoperation mellan ett inmatningslager med två funktioner ”a” och ett överlagringslager med en funktion ”b” (vänster) - resulterar i ett nytt lager med de modifierade funktionerna från ”a” (höger)
Ytterligare läsning: Skillnad algoritm
9.2.13.26. disjoint
Testar om geometrier inte korsar varandra rumsligt. Returnerar TRUE om geometrierna inte delar något utrymme tillsammans.
Syntax |
disjoint(geometry1, geometry2) |
Argument |
|
Exempel |
|
Ytterligare läsning: overlay_disjoint
9.2.13.27. distance
Returnerar det minsta avståndet (baserat på rumslig referens) mellan två geometrier i projicerade enheter.
Syntax |
distance(geometry1, geometry2) |
Argument |
|
Exempel |
|
9.2.13.28. distance_to_vertex
Returnerar avståndet längs geometrin till en angiven vertex.
Syntax |
distance_to_vertex(geometry, vertex) |
Argument |
|
Exempel |
|
9.2.13.29. end_point
Returnerar den sista noden från en geometri.
Syntax |
end_point(geometry) |
Argument |
|
Exempel |
|

Fig. 9.15 Slutpunkt för en linjefunktion
Ytterligare läsning: start_point, Extrahera specifika toppar algoritm
9.2.13.30. exif_geotag
Skapar en punktgeometri från exif-geotaggarna i en bildfil.
Syntax |
exif_geotag(path) |
Argument |
|
Exempel |
|
9.2.13.31. extend
Förlänger början och slutet av en linjestringgeometri med en angiven mängd. Linjer förlängs med hjälp av bäringen för det första och sista segmentet i linjen. För en multilinestring förlängs alla delar. Avstånden är i det rumsliga referenssystemet för denna geometri.
Syntax |
extend(geometry, start_distance, end_distance) |
Argument |
|
Exempel |
|

Fig. 9.16 De röda strecken representerar den initiala och slutliga förlängningen av det ursprungliga lagret
Ytterligare läsning: Förlänga linjer algoritm
9.2.13.32. exterior_ring
Returnerar en radsträng som representerar den yttre ringen i en polygongeometri. Om geometrin inte är en polygon kommer resultatet att vara NULL.
Syntax |
exterior_ring(geometry) |
Argument |
|
Exempel |
|

Fig. 9.17 Den streckade linjen representerar polygonens yttre ring
9.2.13.33. extrude
Returnerar en extruderad version av den inmatade (Multi-)Curve- eller (Multi-)Linestring-geometrin med en förlängning som anges av x och y.
Syntax |
extrude(geometry, x, y) |
Argument |
|
Exempel |
|

Fig. 9.18 Generera en polygon genom att extrudera en linje med förskjutning i x- och y-riktningarna
9.2.13.34. flip_coordinates
Returnerar en kopia av geometrin med x- och y-koordinaterna ombytta. Användbar för att reparera geometrier som har fått sina latitud- och longitudvärden omkastade.
Syntax |
flip_coordinates(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: Byt X- och Y-koordinater algoritm
9.2.13.35. force_polygon_ccw
Tvingar en geometri att följa konventionen att yttre ringar är motsols och inre ringar är medsols.
Syntax |
force_polygon_ccw(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: force_polygon_cw, force_rhr
9.2.13.36. force_polygon_cw
Tvingar en geometri att följa konventionen där yttre ringar är medurs och inre ringar är moturs.
Syntax |
force_polygon_cw(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: :ref:expression_function_GeometryGroup_force_polygon_ccw`, :ref:``expression_function_GeometryGroup_force_rhr
9.2.13.37. force_rhr
Tvingar en geometri att följa högerhandsregeln, enligt vilken det område som avgränsas av en polygon ligger till höger om gränsen. I synnerhet är den yttre ringen orienterad i medurs riktning och de inre ringarna i moturs riktning. På grund av inkonsekvensen i definitionen av Right-Hand-Rule i vissa sammanhang rekommenderas att man istället använder den explicita funktionen force_polygon_cw.
Syntax |
force_rhr(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: Kraft högerhands-regel-algoritm, force_polygon_ccw, force_polygon_cw
9.2.13.38. geom_from_gml
Returnerar en geometri från en GML-representation av geometri.
Syntax |
geom_from_gml(gml) |
Argument |
|
Exempel |
|
9.2.13.39. geom_from_wkb
Returnerar en geometri som skapats från en WKB-representation (Well-Known Binary).
Syntax |
geom_from_wkb(binary) |
Argument |
|
Exempel |
|
9.2.13.40. geom_from_wkt
Returnerar en geometri som skapats från en WKT-representation (Well-Known Text).
Syntax |
geom_from_wkt(text) |
Argument |
|
Exempel |
|
9.2.13.41. geom_to_wkb
Returnerar WKB-representationen (Well-Known Binary) av en geometri
Syntax |
geom_to_wkb(geometry) |
Argument |
|
Exempel |
|
9.2.13.42. geom_to_wkt
Returnerar WKT-representationen (Well-Known Text) av geometrin utan SRID-metadata.
Syntax |
geom_to_wkt(geometri, [precision=8]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.43. $geometry
Returnerar geometrin för den aktuella funktionen. Kan användas för bearbetning med andra funktioner. VARNING: Denna funktion är föråldrad. Vi rekommenderar att du använder ersättningsvariabeln @geometry istället.
Syntax |
$geometry |
Exempel |
|
9.2.13.44. geometry
Returnerar en objekts geometri.
Syntax |
geometry(feature) |
Argument |
|
Exempel |
|
9.2.13.45. geometry_n
Returnerar en specifik geometri från en geometrisamling, eller NULL om indatageometrin inte är en samling. Returnerar även en del från en geometri med flera delar.
Syntax |
geometry_n(geometry, index) |
Argument |
|
Exempel |
|
9.2.13.46. geometry_type
Returnerar ett strängvärde som beskriver typen av geometri (punkt, linje eller polygon)
Syntax |
geometry_type(geometry) |
Argument |
|
Exempel |
|
9.2.13.47. hausdorff_distance
Returnerar Hausdorff-avståndet mellan två geometrier. Detta är i princip ett mått på hur lika eller olika 2 geometrier är, där ett lägre avstånd indikerar mer likartade geometrier.
Funktionen kan utföras med ett valfritt densify-fraktionsargument. Om inget anges används en approximation av standard Hausdorff-avstånd. Denna approximation är exakt eller tillräckligt nära för en stor undergrupp av användbara fall. Exempel på dessa är:
beräknar avståndet mellan Linestrings som är ungefär parallella med varandra och ungefär lika långa. Detta inträffar i matchande linjära nätverk.
Testar likheten mellan geometrierna.
Om den approximativa standardmetoden som tillhandahålls av denna metod är otillräcklig, ange det valfria argumentet densify fraction. Om du anger detta argument utförs en segmentförtätning innan det diskreta Hausdorff-avståndet beräknas. Parametern anger den fraktion som varje segment ska förtätas med. Varje segment delas upp i ett antal lika långa undersegment, vars fraktion av den totala längden är närmast den angivna fraktionen. Om parametern för densify fraction minskas kommer det returnerade avståndet att närma sig det verkliga Hausdorff-avståndet för geometrierna.
Syntax |
hausdorff_distance(geometry1, geometry2, [densify_fraction]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.48. inclination
Returnerar lutningen mätt från zenit (0) till nadir (180) på punkt_a till punkt_b.
Syntax |
inclination(point_a, point_b) |
Argument |
|
Exempel |
|
9.2.13.49. interior_ring_n
Returnerar en specifik inre ring från en polygongeometri, eller NULL om geometrin inte är en polygon.
Syntax |
interior_ring_n(geometry, index) |
Argument |
|
Exempel |
|
9.2.13.50. intersection
Returnerar en geometri som representerar den delade delen av två geometrier.
Syntax |
intersection(geometry1, geometry2) |
Argument |
|
Exempel |
|
Ytterligare läsning: Korsningar algoritm
9.2.13.51. intersects
Testar om en geometri skär en annan. Returnerar TRUE om geometrierna korsar varandra rumsligt (delar någon del av utrymmet) och false om de inte gör det.
Syntax |
intersects(geometry1, geometry2) |
Argument |
|
Exempel |
|
Ytterligare läsning: overlay_intersects
9.2.13.52. intersects_bbox
Testar om en geometris avgränsningsbox överlappar en annan geometris avgränsningsbox. Returnerar TRUE om geometrierna rumsligt korsar den definierade begränsningsboxen och false om de inte gör det.
Syntax |
intersects_bbox(geometry1, geometry2) |
Argument |
|
Exempel |
|
9.2.13.53. is_closed
Returnerar TRUE om en linjestring är sluten (start- och slutpunkter sammanfaller), eller false om en linjestring inte är sluten. Om geometrin inte är en linjestring blir resultatet NULL.
Syntax |
is_closed(geometry) |
Argument |
|
Exempel |
|
9.2.13.54. is_empty
Returnerar TRUE om en geometri är tom (utan koordinater), false om geometrin inte är tom och NULL om det inte finns någon geometri. Se även is_empty_or_null.
Syntax |
is_empty(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: is_empty_or_null
9.2.13.55. is_empty_or_null
Returnerar TRUE om en geometri är NULL eller tom (utan koordinater) eller false annars. Denna funktion är som uttrycket ’@geometri ÄR NULL eller is_empty(@geometri)’
Syntax |
is_empty_or_null(geometry) |
Argument |
|
Exempel |
|
9.2.13.56. is_multipart
Returnerar TRUE om geometrin är av typen Multi.
Syntax |
is_multipart(geometry) |
Argument |
|
Exempel |
|
9.2.13.57. is_valid
Returnerar TRUE om en geometri är giltig; om den är välformad i 2D enligt OGC:s regler.
Syntax |
is_valid(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: make_valid, Kontrollera giltighet algoritm
9.2.13.58. $length
Returnerar längden på en linjestring. Om du behöver längden på en polygons kant använder du $perimeter istället. Den längd som beräknas med den här funktionen respekterar både ellipsoidinställningen och inställningarna för avståndsenheter i det aktuella projektet. Om till exempel en ellipsoid har ställts in för projektet kommer den beräknade längden att vara ellipsoidisk, och om ingen ellipsoid har ställts in kommer den beräknade längden att vara planimetrisk.
Syntax |
$length |
Exempel |
|
9.2.13.59. length
Returnerar antalet tecken i en sträng eller längden på en geometrisk linjestring.
String variant
Returnerar antalet tecken i en sträng.
Syntax |
length(string) |
Argument |
|
Exempel |
|
Geometrivariant
Beräknar längden på ett geometriskt linjeobjekt. Beräkningar är alltid planimetriska i det rumsliga referenssystemet (SRS) för denna geometri, och enheterna för den returnerade längden kommer att matcha enheterna för SRS. Detta skiljer sig från de beräkningar som utförs av funktionen $length, som utför ellipsoidiska beräkningar baserat på projektets inställningar för ellipsoid och avståndsenheter.
Syntax |
length(geometry) |
Argument |
|
Exempel |
|
För vidare läsning: expression_function_GeometryGroup_straight_distance_2d`
9.2.13.60. length3D
Beräknar 3D-längden för ett geometriskt linjeobjekt. Om geometrin inte är ett 3D-linjeobjekt returneras dess 2D-längd. Beräkningarna är alltid planimetriska i det rumsliga referenssystemet (SRS) för denna geometri, och enheterna för den returnerade längden kommer att överensstämma med enheterna för SRS. Detta skiljer sig från de beräkningar som utförs av funktionen $length, som utför ellipsoidiska beräkningar baserat på projektets inställningar för ellipsoid och avståndsenheter.
Syntax |
length3D(geometry) |
Argument |
|
Exempel |
|
9.2.13.61. line_interpolate_angle
Returnerar vinkeln som är parallell med geometrin på ett angivet avstånd längs en linjestringgeometri. Vinklarna anges i grader medurs från norr.
Syntax |
line_interpolate_angle(geometry, distance) |
Argument |
|
Exempel |
|
9.2.13.62. line_interpolate_point
Returnerar den punkt som interpolerats med ett angivet avstånd längs en linjestringsgeometri.
Syntax |
line_interpolate_point(geometry, distance) |
Argument |
|
Exempel |
|

Fig. 9.19 Interpolerad punkt 500 meter från linjens början
Ytterligare läsning: Interpolera punkt på linje-algoritm
9.2.13.63. line_interpolate_point_by_m
Returnerar den punkt som interpoleras av ett matchande M-värde längs en linjestringsgeometri.
Syntax |
line_interpolate_point_by_m(geometry, m, [use_3d_distance=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.64. line_locate_m
Returnerar avståndet längs en linjestring som motsvarar det första matchande interpolerade M-värdet.
Syntax |
line_locate_m(geometry, m, [use_3d_distance=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.65. line_locate_point
Returnerar avståndet längs en linjestring som motsvarar den närmaste positionen linjestringen kommer till en angiven punktgeometri.
Syntax |
line_locate_point(geometry, point) |
Argument |
|
Exempel |
|
9.2.13.66. line_merge
Returnerar en LineString- eller MultiLineString-geometri, där alla anslutna LineStrings från indatageometrin har sammanfogats till en enda linjestring. Denna funktion returnerar NULL om en geometri som inte är en LineString/MultiLineString skickas till den.
Syntax |
line_merge(geometry) |
Argument |
|
Exempel |
|
9.2.13.67. line_substring
Returnerar den del av en linjes (eller kurvas) geometri som ligger mellan de angivna start- och slutavstånden (mätt från linjens början). Z- och M-värden interpoleras linjärt från befintliga värden.
Syntax |
line_substring(geometry, start_distance, end_distance) |
Argument |
|
Exempel |
|

Fig. 9.20 Substringslinje med startavståndet inställt på 0 meter och slutavståndet på 250 meter.
Ytterligare läsning: Linje delsträng algoritm
9.2.13.68. m
Returnerar m-värdet (mått) för en punktgeometri.
Syntax |
m(geometry) |
Argument |
|
Exempel |
|
9.2.13.69. m_at
Hämtar en m-koordinat för geometrin, eller NULL om geometrin inte har något m-värde.
Syntax |
m_at(geometry, vertex) |
Argument |
|
Exempel |
|
9.2.13.70. m_max
Returnerar det maximala m-värdet (mått) för en geometri.
Syntax |
m_max(geometry) |
Argument |
|
Exempel |
|
9.2.13.71. m_min
Returnerar det minsta m-värdet (mått) för en geometri.
Syntax |
m_min(geometry) |
Argument |
|
Exempel |
|
9.2.13.72. main_angle
Returnerar vinkeln på den långa axeln (medurs, i grader från norr) för den orienterade minimala begränsande rektangeln, som helt täcker geometrin.
Syntax |
main_angle(geometry) |
Argument |
|
Exempel |
|
9.2.13.73. make_circle
Skapar en cirkulär polygon.
Syntax |
make_circle(centrum, radie, [segment=36]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.74. make_ellipse
Skapar en elliptisk polygon.
Syntax |
make_ellipse(center, semi_major_axis, semi_minor_axis, azimuth, [segment=36]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.75. make_line
Skapar en linjegeometri från en serie punktgeometrier.
Lista över argument variant
Linjepunkterna anges som separata argument till funktionen.
Syntax |
make_line(punkt1, punkt2, …) |
Argument |
|
Exempel |
|
Array-variant
Linjens hörnpunkter anges som en matris av punkter.
Syntax |
make_line(array) |
Argument |
|
Exempel |
|
9.2.13.76. make_point
Skapar en punktgeometri från ett x- och y-värde (och valfritt z- och m-värde).
Syntax |
make_point(x, y, [z], [m]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.77. make_point_m
Skapar en punktgeometri från en x-, y-koordinat och ett m-värde.
Syntax |
make_point_m(x, y, m) |
Argument |
|
Exempel |
|
9.2.13.78. make_polygon
Skapar en polygongeometri från en yttre ring och en valfri serie geometrier för inre ringar.
Syntax |
make_polygon(outerRing, [innerRing1], [innerRing2], …) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.79. make_rectangle_3points
Skapar en rektangel från 3 punkter.
Syntax |
make_rectangle_3points(point1, point2, point3, [option=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.80. make_regular_polygon
Skapar en regelbunden polygon.
Syntax |
make_regular_polygon(centrum, radie, antal_sidor, [cirkel=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.81. make_square
Skapar en kvadrat från en diagonal.
Syntax |
make_square(point1, point2) |
Argument |
|
Exempel |
|
9.2.13.82. make_triangle
Skapar en triangelpolygon.
Syntax |
make_triangle(point1, point2, point3) |
Argument |
|
Exempel |
|
9.2.13.83. make_valid
Returnerar en giltig geometri eller en tom geometri om geometrin inte kunde göras giltig.
Syntax |
make_valid(geometry, [method=structure], [keep_collapsed=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: is_valid, Fixa geometrier algoritm
9.2.13.84. minimal_circle
Returnerar den minimala omslutande cirkeln för en geometri. Den representerar den minsta cirkeln som omsluter alla geometrier i uppsättningen.
Syntax |
minimal_cirkel(geometri, [segment=36]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.21 Minimal omslutande cirkel för varje funktion
Ytterligare läsning: Minsta omslutande cirklar algoritm
9.2.13.85. nodes_to_points
Returnerar en multipunktsgeometri som består av varje nod i indatageometrin.
Syntax |
nodes_to_points(geometry, [ignore_closing_nodes=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.22 Flerpunktsegenskaper extraherade från toppar
Ytterligare läsning: Extrahera toppar algoritm
9.2.13.86. num_geometries
Returnerar antalet geometrier i en geometrisamling, eller antalet delar i en geometri med flera delar. Funktionen returnerar NULL om indatageometrin inte är en samling.
Syntax |
num_geometries(geometry) |
Argument |
|
Exempel |
|
9.2.13.87. num_interior_rings
Returnerar antalet inre ringar i en polygon eller geometrisamling, eller NULL om indatageometrin inte är en polygon eller samling.
Syntax |
num_interior_rings(geometry) |
Argument |
|
Exempel |
|
9.2.13.88. num_points
Returnerar antalet hörn i en geometri.
Syntax |
num_points(geometry) |
Argument |
|
Exempel |
|
9.2.13.89. num_rings
Returnerar antalet ringar (inklusive yttre ringar) i en polygon eller geometrisamling, eller NULL om indatageometrin inte är en polygon eller samling.
Syntax |
num_rings(geometry) |
Argument |
|
Exempel |
|
9.2.13.90. offset_curve
Returnerar en geometri som bildas genom att en linjestringgeometri förskjuts åt sidan. Avstånden är i det rumsliga referenssystemet för denna geometri.
Syntax |
offset_curve(geometri, avstånd, [segment=8], [join=1], [miter_limit=2.0]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.23 I blått källskiktet, i rött det förskjutna skiktet
Ytterligare läsning: Offset-linjer algoritm
9.2.13.91. order_parts
Ordnar delarna i en MultiGeometry efter ett givet kriterium
Syntax |
order_parts(geometry, orderby, [ascending=true]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.92. oriented_bbox
Returnerar en geometri som representerar den minimala orienterade begränsningsboxen för en indatageometri.
Syntax |
oriented_bbox(geometry) |
Argument |
|
Exempel |
|

Fig. 9.24 Orienterad minsta avgränsande box
Ytterligare läsning: qgisorienteradminimumboundingbox-algoritm
9.2.13.93. overlaps
Testar om en geometri överlappar en annan. Returnerar TRUE om geometrierna delar utrymme, har samma dimension, men inte är helt inneslutna av varandra.
Syntax |
overlaps(geometry1, geometry2) |
Argument |
|
Exempel |
|
9.2.13.94. overlay_contains
Returnerar om den aktuella funktionen rumsligt innehåller minst en funktion från ett målskikt, eller en matris med uttrycksbaserade resultat för funktionerna i målskiktet som ingår i den aktuella funktionen.
Läs mer om det underliggande GEOS ”Contains”-predikatet, som beskrivs i PostGIS ST_Contains-funktion.
Syntax |
overlay_contains(layer, [expression], [filter], [limit], [cache=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: contains, array manipulation, Välj efter plats algoritm
9.2.13.95. overlay_crosses
Returnerar om den aktuella funktionen rumsligt korsar minst en funktion från ett målskikt, eller en uppsättning uttrycksbaserade resultat för de funktioner i målskiktet som korsas av den aktuella funktionen.
Läs mer om det underliggande GEOS ”Crosses”-predikatet, som beskrivs i PostGIS ST_Crosses-funktionen.
Syntax |
overlay_crosses(layer, [expression], [filter], [limit], [cache=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: crosses, array manipulation, Välj efter plats algoritm
9.2.13.96. overlay_disjoint
Returnerar om den aktuella funktionen är rumsligt disjunkt från alla funktioner i ett målskikt, eller en matris med uttrycksbaserade resultat för de funktioner i målskiktet som är disjunkta från den aktuella funktionen.
Läs mer om det underliggande GEOS ”Disjoint”-predikatet, som beskrivs i PostGIS ST_Disjoint function.
Syntax |
overlay_disjoint(layer, [expression], [filter], [limit], [cache=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: disjoint, array manipulation, Välj efter plats algoritm
9.2.13.97. overlay_equals
Returnerar om den aktuella funktionen är rumsligt lika med minst en funktion från ett målskikt, eller en matris med uttrycksbaserade resultat för funktionerna i målskiktet som är rumsligt lika med den aktuella funktionen.
Läs mer om det underliggande GEOS ”Equals”-predikatet, som beskrivs i PostGIS ST_Equals-funktionen.
Syntax |
overlay_equals(layer, [expression], [filter], [limit], [cache=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: array manipulation, Välj efter plats algoritm
9.2.13.98. overlay_intersects
Returnerar om den aktuella funktionen rumsligt skär minst en funktion från ett målskikt, eller en matris med uttrycksbaserade resultat för de funktioner i målskiktet som skärs av den aktuella funktionen.
Läs mer om det underliggande GEOS ”Intersects”-predikatet, som beskrivs i PostGIS ST_Intersects-funktion.
Syntax |
overlay_intersects(layer, [expression], [filter], [limit], [cache=false], [min_overlap], [min_inscribed_circle_radius], [return_details], [sort_by_intersection_size]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: intersects, array manipulation, Välj efter plats algoritm
9.2.13.99. överlagring_närmaste
Returnerar om den aktuella funktionen har funktion(er) från ett målskikt inom ett givet avstånd, eller en matris med uttrycksbaserade resultat för funktionerna i målskiktet inom ett avstånd från den aktuella funktionen.
Obs: Denna funktion kan vara långsam och förbruka mycket minne för stora lager.
Syntax |
overlay_nearest(lager, [uttryck], [filter], [limit=1], [max_avstånd], [cache=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: array manipulation, Sammanfoga attribut efter närmaste algoritm
9.2.13.100. överlägg_touches
Returnerar om den aktuella funktionen rumsligt berör minst en funktion från ett målskikt, eller en matris med uttrycksbaserade resultat för de funktioner i målskiktet som berörs av den aktuella funktionen.
Läs mer om det underliggande GEOS ”Touches” predikatet, som beskrivs i PostGIS ST_Touches funktion.
Syntax |
overlay_touches(layer, [expression], [filter], [limit], [cache=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: touches, array manipulation, Välj efter plats algoritm
9.2.13.101. overlay_within
Returnerar om den aktuella funktionen är rumsligt inom minst en funktion från ett målskikt, eller en matris med uttrycksbaserade resultat för de funktioner i målskiktet som innehåller den aktuella funktionen.
Läs mer om det underliggande GEOS ”Within”-predikatet, som beskrivs i PostGIS ST_Within-funktion.
Syntax |
overlay_within(layer, [expression], [filter], [limit], [cache=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: within, array manipulation, Välj efter plats algoritm
9.2.13.102. $perimeter
Returnerar omkretslängden för den aktuella funktionen. Den omkrets som beräknas med den här funktionen respekterar både ellipsoidinställningen och inställningarna för avståndsenhet i det aktuella projektet. Om t.ex. en ellipsoid har ställts in för projektet kommer den beräknade omkretsen att vara ellipsoidisk, och om ingen ellipsoid har ställts in kommer den beräknade omkretsen att vara planimetrisk.
Syntax |
$perimeter |
Exempel |
|
9.2.13.103. perimeter
Returnerar omkretsen för ett geometriskt polygonobjekt. Beräkningarna är alltid planimetriska i det rumsliga referenssystemet (SRS) för denna geometri, och enheterna för den returnerade omkretsen kommer att matcha enheterna för SRS. Detta skiljer sig från de beräkningar som utförs av funktionen $perimeter, som utför ellipsoidiska beräkningar baserat på projektets inställningar för ellipsoid och avståndsenheter.
Syntax |
perimeter(geometry) |
Argument |
|
Exempel |
|
9.2.13.104. point_n
Returnerar en specifik nod från en geometri.
Syntax |
point_n(geometry, index) |
Argument |
|
Exempel |
|
Ytterligare läsning: Extrahera specifika toppar algoritm
9.2.13.105. point_on_surface
Returnerar en punkt som garanterat ligger på ytan av en geometri.
Syntax |
point_on_surface(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: Punkt på ytan algoritm
9.2.13.106. pole_of_inaccessibility
Beräknar den ungefärliga otillgänglighetspolen för en yta, vilket är den mest avlägsna inre punkten från ytans gräns. Denna funktion använder ”polylabel”-algoritmen (Vladimir Agafonkin, 2016), som är en iterativ metod som garanterat hittar den verkliga otillgänglighetspolen inom en angiven tolerans. Mer exakta toleranser kräver fler iterationer och tar längre tid att beräkna.
Syntax |
pole_of_inaccessibility(geometry, tolerance) |
Argument |
|
Exempel |
|

Fig. 9.25 Pol av otillgänglighet
Ytterligare läsning: Pol av otillgänglighet algoritm
9.2.13.107. project
Returnerar en punkt som projiceras från en startpunkt med hjälp av ett avstånd, en bäring (azimut) och en elevation i radianer.
Syntax |
project(point, distance, azimuth, [elevation]) [] markerar valfria argument |
Argument |
|
Exempel |
|
För vidare läsning: Projektpunkter (kartesiska) algoritm
9.2.13.108. relate
Testar DE-9IM (Dimensional Extended 9 Intersection Model) representation av förhållandet mellan två geometrier.
Relationship variant
Returnerar representationen av förhållandet mellan två geometrier enligt DE-9IM (Dimensional Extended 9 Intersection Model).
Syntax |
relate(geometry, geometry) |
Argument |
|
Exempel |
|
Mönstermatchningsvariant
Testar om DE-9IM-förhållandet mellan två geometrier stämmer överens med ett angivet mönster.
Syntax |
relate(geometry, geometry, pattern) |
Argument |
|
Exempel |
|
9.2.13.109. reverse
Omvänder riktningen på en linjestring genom att vända ordningen på dess hörn.
Syntax |
reverse(geometry) |
Argument |
|
Exempel |
|

Fig. 9.26 Vändning av linjens riktning
Ytterligare läsning: Omvänd riktning på linjen algoritm
9.2.13.110. rotate
Returnerar en roterad version av en geometri. Beräkningar görs i geometrins rumsliga referenssystem.
Syntax |
rotate(geometry, rotation, [center=NULL], [per_part=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.27 Roterande funktioner
9.2.13.111. roundness
Beräknar hur nära en polygonform är en cirkel. Funktionen returnerar SANT när polygonformen är en perfekt cirkel och 0 när den är helt platt.
Syntax |
roundness(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: Rundhet-algoritm
9.2.13.112. scale
Returnerar en skalad version av en geometri. Beräkningar görs i geometrins rumsliga referenssystem.
Syntax |
scale(geometry, x_scale, y_scale, [center]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.13.113. segments_to_lines
Returnerar en geometri med flera linjer som består av en linje för varje segment i indatageometrin.
Syntax |
segments_to_lines(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: Explodera linjer algoritm
9.2.13.115. shortest_line
Returnerar den kortaste linjen som förbinder geometri1 med geometri2. Den resulterande linjen kommer att börja vid geometri1 och sluta vid geometri2.
Syntax |
shortest_line(geometry1, geometry2) |
Argument |
|
Exempel |
|
9.2.13.116. simplify
Förenklar en geometri genom att ta bort noder med hjälp av ett avståndsbaserat tröskelvärde (t.ex. Douglas Peucker-algoritmen). Algoritmen bevarar stora avvikelser i geometrier och minskar antalet toppar i nästan raka segment.
Syntax |
simplify(geometry, tolerance) |
Argument |
|
Exempel |
|

Fig. 9.28 Från vänster till höger, källskikt och ökande förenklingstoleranser
Ytterligare läsning: Förenkla algoritm
9.2.13.117. simplify_vw
Förenklar en geometri genom att ta bort noder med hjälp av ett ytbaserat tröskelvärde (t.ex. Visvalingam-Whyatt-algoritmen). Algoritmen tar bort hörn som skapar små områden i geometrier, t.ex. smala spikar eller nästan raka segment.
Syntax |
simplify_vw(geometry, tolerance) |
Argument |
|
Exempel |
|
Ytterligare läsning: Förenkla algoritm
9.2.13.118. single_sided_buffer
Returnerar en geometri som bildats genom att buffra ut bara en sida av en linjestringgeometri. Avstånden är i det rumsliga referenssystemet för denna geometri.
Syntax |
single_sided_buffer(geometri, avstånd, [segment=8], [join=1], [miter_limit=2.0]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.29 Vänster- och högersidig buffert på samma vektorlinjelager
Ytterligare läsning: Enkelsidig buffert-algoritm
9.2.13.119. sinuosity
Returnerar en kurvas sinuositet, vilket är förhållandet mellan kurvans längd och det raka (2D) avståndet mellan dess ändpunkter.
Syntax |
sinuosity(geometry) |
Argument |
|
Exempel |
|
9.2.13.120. smooth
Utjämnar en geometri genom att lägga till extra noder som avrundar geometrins hörn. Om indatageometrier innehåller Z- eller M-värden kommer dessa också att jämnas ut och utdatageometrin kommer att behålla samma dimensionalitet som indatageometrin.
Syntax |
smooth(geometri, [iterationer=1], [offset=0,25], [min_längd=-1], [max_vinkel=180]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.30 Ökat antal iterationer ger jämnare geometrier
Ytterligare läsning: Smidig algoritm
9.2.13.121. square_wave
Konstruerar kvadratiska/rektangulära vågor längs en geometris gräns.
Syntax |
square_wave(geometry, wavelength, amplitude, [strict=False]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.31 Symbolisering av funktioner med fyrkantsvågor
9.2.13.122. square_wave_randomized
Konstruerar slumpmässiga kvadratiska/rektangulära vågor längs gränsen för en geometri.
Syntax |
square_wave_randomized(geometry, min_våglängd, max_våglängd, min_amplitud, max_amplitud, [seed=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.32 Symbolisering av funktioner med kvadratiska slumpmässiga vågor
9.2.13.123. start_point
Returnerar den första noden från en geometri.
Syntax |
start_point(geometry) |
Argument |
|
Exempel |
|

Fig. 9.33 Startpunkt för en linjefunktion
Ytterligare läsning: end_point, Extrahera specifika toppar algoritm
9.2.13.124. straight_distance_2d
Returnerar det direkta/euklidiska avståndet mellan det första och sista toppunktet i en geometri. Geometrin måste vara en kurva (circularstring, linestring).
Syntax |
straight_distance_2d(geometry) |
Argument |
|
Exempel |
|
Ytterligare läsning: length
9.2.13.125. sym_difference
Returnerar en geometri som representerar de delar av två geometrier som inte skär varandra.
Syntax |
sym_difference(geometry1, geometry2) |
Argument |
|
Exempel |
|
För vidare läsning: Symmetrisk skillnad algoritm
9.2.13.126. tapered_buffer
Skapar en buffert längs en linjegeometri där buffertdiametern varierar jämnt över linjens längd.
Syntax |
tapered_buffer(geometry, start_width, end_width, [segments=8]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.34 Avsmalnande buffert på linjefunktioner
Ytterligare läsning: Avsmalnande buffertar-algoritm
9.2.13.127. touches
Testar om en geometri berör en annan. Returnerar TRUE om geometrierna har minst en gemensam punkt, men deras interiörer inte korsar varandra.
Syntax |
touches(geometry1, geometry2) |
Argument |
|
Exempel |
|
Ytterligare läsning: överlägg_touches
9.2.13.128. transform
Returnerar den geometri som transformerats från ett CRS-källsystem till ett CRS-målsystem.
Syntax |
transform(geometry, source_auth_id, dest_auth_id) |
Argument |
|
Exempel |
|
Ytterligare läsning: Återprojicera lagret algoritm
9.2.13.129. translate
Returnerar en översatt version av en geometri. Beräkningar görs i geometrins rumsliga referenssystem.
Syntax |
translate(geometry, dx, dy) |
Argument |
|
Exempel |
|

Fig. 9.35 Översättning av funktioner
För vidare läsning: Översätt algoritm
9.2.13.130. triangular_wave
Konstruerar triangulära vågor längs gränsen för en geometri.
Syntax |
triangular_wave(geometry, wavelength, amplitude, [strict=False]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.36 Symbolisering av funktioner med triangulära vågor
9.2.13.131. triangular_wave_randomized
Konstruerar slumpmässiga triangulära vågor längs geometrins gränser.
Syntax |
triangular_wave_randomized(geometry, min_wavelength, max_wavelength, min_amplitude, max_amplitude, [seed=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.37 Symbolisering av funktioner med triangulära slumpmässiga vågor
9.2.13.132. union
Returnerar en geometri som representerar punktuppsättningens förening av geometrierna.
Syntax |
union(geometry1, geometry2) |
Argument |
|
Exempel |
|
9.2.13.133. wave
Konstruerar rundade (sinusliknande) vågor längs en geometris gräns.
Syntax |
wave(geometry, wavelength, amplitude, [strict=False]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.38 Symbolisering av funktioner med vågor
9.2.13.134. wave_randomized
Konstruerar slumpmässiga krökta (sinusliknande) vågor längs en geometris gräns.
Syntax |
wave_randomized(geometry, min_wavelength, max_wavelength, min_amplitude, max_amplitude, [seed=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.39 Symbolisering av funktioner med slumpmässiga vågor
9.2.13.135. wedge_buffer
Returnerar en kilformad buffert som utgår från en punktgeometri.
Syntax |
wedge_buffer(center, azimuth, width, outer_radius, [inner_radius=0.0]) [] markerar valfria argument |
Argument |
|
Exempel |
|

Fig. 9.40 Funktioner för buffring av kilar
För vidare läsning: Skapa kilbuffertar algoritm
9.2.13.136. within
Testar om en geometri är inom en annan. Returnerar TRUE om geometri1 är helt inom geometri2.
Syntax |
within(geometry1, geometry2) |
Argument |
|
Exempel |
|
Ytterligare läsning: overlay_within
9.2.13.137. $x
Returnerar x-koordinaten för den aktuella punktfunktionen. Om funktionen är en flerpunktsfunktion returneras x-koordinaten för den första punkten. VARNING: Denna funktion är föråldrad. Vi rekommenderar att du använder ersättningsfunktionen x() med variabeln @geometry i stället.
Syntax |
$x |
Exempel |
|
Fördjupning: x
9.2.13.138. x
Returnerar x-koordinaten för en punktgeometri, eller x-koordinaten för centroiden för en icke-punktgeometri.
Syntax |
x(geometry) |
Argument |
|
Exempel |
|
9.2.13.139. $x_at
Hämtar en x-koordinat för den aktuella funktionens geometri. VARNING: Denna funktion är föråldrad. Vi rekommenderar att du använder ersättningsfunktionen x_at med variabeln @geometry i stället.
Syntax |
$x_at(vertex) |
Argument |
|
Exempel |
|
Ytterligare läsning: x_at
9.2.13.140. x_at
Hämtar en x-koordinat för geometrin.
Syntax |
x_at(geometry, vertex) |
Argument |
|
Exempel |
|
9.2.13.141. x_max
Returnerar den maximala x-koordinaten för en geometri. Beräkningarna görs i geometrins rumsliga referenssystem.
Syntax |
x_max(geometry) |
Argument |
|
Exempel |
|
9.2.13.142. x_min
Returnerar den minsta x-koordinaten för en geometri. Beräkningarna görs i geometrins rumsliga referenssystem.
Syntax |
x_min(geometry) |
Argument |
|
Exempel |
|
9.2.13.143. $y
Returnerar y-koordinaten för den aktuella punktfunktionen. Om funktionen är en flerpunktsfunktion returneras y-koordinaten för den första punkten. VARNING: Denna funktion är föråldrad. Vi rekommenderar att du använder ersättningsfunktionen y() med variabeln @geometry i stället.
Syntax |
$y |
Exempel |
|
Ytterligare läsning: y
9.2.13.144. y
Returnerar y-koordinaten för en punktgeometri, eller y-koordinaten för centroiden för en icke-punktgeometri.
Syntax |
y(geometry) |
Argument |
|
Exempel |
|
9.2.13.145. $y_at
Hämtar en y-koordinat för den aktuella funktionens geometri. VARNING: Denna funktion är föråldrad. Vi rekommenderar att du använder ersättningsfunktionen y_at med variabeln @geometry i stället.
Syntax |
$y_at(vertex) |
Argument |
|
Exempel |
|
Ytterligare läsning: y_at
9.2.13.146. y_at
Hämtar en y-koordinat för geometrin.
Syntax |
y_at(geometry, vertex) |
Argument |
|
Exempel |
|
9.2.13.147. y_max
Returnerar den maximala y-koordinaten för en geometri. Beräkningarna görs i geometrins rumsliga referenssystem.
Syntax |
y_max(geometry) |
Argument |
|
Exempel |
|
9.2.13.148. y_min
Returnerar den minsta y-koordinaten för en geometri. Beräkningarna görs i geometrins rumsliga referenssystem.
Syntax |
y_min(geometry) |
Argument |
|
Exempel |
|
9.2.13.149. $z
Returnerar z-värdet för den aktuella punktfunktionen om den är 3D. Om funktionen är en flerpunktsfunktion returneras z-värdet för den första punkten. VARNING: Denna funktion är föråldrad. Vi rekommenderar att du använder ersättningsfunktionen z() med variabeln @geometry istället.
Syntax |
$z |
Exempel |
|
9.2.13.150. z
Returnerar z-koordinaten för en punktgeometri, eller NULL om geometrin inte har något z-värde.
Syntax |
z(geometry) |
Argument |
|
Exempel |
|
9.2.13.151. z_at
Hämtar en z-koordinat för geometrin, eller NULL om geometrin inte har något z-värde.
Syntax |
z_at(geometry, vertex) |
Argument |
|
Exempel |
|
9.2.13.152. z_max
Returnerar den maximala z-koordinaten för en geometri, eller NULL om geometrin inte har något z-värde.
Syntax |
z_max(geometry) |
Argument |
|
Exempel |
|
9.2.13.153. z_min
Returnerar den lägsta z-koordinaten för en geometri, eller NULL om geometrin inte har något z-värde.
Syntax |
z_min(geometry) |
Argument |
|
Exempel |
|
9.2.14. Layoutfunktioner
Denna grupp innehåller funktioner för att manipulera egenskaper för utskriftslayoutobjekt.
Visa/dölj lista över funktioner
9.2.14.1. item_variables
Returnerar en karta med variabler från ett layoutobjekt i den här utskriftslayouten.
Syntax |
item_variables(id) |
Argument |
|
Exempel |
|
Ytterligare läsning: Lista över standard variabler
9.2.14.2. map_credits
Returnerar en lista med kreditsträngar (användningsrättigheter) för de lager som visas i en layout eller ett specifikt layoutkartobjekt.
Syntax |
map_credits([id], [include_layer_names=false], [layer_name_separator=’: ’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Denna funktion kräver att :ref:``Access metadata properties <metadatamenu>` för skikten har fyllts i.
9.2.15. Kartskikt
Denna grupp innehåller en lista över tillgängliga skikt i det aktuella projektet och, för varje skikt, deras fält (lagrade i datasetet, virtuella eller extra samt från sammanfogningar). Fälten kan interageras på samma sätt som nämns i Fält och värden, förutom att ett dubbelklick lägger till namnet som en sträng (med enkla citattecken) i uttrycket i stället för som en fältreferens, eftersom de inte tillhör det aktiva lagret. Detta är ett bekvämt sätt att skriva uttryck som hänvisar till olika lager, t.ex. när man utför aggregates, attribute eller spatial.
Det ger också några praktiska funktioner för att manipulera lager.
Visa/dölj lista över funktioner
9.2.15.1. decode_uri
Tar ett lager och avkodar uri för den underliggande dataleverantören. Det beror på dataleverantören vilka data som är tillgängliga.
Syntax |
decode_uri(layer, [part]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.15.2. layer_property
Returnerar ett matchande värde för lageregenskaper eller metadata.
Syntax |
layer_property(layer, property) |
Argument |
|
Exempel |
|
9.2.15.3. load_layer
Laddar ett lager med käll-URI och leverantörsnamn.
Syntax |
load_layer(uri, provider) |
Argument |
|
Exempel |
|
9.2.16. Kartor Funktioner
Den här gruppen innehåller funktioner för att skapa eller manipulera nycklar och värden i map-datastrukturer (även kända som ordboksobjekt, nyckel-värde-par eller associativa matriser). Till skillnad från list-datastrukturen där värdenas ordning spelar roll, är ordningen på nyckel-värdeparen i map-objektet inte relevant och värdena identifieras av sina nycklar.
Visa/dölj lista över funktioner
9.2.16.1. from_json
Läser in en JSON-formaterad sträng.
Syntax |
from_json(string) |
Argument |
|
Exempel |
|
9.2.16.2. hstore_to_map
Skapar en karta från en hstore-formaterad sträng.
Syntax |
hstore_to_map(string) |
Argument |
|
Exempel |
|
9.2.16.3. map
Returnerar en karta som innehåller alla nycklar och värden som skickas som ett par parametrar.
Syntax |
map(nyckel1, värde1, nyckel2, värde2, …) |
Argument |
|
Exempel |
|
9.2.16.4. map_akeys
Returnerar alla nycklar i en map som en array.
Syntax |
map_akeys(map) |
Argument |
|
Exempel |
|
9.2.16.5. map_avals
Returnerar alla värden i en map som en array.
Syntax |
map_avals(map) |
Argument |
|
Exempel |
|
9.2.16.6. map_concat
Returnerar en karta som innehåller alla poster i de angivna kartorna. Om två kartor innehåller samma nyckel, används värdet i den andra kartan.
Syntax |
map_concat(map1, map2, …) |
Argument |
|
Exempel |
|
9.2.16.7. map_delete
Returnerar en karta med den angivna nyckeln och dess motsvarande värde raderat.
Syntax |
map_delete(map, key) |
Argument |
|
Exempel |
|
9.2.16.8. map_exist
Returnerar TRUE om den angivna nyckeln finns i kartan.
Syntax |
map_exist(map, key) |
Argument |
|
Exempel |
|
9.2.16.9. map_get
Returnerar värdet av en map, givet dess nyckel. Returnerar NULL om nyckeln inte finns.
Syntax |
map_get(map, key) |
Argument |
|
Exempel |
|
Råd
Du kan också använda indexoperatorn ([]) för att hämta ett värde från en map.
9.2.16.10. map_insert
Returnerar en map med en tillagd nyckel/värde. Om nyckeln redan finns åsidosätts dess värde.
Syntax |
map_insert(map, key, value) |
Argument |
|
Exempel |
|
9.2.16.11. map_prefix_keys
Returnerar en karta med alla nycklar som har en given sträng som prefix.
Syntax |
map_prefix_keys(map, prefix) |
Argument |
|
Exempel |
|
9.2.16.12. map_to_hstore
Sammanfoga kartelement till en hstore-formaterad sträng.
Syntax |
map_to_hstore(map) |
Argument |
|
Exempel |
|
9.2.16.13. map_to_html_dl
Sammanfoga kartelement till en HTML-definitionsliststräng.
Syntax |
map_to_html_dl(map) |
Argument |
|
Exempel |
|
9.2.16.14. map_to_html_table
Sammanfoga kartelement till en HTML-tabellsträng.
Syntax |
map_to_html_table(map) |
Argument |
|
Exempel |
|
9.2.16.15. to_json
Skapa en JSON-formaterad sträng från en map, array eller annat värde.
Syntax |
to_json(value) |
Argument |
|
Exempel |
|
9.2.16.16. url_encode
Returnerar en URL-kodad sträng från en karta. Transformerar alla tecken i sin korrekt kodade form och producerar en helt kompatibel frågesträng.
Observera att plustecknet ”+” inte konverteras.
Syntax |
url_encode(map) |
Argument |
|
Exempel |
|
9.2.17. Matematiska funktioner
Den här gruppen innehåller matematiska funktioner (t.ex. kvadratrot, sin och cos).
Visa/dölj lista över funktioner
9.2.17.1. abs
Returnerar det absoluta värdet av ett tal.
Syntax |
abs(value) |
Argument |
|
Exempel |
|
9.2.17.2. acos
Returnerar den inversa cosinus för ett värde i radianer.
Syntax |
acos(value) |
Argument |
|
Exempel |
|
9.2.17.3. asin
Returnerar den inversa sinus för ett värde i radianer.
Syntax |
asin(value) |
Argument |
|
Exempel |
|
9.2.17.4. atan
Returnerar den inversa tangenten för ett värde i radianer.
Syntax |
atan(value) |
Argument |
|
Exempel |
|
9.2.17.5. atan2
Returnerar den inversa tangenten av dy/dx genom att använda tecknen på de två argumenten för att bestämma kvadranten för resultatet.
Syntax |
atan2(dy, dx) |
Argument |
|
Exempel |
|
9.2.17.6. ceil
Rundar ett tal uppåt.
Syntax |
ceil(value) |
Argument |
|
Exempel |
|
9.2.17.7. clamp
Begränsar ett inmatningsvärde till ett angivet intervall.
Syntax |
clamp(minimum, input, maximum) |
Argument |
|
Exempel |
|
9.2.17.8. cos
Returnerar cosinus för en vinkel.
Syntax |
cos(angle) |
Argument |
|
Exempel |
|
9.2.17.9. degrees
Konverterar från radianer till grader.
Syntax |
degrees(radians) |
Argument |
|
Exempel |
|
9.2.17.10. exp
Returnerar exponentialen av ett värde.
Syntax |
exp(value) |
Argument |
|
Exempel |
|
9.2.17.11. floor
Rundar ett tal nedåt.
Syntax |
floor(value) |
Argument |
|
Exempel |
|
9.2.17.12. ln
Returnerar den naturliga logaritmen av ett värde.
Syntax |
ln(value) |
Argument |
|
Exempel |
|
9.2.17.13. log
Returnerar värdet av logaritmen av det angivna värdet och basen.
Syntax |
log(base, value) |
Argument |
|
Exempel |
|
9.2.17.14. log10
Returnerar värdet av bas 10-logaritmen för det passerade uttrycket.
Syntax |
log10(value) |
Argument |
|
Exempel |
|
9.2.17.15. max
Returnerar det största värdet i en uppsättning värden.
Syntax |
max(value1, value2, …) |
Argument |
|
Exempel |
|
9.2.17.16. min
Returnerar det minsta värdet i en uppsättning värden.
Syntax |
min(value1, value2, …) |
Argument |
|
Exempel |
|
9.2.17.17. pi
Returnerar värdet av pi för beräkningar.
Syntax |
pi() |
Exempel |
|
9.2.17.18. radians
Omvandlar från grader till radianer.
Syntax |
radians(degrees) |
Argument |
|
Exempel |
|
9.2.17.19. rand
Returnerar ett slumpmässigt heltal inom det intervall som anges av minimum- och maximum-argumentet (inklusive). Om ett frö anges kommer det returnerade talet alltid att vara detsamma, beroende på fröet.
Syntax |
rand(min, max, [seed=NULL]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.17.20. randf
Returnerar en slumpmässig float inom det intervall som anges av minimum- och maximum-argumentet (inklusive). Om ett frö anges kommer det returnerade värdet alltid att vara detsamma, beroende på fröet.
Syntax |
randf([min=0,0], [max=1,0], [seed=NULL]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.17.21. round
Avrundar ett tal till ett antal decimaler.
Syntax |
round(värde, [platser=0]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.17.22. scale_exponential
Transformerar ett givet värde från en inmatningsdomän till ett utmatningsområde med hjälp av en exponentiell kurva. Denna funktion kan användas för att underlätta värden i eller utanför det angivna utmatningsområdet.
Syntax |
scale_exponential(value, domain_min, domain_max, range_min, range_max, exponent) |
Argument |
|
Exempel |
|
9.2.17.23. skala_linjär
Transformerar ett givet värde från en inmatningsdomän till ett utmatningsområde med hjälp av linjär interpolation.
Syntax |
scale_linear(värde, domän_min, domän_max, intervall_min, intervall_max) |
Argument |
|
Exempel |
|
9.2.17.24. scale_polynomial
Transformerar ett givet värde från en inmatningsdomän till ett utmatningsområde med hjälp av en polynomkurva. Denna funktion kan användas för att underlätta värden inom eller utanför det angivna utmatningsområdet.
Syntax |
scale_polynomial(value, domain_min, domain_max, range_min, range_max, exponent) |
Argument |
|
Exempel |
|
9.2.17.25. synd
Returnerar sinus för en vinkel.
Syntax |
sin(vinkel) |
Argument |
|
Exempel |
|
9.2.17.26. kvadrat
Returnerar kvadratroten av ett värde.
Syntax |
sqrt(värde) |
Argument |
|
Exempel |
|
9.2.17.27. solbränna
Returnerar tangenten för en vinkel.
Syntax |
tan(vinkel) |
Argument |
|
Exempel |
|
9.2.18. Meshes Funktioner
Denna grupp innehåller funktioner som beräknar eller returnerar nätrelaterade värden.
Visa/dölj lista över funktioner
9.2.18.1. $yta_area
Returnerar arean för den aktuella meshytan. Den area som beräknas med denna funktion respekterar både ellipsoidinställningen och inställningarna för areaenhet i det aktuella projektet. Om t.ex. en ellipsoid har ställts in för projektet kommer den beräknade ytan att vara ellipsoidisk, och om ingen ellipsoid har ställts in kommer den beräknade ytan att vara planimetrisk.
Syntax |
$yta_area |
Exempel |
|
9.2.18.2. $face_index
Returnerar indexet för den aktuella meshytan.
Syntax |
$face_index |
Exempel |
|
9.2.18.3. $vertex_som_punkt
Returnerar den aktuella vertexen som en punktgeometri.
Syntax |
$vertex_som_punkt |
Exempel |
|
9.2.18.4. $vertex_index
Returnerar indexet för den aktuella mesh-vertexen.
Syntax |
$vertex_index |
Exempel |
|
9.2.18.5. $vertex_x
Returnerar X-koordinaten för den aktuella mesh-vertexen.
Syntax |
$vertex_x |
Exempel |
|
9.2.18.6. $vertex_y
Returnerar Y-koordinaten för den aktuella mesh-vertexen.
Syntax |
$vertex_y |
Exempel |
|
9.2.18.7. $vertex_z
Returnerar Z-värdet för den aktuella mesh-vertexen.
Syntax |
$vertex_z |
Exempel |
|
9.2.19. Operatörer
Denna grupp innehåller operatorer (t.ex. +, -, *). Observera att för de flesta av de matematiska funktionerna nedan gäller att om en av indata är NULL blir resultatet NULL.
Visa/dölj lista över funktioner
9.2.19.1. %
Återstoden av divisionen. Tar tecknet för utdelningen.
Syntax |
a % b |
Argument |
|
Exempel |
|
9.2.19.2. *
Multiplikation av två värden
Syntax |
a * b |
Argument |
|
Exempel |
|
9.2.19.3. +
Addition av två värden. Om ett av värdena är NULL blir resultatet NULL.
Syntax |
a + b |
Argument |
|
Exempel |
|
9.2.19.4. -
Subtraktion av två värden. Om ett av värdena är NULL blir resultatet NULL.
Syntax |
a - b |
Argument |
|
Exempel |
|
9.2.19.5. /
Division av två värden
Syntax |
a / b |
Argument |
|
Exempel |
|
9.2.19.6. //
Golvdelning av två värden
Syntax |
a // b |
Argument |
|
Exempel |
|
9.2.19.7. <
Jämför två värden och utvärderar till 1 om det vänstra värdet är mindre än det högra värdet.
Syntax |
a < b |
Argument |
|
Exempel |
|
9.2.19.8. <=
Jämför två värden och utvärderar till 1 om det vänstra värdet är mindre eller lika med det högra värdet.
Syntax |
a <= b |
Argument |
|
Exempel |
|
9.2.19.9. <>
Jämför två värden och utvärderar till 1 om de inte är lika.
Syntax |
a <> b |
Argument |
|
Exempel |
|
9.2.19.10. =
Jämför två värden och värderar dem till 1 om de är lika.
Syntax |
a = b |
Argument |
|
Exempel |
|
9.2.19.11. >
Jämför två värden och utvärderar till 1 om det vänstra värdet är större än det högra värdet.
Syntax |
a > b |
Argument |
|
Exempel |
|
9.2.19.12. >=
Jämför två värden och utvärderar till 1 om det vänstra värdet är större eller lika med det högra värdet.
Syntax |
a >= b |
Argument |
|
Exempel |
|
9.2.19.13. OCH
Returnerar TRUE när villkoren a och b är sanna.
Syntax |
a OCH b |
Argument |
|
Exempel |
|
9.2.19.14. BETWEEN
Returnerar TRUE om värdet ligger inom det angivna intervallet. Intervallet anses inkludera gränserna. För att testa för uteslutning kan NOT BETWEEN användas.
Syntax |
värde MELLAN lägre_bound OCH högre_bound |
Argument |
|
Exempel |
|
Observera
value BETWEEN lower_bound AND higher_bound är detsamma som ”value >= lower_bound AND value <= higher_bound”.
Ytterligare läsning: NOT BETWEEN (uttrycksfunktionens operatorer)
9.2.19.15. ILIKE
Returnerar TRUE om den första parametern matchar det angivna mönstret utan att skilja på versaler och gemener. LIKE kan användas istället för ILIKE för att göra matchningen skiftlägeskänslig. Fungerar även med siffror.
Syntax |
sträng/tal ILIKE mönster |
Argument |
|
Exempel |
|
9.2.19.16. IN
Returnerar TRUE om värdet hittas i en lista med värden.
Syntax |
a IN b |
Argument |
|
Exempel |
|
9.2.19.17. IS
Returnerar TRUE om a är samma sak som b.
Syntax |
a IS b |
Argument |
|
Exempel |
|
9.2.19.18. ÄR INTE
Returnerar TRUE om a inte är samma sak som b.
Syntax |
a ÄR INTE b |
Argument |
|
Exempel |
|
9.2.19.19. LIKAMED
Returnerar TRUE om den första parametern matchar det angivna mönstret. Fungerar även med siffror.
Syntax |
sträng/siffra LIKE-mönster |
Argument |
|
Exempel |
|
9.2.19.20. ICKE
Negerar ett villkor.
Syntax |
INTE en |
Argument |
|
Exempel |
|
9.2.19.21. NOT BETWEEN
Returnerar TRUE om värdet inte ligger inom det angivna intervallet. Intervallet anses inkludera gränserna.
Syntax |
värde INTE MELLAN lägre_bound OCH högre_bound |
Argument |
|
Exempel |
|
Observera
value NOT BETWEEN lower_bound AND higher_bound är samma sak som ”value < lower_bound OR value > higher_bound”.
Ytterligare läsning: BETWEEN
9.2.19.22. ELLER
Returnerar TRUE när villkor a eller b är sant.
Syntax |
a ELLER b |
Argument |
|
Exempel |
|
9.2.19.23. []
Index-operator. Returnerar ett element från en array eller ett map-värde.
Syntax |
[index] |
Argument |
|
Exempel |
|
9.2.19.24. ^
Makt av två värden.
Syntax |
a ^ b |
Argument |
|
Exempel |
|
9.2.19.25. ||
Sammanfogar två värden till en sträng.
Om ett av värdena är NULL blir resultatet NULL. Se CONCAT-funktionen för ett annat beteende.
Syntax |
a || b |
Argument |
|
Exempel |
|
9.2.19.26. ~
Utför en matchning med reguljära uttryck på ett strängvärde. Backslash-tecken måste dubbeleskapsas (t.ex. ”\\s” för att matcha ett tecken med vitt utrymme).
Syntax |
sträng ~ regex |
Argument |
|
Exempel |
|
Ytterligare läsning: regexp_match
9.2.20. Bearbetningsfunktioner
Den här gruppen innehåller funktioner som arbetar med bearbetningsalgoritmer.
Visa/dölj lista över funktioner
9.2.20.1. parameter
Returnerar värdet på en inmatningsparameter för en bearbetningsalgoritm.
Syntax |
parameter(namn) |
Argument |
|
Exempel |
|
9.2.21. Rasterfunktioner
Denna grupp innehåller funktioner för att arbeta med rasterlager.
Visa/dölj lista över funktioner
9.2.21.1. raster_attributes
Returnerar en karta med fältnamnen som nycklar och rasterattributtabellens värden som värden från den attributtabellspost som matchar det angivna rastervärdet.
Syntax |
raster_attributes(layer, band, value) |
Argument |
|
Exempel |
|
9.2.21.2. raster_statistik
Returnerar statistik från ett rasterlager.
Syntax |
raster_statistic(layer, band, property) |
Argument |
|
Exempel |
|
9.2.21.3. raster_value
Returnerar det rastervärde som finns vid den angivna punkten.
Syntax |
raster_value(layer, band, point) |
Argument |
|
Exempel |
|
9.2.22. Funktioner för registrering och attribut
Denna grupp innehåller funktioner som arbetar med identifikatorer för poster.
Visa/dölj lista över funktioner
9.2.22.1. attribute
Returnerar ett attribut från en funktion.
Variant 1
Returnerar värdet för ett attribut från den aktuella funktionen.
Syntax |
attribute(attribute_name) |
Argument |
|
Exempel |
|
Variant 2
Gör det möjligt att ange målfunktionens och attributets namn.
Syntax |
attribute(feature, attribute_name) |
Argument |
|
Exempel |
|
9.2.22.2. attributes
Returnerar en karta som innehåller alla attribut från en funktion, med fältnamn som kartnycklar.
Variant 1
Returnerar en karta med alla attribut från den aktuella funktionen.
Syntax |
attributes() |
Exempel |
|
Variant 2
Gör det möjligt att ange målfunktionen.
Syntax |
attributes(feature) |
Argument |
|
Exempel |
|
Ytterligare läsning: Kartor Funktioner
9.2.22.3. $currentfeature
Returnerar den aktuella funktionen som utvärderas. Detta kan användas med funktionen ’attribute’ för att utvärdera attributvärden från den aktuella funktionen. VARNING: Denna funktion är föråldrad. Vi rekommenderar att du använder ersättningsvariabeln @feature i stället.
Syntax |
$currentfeature |
Exempel |
|
9.2.22.4. display_expression
Returnerar visningsuttrycket för en given funktion i ett skikt. Uttrycket utvärderas som standard. Kan användas med noll, ett eller flera argument, se nedan för mer information.
Inga parametrar
Om funktionen anropas utan parametrar utvärderar den displayuttrycket för den aktuella funktionen i det aktuella lagret.
Syntax |
display_expression() |
Exempel |
|
En parameter för ”funktion”
Om funktionen endast anropas med parametern ”feature” utvärderas den angivna egenskapen från det aktuella lagret.
Syntax |
display_expression(feature) |
Argument |
|
Exempel |
|
Parametrar för lager och funktioner
Om funktionen anropas med både ett lager och en funktion, kommer den att utvärdera den angivna funktionen från det angivna lagret.
Syntax |
display_expression(lager, funktion, [evaluate=true]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.22.5. feature_id
Returnerar ett unikt ID för en funktion, eller NULL om funktionen inte är giltig.
Syntax |
feature_id(feature) |
Argument |
|
Exempel |
|
Ytterligare läsning: get_feature_by_id
9.2.22.6. get_feature
Returnerar den första egenskapen i ett lager som matchar ett givet attributvärde.
Variant med ett enda värde
Tillsammans med skiktets ID anges en enda kolumn och ett värde.
Syntax |
get_feature(layer, attribute, value) |
Argument |
|
Exempel |
|
Karta variant
Tillsammans med skiktets ID, en karta som innehåller de kolumner (nyckel) och deras respektive värde som ska användas.
Syntax |
get_feature(layer, attribute) |
Argument |
|
Exempel |
|
9.2.22.7. get_feature_by_id
Returnerar objektet med ett id på ett lager.
Syntax |
get_feature_by_id(layer, feature_id) |
Argument |
|
Exempel |
|
Ytterligare läsning: feature_id
9.2.22.8. $id
Returnerar funktions-ID för den aktuella raden. VARNING: Denna funktion är föråldrad. Vi rekommenderar att du använder ersättningsvariabeln @id i stället.
Syntax |
$id |
Exempel |
|
Ytterligare läsning: feature_id, get_feature_by_id
9.2.22.9. is_attribute_valid
Returnerar TRUE om ett specifikt funktionsattribut uppfyller alla begränsningar.
Syntax |
is_attribute_valid(attribute, [feature], [layer], [strength]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: begränsningar
9.2.22.10. is_feature_valid
Returnerar TRUE om en funktion uppfyller alla fältbegränsningar.
Syntax |
is_feature_valid([feature], [layer], [strength]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: begränsningar
9.2.22.11. is_selected
Returnerar TRUE om en funktion är vald. Kan användas med noll, ett eller två argument, se nedan för mer information.
Inga parametrar
Om funktionen anropas utan parametrar returnerar den TRUE om den aktuella funktionen i det aktuella lagret är vald.
Syntax |
is_selected() |
Exempel |
|
En parameter för ”funktion”
Om funktionen endast anropas med en ”feature”-parameter returnerar den TRUE om den angivna funktionen från det aktuella lagret har valts.
Syntax |
is_selected(feature) |
Argument |
|
Exempel |
|
Två parametrar
Om funktionen anropas med både ett lager och en funktion returnerar den TRUE om den angivna funktionen från det angivna lagret har valts.
Syntax |
is_selected(layer, feature) |
Argument |
|
Exempel |
|
9.2.22.12. maptip
Returnerar karttipset för en given funktion i ett skikt. Uttrycket utvärderas som standard. Kan användas med noll, ett eller flera argument, se nedan för detaljer.
Inga parametrar
Om funktionen anropas utan parametrar utvärderar den karttipset för den aktuella funktionen i det aktuella lagret.
Syntax |
maptip() |
Exempel |
|
En parameter för ”funktion”
Om funktionen endast anropas med parametern ”feature” utvärderas den angivna egenskapen från det aktuella lagret.
Syntax |
maptip(feature) |
Argument |
|
Exempel |
|
Parametrar för lager och funktioner
Om funktionen anropas med både ett lager och en funktion, kommer den att utvärdera den angivna funktionen från det angivna lagret.
Syntax |
maptip(layer, feature, [evaluate=true]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.22.13. num_selected
Returnerar antalet valda funktioner på ett visst lager. Arbetar som standard på det lager som uttrycket utvärderas på.
Syntax |
num_selected([lager=aktuellt lager]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.22.14. represent_attributes
Returnerar en karta med attributnamnen som nycklar och de konfigurerade representationsvärdena som värden. Representationsvärdet för attributen beror på den konfigurerade widget-typen för varje attribut. Kan användas med noll, ett eller flera argument, se nedan för mer information.
Inga parametrar
Om funktionen anropas utan parametrar returnerar den representationen av attributen för den aktuella funktionen i det aktuella lagret.
Syntax |
represent_attributes() |
Exempel |
|
En parameter för ”funktion”
Om funktionen endast anropas med en ”feature”-parameter returnerar den representationen av attributen för den angivna funktionen från det aktuella lagret.
Syntax |
represent_attributes(feature) |
Argument |
|
Exempel |
|
Parametrar för lager och funktioner
Om funktionen anropas med en ”layer”- och en ”feature”-parameter returnerar den representationen av attributen för den angivna funktionen från det angivna lagret.
Syntax |
represent_attributes(layer, feature) |
Argument |
|
Exempel |
|
Ytterligare läsning: represent_value
9.2.22.15. represent_value
Returnerar det konfigurerade representationsvärdet för ett fältvärde. Det beror på den konfigurerade widget-typen. Detta är ofta användbart för widgetar av typen ”Value Map”.
Syntax |
represent_value(value, [fieldName]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: widget-typer, represent_attributes
9.2.22.16. sqlite_fetch_and_increment
Hantera automatiskt ökande värden i sqlite-databaser.
SQlite-standardvärden kan endast tillämpas vid infogning och inte förskjutas.
Detta gör det omöjligt att skaffa en inkrementerad primärnyckel via AUTO_INCREMENT innan raden skapas i databasen. Sidenote: med postgres fungerar detta via alternativet evaluate default values.
När man lägger till nya funktioner med relationer är det väldigt trevligt att redan kunna lägga till barn för en förälder, medan förälderns formulär fortfarande är öppet och förälderns funktion därmed inte är bekräftad.
För att komma runt denna begränsning kan denna funktion användas för att hantera sekvensvärden i en separat tabell i sqlite-baserade format som gpkg.
Sekvenstabellen filtreras efter ett sekvens-ID (filter_attribute och filter_value) och det aktuella värdet för id_field ökas med 1 och det ökade värdet returneras.
Om ytterligare kolumner kräver att värden anges kan default_values-kartan användas för detta ändamål.
Anmärkning
Denna funktion modifierar målets sqlite-tabell. Den är avsedd att användas med standardvärdeskonfigurationer för attribut.
När databasparametern är ett lager och lagret är i transaktionsläge hämtas värdet bara en gång under transaktionens livstid och cachelagras och inkrementeras. Detta gör det osäkert att arbeta med samma databas från flera parallella processer.
Syntax |
sqlite_fetch_and_increment(databas, tabell, id_fält, filter_attribut, filter_värde, [standardvärden]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: Egenskaper för datakällor, Inställning av relationer mellan flera lager
9.2.22.17. uuid
Genererar en universellt unik identifierare (UUID) för varje rad med hjälp av Qt-metoden QUuid::createUuid.
Syntax |
uuid([format=’WithBraces’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.23. Relationer
Den här gruppen innehåller en lista över de relationer som finns tillgängliga i det aktuella projektet, med beskrivning. Den ger snabb åtkomst till relations-ID:t för att skriva ett uttryck (med t.ex. funktionen relation_aggregate) eller anpassa ett formulär.
9.2.24. Sensorer Funktioner
Denna grupp innehåller funktioner för att interagera med sensorer.
Visa/dölj lista över funktioner
9.2.24.1. sensor_data
Returnerar det senast insamlade värdet (eller värden som en karta för sensorer som rapporterar flera värden) från en registrerad sensor.
Syntax |
sensor_data(name, [expiration]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.25. Strängfunktioner
Den här gruppen innehåller funktioner som arbetar med strängar (t.ex. som ersätter, konverterar till versaler).
Visa/dölj lista över funktioner
9.2.25.1. ascii
Returnerar den unicode-kod som är associerad med det första tecknet i en sträng.
Syntax |
ascii(string) |
Argument |
|
Exempel |
|
9.2.25.2. char
Returnerar tecknet som är associerat med en unicode-kod.
Syntax |
char(code) |
Argument |
|
Exempel |
|
9.2.25.3. concat
Sammanfogar flera strängar till en. NULL-värden konverteras till tomma strängar. Andra värden (t.ex. siffror) konverteras till strängar.
Syntax |
concat(sträng1, sträng2, …) |
Argument |
|
Exempel |
|
Om sammanlänkning av fält
Du kan också sammanfoga strängar eller fältvärden med hjälp av antingen ||
eller +
operatorer, med vissa speciella egenskaper:
Operatorn
+
betyder också summera uttryck, så om du har ett heltal (fält eller numeriskt värde) operand, kan detta vara felaktigt och du använder bättre de andra:'My feature id is: ' + "gid" => triggers an error as gid returns an integer
När något av argumenten är ett NULL-värde, kommer antingen
||
eller+
att returnera ett NULL-värde. För att returnera de andra argumenten oavsett NULL-värdet kan du använda funktionenconcat
ellerarray_to_string
:'My feature id is: ' + NULL ==> NULL 'My feature id is: ' || NULL => NULL concat('My feature id is: ', NULL) => 'My feature id is: ' array_to_string( array('My feature id is: ', NULL) ) => 'My feature id is: '
vidare läsning: array_to_string, ||, +
9.2.25.4. format
Formatera en sträng med hjälp av angivna argument.
Syntax |
format(sträng, arg1, arg2, …) |
Argument |
|
Exempel |
|
9.2.25.5. format_date
Formaterar en datatyp eller sträng till ett anpassat strängformat. Använder Qt datum/tid formatsträngar. Se QDateTime::toString.
Syntax |
format_date(datetime, format, [language]) [] markerar valfria argument |
||||||||||||||||||||||||||||||||||||||||||||||||
Argument |
|
||||||||||||||||||||||||||||||||||||||||||||||||
Exempel |
|
9.2.25.6. format_number
Returnerar ett tal formaterat med den lokala separatorn för tusentals. Som standard används den aktuella QGIS-användarens locale. Decimalerna trunkeras också till det antal decimaler som anges.
Syntax |
format_number(number, [places=0], [language], [omit_group_separators=false], [trim_trailing_zeroes=false]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.25.7. left
Returnerar en delsträng som innehåller de n tecken som ligger längst till vänster i strängen.
Syntax |
left(string, length) |
Argument |
|
Exempel |
|
För vidare läsning: uttrycksfunktion_String_right
9.2.25.8. length
Returnerar antalet tecken i en sträng eller längden på en geometrisk linjestring.
String variant
Returnerar antalet tecken i en sträng.
Syntax |
length(string) |
Argument |
|
Exempel |
|
Geometrivariant
Beräknar längden på ett geometriskt linjeobjekt. Beräkningar är alltid planimetriska i det rumsliga referenssystemet (SRS) för denna geometri, och enheterna för den returnerade längden kommer att matcha enheterna för SRS. Detta skiljer sig från de beräkningar som utförs av funktionen $length, som utför ellipsoidiska beräkningar baserat på projektets inställningar för ellipsoid och avståndsenheter.
Syntax |
length(geometry) |
Argument |
|
Exempel |
|
9.2.25.9. lower
Konverterar en sträng till små bokstäver.
Syntax |
lower(string) |
Argument |
|
Exempel |
|
9.2.25.10. lpad
Returnerar en sträng som är utfylld till vänster till den angivna bredden, med ett fyllnadstecken. Om målbredden är mindre än strängens längd avkortas strängen.
Syntax |
lpad(string, width, fill) |
Argument |
|
Exempel |
|
Ytterligare läsning: rpad
9.2.25.11. ltrim
Tar bort den längsta strängen som bara innehåller de angivna tecknen (ett mellanslag som standard) från början av strängen.
Syntax |
ltrim(string, [characters=’ ’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.25.12. regexp_match
Returnerar den första matchande positionen som matchar ett reguljärt uttryck i en unikodsträng, eller 0 om delsträngen inte hittas.
Syntax |
regexp_match(input_string, regex) |
Argument |
|
Exempel |
|
Ytterligare läsning: uttryck_funktion_sträng_strpos
9.2.25.13. regexp_replace
Returnerar en sträng med det angivna reguljära uttrycket ersatt.
Syntax |
regexp_replace(input_string, regex, replacement) |
Argument |
|
Exempel |
|
Ytterligare läsning: replace, array_replace
9.2.25.14. regexp_substr
Returnerar den del av en sträng som matchar ett angivet reguljärt uttryck.
Syntax |
regexp_substr(input_string, regex) |
Argument |
|
Exempel |
|
Ytterligare läsning: substr, regexp_matches
9.2.25.15. replace
Returnerar en sträng med den angivna strängen, matrisen eller kartan med strängar ersatt.
String & array-variant
Returnerar en sträng med den angivna strängen eller strängmatrisen ersatt av en sträng eller en strängmatris.
Syntax |
replace(string, before, after) |
Argument |
|
Exempel |
|
Karta variant
Returnerar en sträng med de angivna map-nycklarna ersatta av parade värden. Längre map-nycklar utvärderas först.
Syntax |
replace(string, map) |
Argument |
|
Exempel |
|
Ytterligare läsning: regexp_replace, array_replace
9.2.25.16. right
Returnerar en delsträng som innehåller de n tecken som ligger längst till höger i strängen.
Syntax |
right(string, length) |
Argument |
|
Exempel |
|
Ytterligare läsning: uttrycksfunktion_String_left
9.2.25.17. rpad
Returnerar en sträng som är utfylld till höger till den angivna bredden med hjälp av ett fyllnadstecken. Om målbredden är mindre än strängens längd, avkortas strängen.
Syntax |
rpad(string, width, fill) |
Argument |
|
Exempel |
|
För vidare läsning: lpad
9.2.25.18. rtrim
Tar bort den längsta strängen som bara innehåller de angivna tecknen (ett mellanslag som standard) från slutet av strängen.
Syntax |
rtrim(string, [characters=’ ’]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.25.19. strpos
Returnerar den första matchande positionen för en delsträng i en annan sträng, eller 0 om delsträngen inte hittas.
Syntax |
strpos(haystack, needle) |
Argument |
|
Exempel |
|
Ytterligare läsning: regexp_match
9.2.25.20. substr
Returnerar en del av en sträng.
Syntax |
substr(string, start, [length]) [] markerar valfria argument |
Argument |
|
Exempel |
|
Ytterligare läsning: regexp_substr, regexp_matches
9.2.25.21. title
Konverterar alla ord i en sträng till title case (alla ord gemener med inledande versal).
Syntax |
title(string) |
Argument |
|
Exempel |
|
9.2.25.22. to_string
Konverterar ett tal till en sträng.
Syntax |
to_string(number) |
Argument |
|
Exempel |
|
Ytterligare läsning: format_number
9.2.25.23. trim
Tar bort alla inledande och avslutande blanksteg (mellanslag, tabbar etc.) från en sträng.
Syntax |
trim(string) |
Argument |
|
Exempel |
|
9.2.25.24. upper
Konverterar en sträng till stora bokstäver.
Syntax |
upper(string) |
Argument |
|
Exempel |
|
9.2.25.25. wordwrap
Returnerar en sträng som är omslagen till ett maximalt/minimalt antal tecken.
Syntax |
wordwrap(sträng, wrap_längd, [avgränsare_sträng]) [] markerar valfria argument |
Argument |
|
Exempel |
|
9.2.26. Användaruttryck
Den här gruppen innehåller de uttryck som sparats som user expressions.
9.2.27. Variabler
Den här gruppen innehåller dynamiska variabler som är relaterade till programmet, projektfilen och andra inställningar. Variablernas tillgänglighet beror på sammanhanget:
från dialogrutan
:sup:`Fältkalkylator
från dialogrutan för lageregenskaper
från trycklayouten
Om du vill använda dessa variabler i ett uttryck måste de föregås av tecknet @
(t.ex. @row_number
).
Variable |
Beskrivning |
---|---|
algorithm_id |
Det unika ID:t för en algoritm |
animation_end_time |
Slut på animationens totala tidsintervall (som ett datetime-värde) |
animation_interval |
Varaktighet för animationens totala temporala tidsintervall (som ett intervallvärde) |
animation_start_time |
Början på animationens övergripande tidsintervall (som ett datetime-värde) |
atlas_feature |
Den aktuella atlasfunktionen (som funktionsobjekt) |
atlas_featureid |
Den aktuella atlasens funktion ID |
atlas_featurenumber |
Den aktuella atlasens funktionsnummer i layouten |
atlas_filename |
Aktuellt filnamn för atlasen |
atlas_geometry |
Den aktuella atlasens geometri |
atlas_layerid |
Atlasens aktuella täckningsskikts ID |
atlas_layername |
Det aktuella namnet på atlasens täckningsskikt |
atlas_pagename |
Den aktuella atlasens sidnamn |
atlas_totalfeatures |
Det totala antalet funktioner i atlas |
band |
Numret på bandet i rasterlagret |
band_description |
Beskrivningen av bandet i rasterlagret |
band_name |
Namnet på bandet i rasterlagret |
canvas_cursor_point |
Den senaste markörpositionen på duken i projektets geografiska koordinater |
cluster_color |
Färgen på symbolerna inom ett kluster, eller NULL om symbolerna har blandade färger |
cluster_size |
Antalet symboler som ingår i ett kluster |
current_feature |
Den funktion som för närvarande redigeras i attributformuläret eller tabellraden |
current_geometry |
Geometrin för den funktion som för närvarande redigeras i formuläret eller tabellraden |
current_parent_feature |
representerar den funktion som för närvarande redigeras i det överordnade formuläret. Kan endast användas i en inbäddad formulärkontext. |
current_parent_geometry |
representerar geometrin för den funktion som för närvarande redigeras i det överordnade formuläret. Endast användbar i en inbäddad formulärkontext. |
form_mode |
Vad formuläret används för, t.ex. AddFeatureMode, SingleEditMode, MultiEditMode, SearchMode, AggregateSearchMode eller IdentifyMode som sträng. |
feature |
Den aktuella funktionen som utvärderas. Detta kan användas tillsammans med funktionen ”attribute” för att utvärdera attributvärden från den aktuella funktionen. |
frame_duration |
Tidsmässig varaktighet för varje animationsbild (som ett intervallvärde) |
frame_number |
Aktuellt bildnummer under uppspelning av animation |
frame_rate |
Antal bilder per sekund under uppspelning av animationer |
fullextent_maxx |
Maximalt x-värde från hela dukens utbredning (inklusive alla lager) |
fullextent_maxy |
Maximalt y-värde från hela dukens utsträckning (inklusive alla lager) |
fullextent_minx |
Minsta x-värde från hela dukens utsträckning (inklusive alla lager) |
fullextent_miny |
Minsta y-värde från hela dukens utsträckning (inklusive alla lager) |
geometry |
Geometrin för den aktuella funktionen som utvärderas |
geometry_part_count |
Antalet delar i geometrin för den återgivna funktionen |
geometry_part_num |
Det aktuella geometriska partnumret för objektet som återges |
geometry_point_count |
Antalet punkter i den renderade geometrins del |
geometry_point_num |
Det aktuella punktnumret i den renderade geometrins del |
geometry_ring_num |
Aktuellt geometriringnummer för objektet som renderas (endast för polygonobjekt). Den yttre ringen har ett värde på 0. |
grid_axis |
Aktuellt rutnäts annoteringsaxel (t.ex. ’x’ för longitud, ’y’ för latitud) |
grid_number |
Det aktuella värdet för rutnätets annotation |
id |
ID för den aktuella funktionen som utvärderas |
item_id |
Användar-ID för layoutobjektet (inte nödvändigtvis unikt) |
item_uuid |
Layoutobjektets unika ID |
layer |
Aktuella lagret |
layer_crs |
Det aktuella skiktets auktoritets-ID för koordinatsystemets referenssystem |
layer_crs_ellipsoid |
Det aktuella skiktets ellipsoid Authority ID CRS |
layer_cursor_point |
Punktgeometri under musens position i kartbilden (eller GetFeatureInfo-positionen i QGIS Server), i det aktiva skiktets CRS |
layer_id |
ID för aktuellt lager |
layer_ids |
ID:n för alla kartlager i det aktuella projektet i form av en lista |
layer_name |
Namnet på det aktuella lagret |
layer_vertical_crs |
Identifieraren för skiktets referenssystem för vertikala koordinater (t.ex. ”EPSG:5703”) |
layer_vertical_crs_definition |
Den fullständiga definitionen av skiktets vertikala referenssystem för koordinater |
layer_vertical_crs_description |
Namnet på skiktets vertikala referenssystem för koordinater |
layer_vertical_crs_wkt |
WKT-definitionen av det vertikala koordinatreferenssystemet för det aktuella lagret |
layers |
Alla kartlager i det aktuella projektet som en lista |
layout_dpi |
Kompositionens upplösning (DPI) |
layout_name |
Layoutens namn |
layout_numpages |
Antalet sidor i layouten |
layout_page |
Sidnumret för det aktuella objektet i layouten |
layout_pageheight |
Den aktiva sidhöjden i layouten (i mm för standardpappersstorlekar, eller den enhet som användes för anpassade pappersstorlekar) |
layout_pageoffsets |
Array av Y-koordinater för toppen av varje sida. Gör det möjligt att dynamiskt placera objekt på sidor i ett sammanhang där sidstorleken kan ändras |
layout_pagewidth |
Den aktiva sidbredden i layouten (i mm för standardpappersstorlekar, eller den enhet som användes för anpassade pappersstorlekar) |
legend_column_count |
Antal kolumner i teckenförklaringen |
legend_filter_by_map |
Anger om innehållet i teckenförklaringen filtreras av kartan |
legend_filter_out_atlas |
Anger om atlasen filtreras bort från teckenförklaringen |
legend_split_layers |
Anger om lager kan delas upp i teckenförklaringen |
legend_title |
Titeln på legenden |
legend_wrap_string |
Det eller de tecken som används för att omsluta legendtexten |
map_crs |
Den aktuella kartans referenssystem för koordinater |
map_crs_acronym |
Akronymen för den aktuella kartans koordinatreferenssystem |
map_crs_definition |
Den fullständiga definitionen av den aktuella kartans koordinatreferenssystem |
map_crs_description |
Namnet på den aktuella kartans referenssystem för koordinater |
map_crs_ellipsoid |
Akronymen för ellipsoiden i den aktuella kartans referenssystem för koordinater |
map_crs_proj4 |
Proj4-definitionen av koordinatreferenssystemet för den aktuella kartan |
map_crs_projection |
Det beskrivande namnet på den projektionsmetod som används av kartans koordinatreferenssystem (t.ex. ”Albers Equal Area”) |
map_crs_wkt |
WKT-definitionen av den aktuella kartans referenssystem för koordinater |
map_end_time |
Slutet på kartans temporala tidsintervall (som ett datetime-värde) |
map_extent |
Den geometri som representerar kartans aktuella utbredning |
map_extent_center |
Punktfunktionen i mitten av kartan |
map_extent_height |
Kartans aktuella höjd |
map_extent_width |
Kartans aktuella bredd |
map_id |
ID för aktuell kartdestination. Detta kommer att vara ”canvas” för canvas-renderingar, och objekt-ID för layoutkartrenderingar |
map_interval |
Varaktigheten för kartans temporala tidsintervall (som ett intervallvärde) |
map_layer_ids |
Listan över kartskikts-ID:n som är synliga i kartan |
map_layers |
Listan över kartlager som är synliga i kartan |
map_rotation |
Kartans aktuella rotation |
map_scale |
Kartans aktuella skala |
map_start_time |
Början på kartans temporala tidsintervall (som ett datetime-värde) |
map_units |
Enheter för kartmätningar |
map_z_range_lower |
Lägsta höjden i kartans höjdintervall |
map_z_range_upper |
Övre höjden av kartans höjdintervall |
model_path |
Fullständig sökväg (inklusive filnamn) till den aktuella modellen (eller projektsökväg om modellen är inbäddad i ett projekt). |
model_folder |
Mapp som innehåller aktuell modell (eller projektmapp om modellen är inbäddad i ett projekt). |
model_name |
Namn på aktuell modell |
model_group |
Grupp för nuvarande modell |
notification_message |
Innehållet i det meddelande som skickas av leverantören (endast tillgängligt för åtgärder som utlöses av meddelanden från leverantören). |
parent |
Hänvisar till den aktuella funktionen i det överordnade lagret, vilket ger tillgång till dess attribut och geometri vid filtrering av en aggregate-funktion |
plot_axis |
Den associerade plotaxeln, t.ex. ”x” eller ”y”. |
plot_axis_value |
Det aktuella värdet för plotaxeln. |
project_abstract |
Projektets sammanfattning, hämtad från projektets metadata |
project_area_units |
Arealenheten för det aktuella projektet, används vid beräkning av geometrins area |
project_author |
Projektets författare, hämtat från projektets metadata |
project_basename |
Basnamnet på det aktuella projektets filnamn (utan sökväg och tillägg) |
project_creation_date |
Datum då projektet skapades, hämtat från projektets metadata |
project_crs |
Identifierare för projektets referenssystem för koordinater (t.ex. ”EPSG:4326”) |
project_crs_arconym |
Akronymen för projektets koordinatreferenssystem |
project_crs_definition |
Den fullständiga definitionen av projektets referenssystem för koordinater |
project_crs_description |
Beskrivning av projektets referenssystem för koordinater |
project_crs_ellipsoid |
Ellipsoiden för projektets koordinatreferenssystem |
project_crs_proj4 |
Proj4-bilden av projektets koordinatreferenssystem |
project_crs_wkt |
WKT-representationen (välkänd text) av projektets koordinatreferenssystem |
project_distance_units |
Avståndsenheten för det aktuella projektet, används vid beräkning av geometrilängder och avstånd |
project_ellipsoid |
Namnet på ellipsoiden för det aktuella projektet, som används vid beräkning av geodetiska områden eller geometrilängder |
project_filename |
Filnamnet för det aktuella projektet |
project_folder |
Mappen för det aktuella projektet |
project_home |
Hemvägen för det aktuella projektet |
project_identifier |
Projektets identifierare, hämtad från projektets metadata |
project_keywords |
Projektets nyckelord, hämtade från projektets metadata |
project_last_saved |
Datum/tid när projektet senast sparades. |
project_path |
Den fullständiga sökvägen (inklusive filnamn) till det aktuella projektet |
project_title |
Titeln på det aktuella projektet |
project_units |
Enheterna i projektets CRS |
project_vertical_crs |
Identifierare för projektets referenssystem för vertikala koordinater (t.ex. ”EPSG:5703”) |
project_vertical_crs_definition |
Den fullständiga definitionen av projektets referenssystem för vertikala koordinater |
project_vertical_crs_description |
Beskrivning av projektets referenssystem för vertikala koordinater |
project_vertical_crs_wkt |
WKT (välkänd text)-representation av projektets vertikala koordinatreferenssystem |
qgis_locale |
Det aktuella språket i QGIS |
qgis_os_name |
Namnet på det aktuella operativsystemet, t.ex. ”windows”, ”linux” eller ”osx |
qgis_platform |
QGIS-plattformen, t.ex. ”desktop” eller ”server |
qgis_release_name |
Det aktuella namnet på QGIS-versionen |
qgis_short_version |
Den aktuella QGIS-versionen kort sträng |
qgis_version |
Den aktuella QGIS-versionens sträng |
qgis_version_no |
Det aktuella versionsnumret för QGIS |
row_number |
Lagrar numret på den aktuella raden |
snapping_results |
Ger tillgång till fotograferingsresultat när du digitaliserar ett objekt (endast tillgängligt i Add Feature) |
scale_value |
Det aktuella värdet för skalstapelns avstånd |
selected_file_path |
Vald filsökväg från filwidgetväljaren vid uppladdning av en fil med ett externt lagringssystem |
symbol_angle |
Vinkeln på den symbol som används för att återge objektet (gäller endast markörsymboler) |
symbol_color |
Färgen på den symbol som används för att rendera funktionen |
symbol_count |
Antalet funktioner som representeras av symbolen (i layoutlegenden) |
symbol_frame |
Bildnummer (endast för animerade symboler) |
symbol_id |
Symbolens interna ID (i layoutlegenden) |
symbol_label |
Symbolens etikett (antingen en användardefinierad etikett eller den autogenererade standardetiketten - i layoutlegenden) |
symbol_layer_count |
Totalt antal symbolskikt i symbolen |
symbol_layer_index |
Aktuellt symbolskiktsindex |
symbol_marker_column |
Kolumnnummer för markören (gäller endast för fyllning av punktmönster). |
symbol_marker_row |
Radnummer för markören (gäller endast för punktmönsterfyllningar). |
user_account_name |
Den aktuella användarens kontonamn i operativsystemet |
user_full_name |
Den aktuella användarens användarnamn för operativsystemet |
value |
Det aktuella värdet |
vector_tile_zoom |
Exakt zoomnivå för vektorplattor på den karta som återges (härledd från den aktuella kartskalan). Normalt i intervallet [0, 20]. Till skillnad från @zoom_level är denna variabel ett flyttalsvärde som kan användas för att interpolera värden mellan två heltalszoomnivåer. |
with_variable |
Gör det möjligt att ställa in en variabel för användning inom ett uttryck och undvika att samma värde räknas om flera gånger |
zoom_level |
Zoomnivå för vektorplattor för den karta som återges (härledd från den aktuella kartskalan). Normalt i intervallet [0, 20]. |
**Några exempel: **
Returnera X-koordinaten för ett kartobjekts centrum i layout:
x( map_get( item_variables( 'map1'), 'map_extent_center' ) )
Returnera, för varje funktion i det aktuella lagret, antalet överlappande flygplatsfunktioner:
aggregate( layer:='airport', aggregate:='count', expression:="code", filter:=intersects( $geometry, geometry( @parent ) ) )
Hämta objekt_id för den första snäppta punkten på en linje:
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' ) )
9.2.28. Senaste funktionerna
Denna grupp innehåller nyligen använda funktioner. Beroende på i vilket sammanhang den används (funktionsval, fältkalkylator, generisk) läggs nyligen använda uttryck till i motsvarande lista (upp till tio uttryck), sorterade från mer till mindre aktuella. Detta gör det enkelt att snabbt hämta och återanvända tidigare använda uttryck.