13.2. Lista de funções
As funções, operadores e variáveis disponíveis no QGIS estão listadas abaixo, agrupadas por categorias.
13.2.1. Funções de Agregação
Este grupo contém funções que agregam valores em camadas e campos.
13.2.1.1. aggregate
Retorna um valor agregado calculado usando feições de outra camada.
Sintaxe |
aggregate(layer, aggregate, expression, [filter], [concatenator=’’], [order_by]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.2. array_agg
Retorna um array de valores agregados de um campo ou expressão.
Sintaxe |
array_agg(expression, [group_by], [filter], [order_by]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.3. collect
Retorna a geometria multipartes de geometrias agregadas de uma expressão
Sintaxe |
collect(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.4. concatenate
Retorna todas as strings agregadas de um campo ou expressão unidas por um delimitador.
Sintaxe |
concatenate(expression, [group_by], [filter], [concatenator], [order_by]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.5. concatenate_unique
Retorna todas as strings exclusivas de um campo ou expressão unidas por um delimitador.
Sintaxe |
concatenate_unique(expression, [group_by], [filter], [concatenator], [order_by]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.6. count
Retorna a contagem de feições correspondentes.
Sintaxe |
count(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.7. count_distinct
Retorna a contagem de valores distintos.
Sintaxe |
count_distinct(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.8. count_missing
Retorna a contagem de valores ausentes (NULL).
Sintaxe |
count_missing(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.9. iqr
Retorna o intervalo interquartil calculado de um campo ou expressão.
Sintaxe |
iqr(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.10. majority
Retorna a maioria agregada dos valores (o valor mais comum) de um campo ou expressão.
Sintaxe |
majority(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.11. max_length
Retorna o comprimento máximo de strings de um campo ou expressão.
Sintaxe |
max_length(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.12. maximum
Retorna o valor máximo agregado de um campo ou expressão.
Sintaxe |
maximum(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.13. mean
Retorna o valor médio agregado de um campo ou expressão.
Sintaxe |
mean(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.14. median
Retorna o valor médio agregado de um campo ou expressão.
Sintaxe |
median(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.15. min_length
Retorna o comprimento mínimo de strings de um campo ou expressão.
Sintaxe |
min_length(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.16. minimum
Retorna o valor mínimo agregado de um campo ou expressão.
Sintaxe |
minimum(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.17. minority
Retorna a minoria agregada de valores (valor de menor ocorrência) de um campo ou expressão.
Sintaxe |
minority(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.18. q1
Retorna o primeiro quartil calculado de um campo ou expressão.
Sintaxe |
q1(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.19. q3
Retorna o terceiro quartil calculado de um campo ou expressão.
Sintaxe |
q3(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.20. range
Retorna o intervalo agregado de valores (máximo - mínimo) de um campo ou expressão.
Sintaxe |
range(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.21. relation_aggregate
Retorna um valor agregado calculado usando todas as feições filhas que coincidirem com a relação da camada.
Sintaxe |
relation_aggregate(relation, aggregate, expression, [concatenator=’’], [order_by]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: Criando uma ou muitas para muitas relações
13.2.1.22. stdev
Retorna o valor agregado do desvio padrão de um campo ou expressão.
Sintaxe |
stdev(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.1.23. sum
Retorna o valor somado agregado de um campo ou expressão.
Sintaxe |
sum(expression, [group_by], [filter]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.2. Funções de Array
Este grupo contém funções para criar e manipular arrays (também conhecidas como estruturas de dados da lista). A ordem dos valores no array é importante, diferentemente da ‘map’ data structure, onde a ordem dos pares chave-valor é irrelevante e os valores são identificados por suas chaves.
13.2.2.1. array
Retorna um array contendo todos os valores passados como parâmetros.
Sintaxe |
matriz(valor1, valor2, …) |
Argumentos |
|
Exemplos |
|
13.2.2.2. array_all
Retorna VERDADEIRO se um array contiver todos os valores de um dado array.
Sintaxe |
array_all(array_a, array_b) |
Argumentos |
|
Exemplos |
|
13.2.2.3. array_append
Retorna uma matriz com o valor fornecido adicionado no final.
Sintaxe |
array_append(array, value) |
Argumentos |
|
Exemplos |
|
13.2.2.4. array_cat
Retorna um array com todos os arrays informados concatenados.
Sintaxe |
array_cat(array1, array2, …) |
Argumentos |
|
Exemplos |
|
13.2.2.5. array_contains
Retorna VERDADEIRO se um array contém o valor informado.
Sintaxe |
array_contains(array, value) |
Argumentos |
|
Exemplos |
|
13.2.2.6. array_count
Conta o número de ocorrências de um determinado valor em um array.
Sintaxe |
array_count(array, value) |
Argumentos |
|
Exemplos |
|
13.2.2.7. array_distinct
Retorna um array contendo valores distintos do array fornecido.
Sintaxe |
matriz_distinta(matriz) |
Argumentos |
|
Exemplos |
|
13.2.2.8. array_filter
Retorna um array com apenas os itens para os quais a expressão é avaliada como verdadeira.
Sintaxe |
filtro_matriz(matriz, expressão, [limite=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.2.9. array_find
Retorna o menor index (0 para o primeiro) do valor dentro de um array. Retorna -1 se o valor não for encontrado.
Sintaxe |
array_find(array, value) |
Argumentos |
|
Exemplos |
|
13.2.2.10. array_first
Retorna o primeiro valor de um array.
Sintaxe |
array_first(array) |
Argumentos |
|
Exemplos |
|
13.2.2.11. array_foreach
Retorna um array com a expressão aplicada em cada item.
Sintaxe |
array_foreach(array, expression) |
Argumentos |
|
Exemplos |
|
13.2.2.12. array_get
Retorna o enésimo (N) valor (0 para o primeiro) ou ultimo -enésimo valor (-1 para o último) de um array.
Sintaxe |
array_get(array, pos) |
Argumentos |
|
Exemplos |
|
Dica
Você pode usar também o operador de índice ([]) para pegar um valor de um array.
13.2.2.13. array_insert
Retorna um array com o valor fornecido adicionado na posição especificada.
Sintaxe |
array_insert(array, pos, value) |
Argumentos |
|
Exemplos |
|
13.2.2.14. array_intersect
Retorna VERDADEIRO se pelo menos um elemento do array1 existe no array2.
Sintaxe |
array_intersect(array1, array2) |
Argumentos |
|
Exemplos |
|
13.2.2.15. array_last
Retorna o último valor de um array.
Sintaxe |
array_last(array) |
Argumentos |
|
Exemplos |
|
13.2.2.16. array_length
Retorna o número de elementos de um array.
Sintaxe |
array_length(array) |
Argumentos |
|
Exemplos |
|
13.2.2.17. array_majority
Retorna os valores mais comuns em um array.
Sintaxe |
array_majority(array, [option=’all’]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.2.18. array_max
Retorna o valor máximo de um array.
Sintaxe |
array_max(array) |
Argumentos |
|
Exemplos |
|
13.2.2.19. array_mean
Retorna a média dos valores aritméticos de um array. Valores não numéricos no array são ignorados.
Sintaxe |
array_mean(array) |
Argumentos |
|
Exemplos |
|
13.2.2.20. array_median
Retorna a mediana dos valores aritméticos de um array. Valores não aritméticos no array são ignorados.
Sintaxe |
array_median(array) |
Argumentos |
|
Exemplos |
|
13.2.2.21. array_min
Retorna o valor mínimo de um array.
Sintaxe |
array_min(array) |
Argumentos |
|
Exemplos |
|
13.2.2.22. array_minority
Retorna os valores menos comuns de um array.
Sintaxe |
array_minority(array, [option=’all’]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.2.23. array_prepend
Retorna um array com o valor informado inserido no início.
Sintaxe |
array_prepend(array, value) |
Argumentos |
|
Exemplos |
|
13.2.2.24. array_prioritize
Retorna um array ordenado utilizando a ordenação especificada em outro array. Os valores que estiverem presentes no primeiro array mas faltam no segundo array serão inseridos no final do resultado.
Sintaxe |
array_prioritize(array, array_prioritize) |
Argumentos |
|
Exemplos |
|
13.2.2.25. array_remove_all
Retorna um array com todas as entradas do valor informado removidas.
Sintaxe |
array_remove_all(array, value) |
Argumentos |
|
Exemplos |
|
13.2.2.26. array_remove_at
Retorna um array com o item no índice informado removido. Suporta indice positivo (0 para o primeiro elemento) e negativo (o ultimo -enésimo valor, -1 para o ultimo elemento).
Sintaxe |
array_remove_at(array, pos) |
Argumentos |
|
Exemplos |
|
13.2.2.27. array_replace
Retorna um array com o valor fornecido, array, ou um map dos valores substituídos.
Value & variant do array
Retorna um array com o valor fornecido ou array dos valores substituídos por outro valor ou um array de valores
Sintaxe |
array_replace(array, before, after) |
Argumentos |
|
Exemplos |
|
Variação por mapeamento
Retorna um array com as chaves do map fornecido substituído pelo valores pareados.
Sintaxe |
array_replace(array, map) |
Argumentos |
|
Exemplos |
|
13.2.2.28. array_reverse
Retorna a matriz fornecida com valores da matriz na ordem inversa.
Sintaxe |
array_reverse(array) |
Argumentos |
|
Exemplos |
|
13.2.2.29. array_slice
Retorna uma parcela do array, O fatiamento é definido pelos argumentos start_pos e end_pos.
Sintaxe |
array_slice(array, start_pos, end_pos) |
Argumentos |
|
Exemplos |
|
13.2.2.30. array_sort
Retorna o array fornecido com os elementos ordenados.
Sintaxe |
array_sort(array, [ascending=true]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.2.31. array_sum
Retorna a soma dos valores aritméticos em uma array. Valores não numéricos na array são ignorados.
Sintaxe |
array_sum(array) |
Argumentos |
|
Exemplos |
|
13.2.2.32. array_to_string
Contatena os elementos do array em uma string separada pelo delimitador e utilizando uma string opcional para valores vazios.
Sintaxe |
array_to_string(array, [delimiter=’,’], [empty_value=’’]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.2.33. generate_series
Cria uma array contendo uma sequência de números.
Sintaxe |
generate_series(start, stop, [step=1]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.2.34. geometries_to_array
Divide a geometria em geometrias mais simples em um array.
Sintaxe |
geometries_to_array(geometry) |
Argumentos |
|
Exemplos |
|
13.2.2.35. regexp_matches
Retorna um array de todas as strings capturadas pelos grupos de captura, na ordem em que os próprios grupos aparecem na expressão regular fornecida em relação a uma string.
Sintaxe |
regexp_matches(string, regex, [empty_value=’’]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.2.36. string_to_array
Divide a string em um array usando o delimitador fornecido e string opcional fornecida para valores vazios,
Sintaxe |
string_to_array(string, [delimiter=’,’], [empty_value=’’]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.3. Funções de Cor
Este grupo contém funções para manipulação de cores.
13.2.3.1. color_cmyk
Retorna uma representação em string de uma cor com base em seus componentes ciano, magenta, amarelo e preto
Sintaxe |
color_cmyk(cyan, magenta, yellow, black) |
Argumentos |
|
Exemplos |
|
13.2.3.2. color_cmyka
Retorna uma representação em string de uma cor com base em seus componentes ciano, magenta, amarelo, preto e alfa (transparência)
Sintaxe |
color_cmyka(cyan, magenta, yellow, black, alpha) |
Argumentos |
|
Exemplos |
|
13.2.3.3. color_grayscale_average
Aplica um filtro de escala cinza e retorna uma representação em string de uma cor fornecida.
Sintaxe |
color_grayscale_average(color) |
Argumentos |
|
Exemplos |
|
13.2.3.4. color_hsl
Retorna uma representação em string de uma cor com base em seus atributos de matiz, saturação e luminosidade.
Sintaxe |
color_hsl(hue, saturation, lightness) |
Argumentos |
|
Exemplos |
|
13.2.3.5. color_hsla
Retorna uma representação em string de uma cor com base em seus atributos de matiz, saturação, brilho e alfa (transparência)
Sintaxe |
color_hsla(hue, saturation, lightness, alpha) |
Argumentos |
|
Exemplos |
|
13.2.3.6. color_hsv
Retorna uma representação em string de uma cor baseada na sua matiz, saturação e valores dos atributos.
Sintaxe |
color_hsv(hue, saturation, value) |
Argumentos |
|
Exemplos |
|
13.2.3.7. color_hsva
Retorna uma representação em string de uma cor com base em seus atributos de matiz, saturação, valor e alfa (transparência).
Sintaxe |
color_hsva(hue, saturation, value, alpha) |
Argumentos |
|
Exemplos |
|
13.2.3.8. color_mix_rgb
Returns a string representing a color mixing the red, green, blue, and alpha values of two provided colors based on a given ratio.
Sintaxe |
color_mix_rgb(color1, color2, ratio) |
Argumentos |
|
Exemplos |
|
13.2.3.9. color_part
Retorna um componente específico de uma string de cores, por exemplo, o componente vermelho ou o componente alfa.
Sintaxe |
color_part(color, component) |
Argumentos |
|
Exemplos |
|
13.2.3.10. color_rgb
Retorna uma representação em string de uma cor baseada em seus componentes vermelho, verde e azul.
Sintaxe |
color_rgb(red, green, blue) |
Argumentos |
|
Exemplos |
|
13.2.3.11. color_rgba
Retorna uma representação em string de uma cor baseada em seus componentes vermelho, verde, azul e alpha (transparência).
Sintaxe |
color_rgba(red, green, blue, alpha) |
Argumentos |
|
Exemplos |
|
13.2.3.12. create_ramp
Retorna um rampa gradiente a partir de um mapa de cores e passos.
Sintaxe |
create_ramp(map, [discrete=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.3.13. darker
Retorna uma string de cor mais escura (ou mais clara)
Sintaxe |
darker(color, factor) |
Argumentos |
|
Exemplos |
|
Leitura adicional: lighter
13.2.3.14. lighter
Retorna uma string de cor mais clara (ou mais escura)
Sintaxe |
lighter(color, factor) |
Argumentos |
|
Exemplos |
|
Leitura adicional: darker
13.2.3.15. project_color
Retorna uma cor do esquema de cores do projeto.
Sintaxe |
project_color(name) |
Argumentos |
|
Exemplos |
|
Leitura adicional: configurando cores do projeto
13.2.3.16. ramp_color
Retorna uma representação em string de uma rampa de cores.
Variante de rampa salva
Retorna uma representação em string de uma cor a partir de uma rampa salva
Sintaxe |
ramp_color(ramp_name, value) |
Argumentos |
|
Exemplos |
|
Nota
As rampas de cores podem variar entre as instalações do QGIS. Esta função pode não retornar o resultado esperado se você mudar seu projeto QGIS entre instalações.
Variante de rampa criada por expressão
Retorna uma representação em string de uma cor a partir de uma rampa criada por expressão
Sintaxe |
ramp_color(ramp, value) |
Argumentos |
|
Exemplos |
|
Leitura adicional: Setting a Color Ramp, The color ramp drop-down shortcut
13.2.3.17. set_color_part
Define um componente de cor específico para uma sttring cores, por exemplo, o componente vermelho ou o componente alfa.
Sintaxe |
set_color_part(color, component, value) |
Argumentos |
|
Exemplos |
|
13.2.4. Funções Condicionais
Este grupo contém funções para lidar com verificações condicionais em expressões.
13.2.4.1. CASE
CASE é utilizado para verificar uma série de condições e retornar o resultado para a primeira condição que atender. As condições são verificadas sequencialmente, e se uma condição for verdadeira, a verificação para, e o valor correspondente é retornado, Se nenhuma condição for verdadeira, o valor na cláusula ELSE é retornada. No entanto, se nenhuma cláusula ELSE for declarada e nenhuma das condições forem atendidas, NULL é retornado.
CASE
WHEN condição THEN resultado
[ …n ]
[ ELSE resultado ]
END
[] indica componentes opcionais
Argumentos |
|
Exemplos |
|
13.2.4.2. coalesce
Retorna o primeiro valor não NULO da lista de expressões.
Esta função pode receber qualquer número de argumentos.
Sintaxe |
coalesce(expression1, expression2, …) |
Argumentos |
|
Exemplos |
|
13.2.4.3. if
Testa uma condição e retorna um resultado diferente dependendo da verificação condicional.
Sintaxe |
if(condition, result_when_true, result_when_false) |
Argumentos |
|
Exemplos |
|
13.2.4.4. nullif
Retorna um valor NULL se value1 for igual ao value2; caso contrário irá retornar value1. Isso pode ser usado para substituir valores condicionalmente por NULL.
Sintaxe |
nullif(value1, value2) |
Argumentos |
|
Exemplos |
|
13.2.4.5. regexp_match
Retorna a primeira posição que corresponda com a expressão regular em uma string unicode, ou 0 se a sub string não for encontrada.
Sintaxe |
regexp_match(input_string, regex) |
Argumentos |
|
Exemplos |
|
13.2.4.6. try
Testa uma expressão e retorna seu valor se não tiver erros. Se a expressão retornar algum erro, um valor alternativo será retornado quando fornecido, caso contrário a função retornará NULL.
Sintaxe |
try(expression, [alternative]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.5. Funções de Conversão
Este grupo contém funções para conversão de um tipo de dado em outro (ex.: string de/para inteiro, binário de/para string, string para data, …).
13.2.5.1. from_base64
Decodifica uma string codificada em Base64 em um valor binário.
Sintaxe |
from_base64(string) |
Argumentos |
|
Exemplos |
|
13.2.5.2. hash
Cria uma hash de uma string fornecida com um determinado método. Um byte (8 bits) é representado por dois “dígitos” hexadecimais, então ‘md4’ (16 bytes) gera uma string hexadecimal de 16 * 2 = 32 caracteres de extensão e ‘keccak_512’ (64 bytes) gera uma string hexadecimal de 64 * 2 = 128 caracteres de extensão.
Sintaxe |
hash(string, method) |
Argumentos |
|
Exemplos |
|
13.2.5.3. md5
Cria uma hash md5 de uma string.
Sintaxe |
md5(string) |
Argumentos |
|
Exemplos |
|
13.2.5.4. sha256
Cria uma hash sha256 de uma string.
Sintaxe |
sha256(string) |
Argumentos |
|
Exemplos |
|
13.2.5.5. to_base64
Codifica um valor binário em uma string, usando a codificação Base64.
Sintaxe |
to_base64(value) |
Argumentos |
|
Exemplos |
|
13.2.5.6. to_date
Converte uma string em um objeto de data. Uma string de formatação pode ser fornecida para analisar a string; veja QDate::fromString ou a documentação da função format_date para documentação adicional da fomatação. Por padrão o locale atual do usuário do QGIS será utilizado.
Sintaxe |
to_date(string, [format], [language]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.5.7. to_datetime
Converte uma string em um objeto datetime. Uma string opcional pode ser fornecido para avaliar a string; veja QDate::fromString, QTime::fromString ou a documentação da função format_date para documentação adicional do formato. Por padrão a localização atual do usuário do QGIS é utilizada.
Sintaxe |
to_datetime(string, [format], [language]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.5.8. to_decimal
Converte uma coordenada de grau, minuto e segundo em seu equivalente decimal.
Sintaxe |
to_decimal(value) |
Argumentos |
|
Exemplos |
|
13.2.5.9. to_dm
Converte uma coordenada em grau, minuto.
Sintaxe |
to_dm(coordinate, axis, precision, [formatting=]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.5.10. to_dms
Converte uma coordenada para grau, minuto, segundo.
Sintaxe |
to_dms(coordinate, axis, precision, [formatting=]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.5.11. to_int
Converte uma string para um número inteiro. Nada será retornado se o valor não puder ser convertido para inteiro (ex. ‘123asd’ é inválido).
Sintaxe |
to_int(string) |
Argumentos |
|
Exemplos |
|
13.2.5.12. to_interval
Converte uma string para o tipo intervalo. Pode ser utilizado dias, horas, mês, etc de uma data.
Sintaxe |
to_interval(string) |
Argumentos |
|
Exemplos |
|
13.2.5.13. to_real
Converte uma string para um número real. Nada é retornado se um valor não puder ser convertido para real (ex.: ‘123.56asd’ é inválido). Os números são arredondados após salvar as alterações se a precisão for menor que o resultado da conversão.
Sintaxe |
to_real(string) |
Argumentos |
|
Exemplos |
|
13.2.5.14. to_string
Converte um número em string.
Sintaxe |
to_string(number) |
Argumentos |
|
Exemplos |
|
13.2.5.15. to_time
Converte uma string em um objeto time. Uma string de formato opcional pode ser fornecida para analisar a string; veja QTime::fromString para documentação adicional sobre o formato.
Sintaxe |
to_time(string, [format], [language]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.6. Funções Personalizadas
Este grupo contém funções criadas pelo usuário. Veja Editor de Funções para mais detalhes.
13.2.7. Funções de Data e Hora
Este grupo contém funções para manipulação de data e hora. este grupo compartilha várias funções com os grupos Funções de Conversão (to_date, to_time, to_datetime, to_interval) e Funções de String (format_date).
Nota
Armazenando data, datetime e intervalos em campos
A habilidade para armazenar valores data, hora and datetime depende diretamente do provedor da fonte (ex., Shapefile aceita o formato date, mas não datetime ou formato time). A seguir estão algumas sugestões para superar essa limitação:
date, datetime and time podem ser convertidos e armazenados em campos do tipo texto usando a função format_date() .
Intervals podem ser armazenados em campos do tipo inteiro ou decimal após a utilização de uma das funções de extração de data (ex., day() para pegar o intervalo em dias)
13.2.7.1. age
Retorna a diferença entre duas datas ou datetimes.
A diferença é retornada como um Interval
e precisa ser usada com uma das seguintes funções para extrair informações úteis:
year
month
week
day
hour
minute
second
Sintaxe |
age(datetime1, datetime2) |
Argumentos |
|
Exemplos |
|
13.2.7.2. datetime_from_epoch
Retorna um datetime cujo a data e hora são o número de milisegundos, mseg, que se passaram desde 1970-01-01T00:00:00.000, Coordinated Universal Time (Qt.UTC), e convertido para Qt.LocalTime.
Sintaxe |
datetime_from_epoch(int) |
Argumentos |
|
Exemplos |
|
13.2.7.3. day
Extrai o dia de uma data ou o número de dias de um intervalo.
Variante Data
Extrai o dia de um date ou datetime.
Sintaxe |
day(date) |
Argumentos |
|
Exemplos |
|
Variante Intervalo
Calcula a duração em dias de um intervalo.
Sintaxe |
day(interval) |
Argumentos |
|
Exemplos |
|
13.2.7.4. day_of_week
Retorna o dia da semana para um date ou datetime específico. O valor retornado varia de 0 até 6, onde 0 corresponde a Domingo e 6 Sábado.
Sintaxe |
day_of_week(date) |
Argumentos |
|
Exemplos |
|
13.2.7.5. epoch
Retorna o intervalo em milisegundos entre a epoc unix e um valor de data fornecida.
Sintaxe |
epoch(date) |
Argumentos |
|
Exemplos |
|
13.2.7.6. format_date
Fomata o tipo date ou string em uma string formadata customizada. Usa o formato de string do Qt date/time . Veja QDateTime::toString.
Sintaxe |
format_date(datetime, format, [language]) [] indica argumentos opcionais |
||||||||||||||||||||||||||||||||||||||||||||||||
Argumentos |
|
||||||||||||||||||||||||||||||||||||||||||||||||
Exemplos |
|
13.2.7.7. hour
Extrai a parte das horas de uma daterime ou hora, ou o número de horas de um intervalo.
Variação de tempo
Extrai a parte das horas de uma daterime ou hora.
Sintaxe |
hour(datetime) |
Argumentos |
|
Exemplos |
|
Variante Intervalo
Calcula a duração em horas de um intervalo.
Sintaxe |
hour(interval) |
Argumentos |
|
Exemplos |
|
13.2.7.8. make_date
Cria um valor de data a partir de números de ano, mês e dia.
Sintaxe |
make_date(year, month, day) |
Argumentos |
|
Exemplos |
|
13.2.7.9. make_datetime
Cria um valor de data e hora a partir de números de ano, mês, dia, hora, minuto e segundo.
Sintaxe |
make_datetime(year, month, day, hour, minute, second) |
Argumentos |
|
Exemplos |
|
13.2.7.10. make_interval
Cria um intervalo de valores para os valores de ano, mês, semanas, dias, horas, minutos e segundos.
Sintaxe |
make_interval([years=0], [months=0], [weeks=0], [days=0], [hours=0], [minutes=0], [seconds=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.7.11. make_time
Cria um valor de tempo a partir de números de hora, minuto e segundo.
Sintaxe |
make_time(hour, minute, second) |
Argumentos |
|
Exemplos |
|
13.2.7.12. minute
Extrai a parte de minutos de um datetime ou hora, ou o número de minutos de um intevalor.
Variação de tempo
Extrai a parte dos minutos de uma hora ou datetime.
Sintaxe |
minute(datetime) |
Argumentos |
|
Exemplos |
|
Variante Intervalo
Calcula a extensão em minutos de um intervalo.
Sintaxe |
minute(interval) |
Argumentos |
|
Exemplos |
|
13.2.7.13. month
Extrai a parte do mês de uma data ou o número de meses de um intervalo.
Variante Data
Extrai a parte de mês de uma data ou datetime.
Sintaxe |
month(date) |
Argumentos |
|
Exemplos |
|
Variante Intervalo
Calcula a duração em meses de um intervalo.
Sintaxe |
month(interval) |
Argumentos |
|
Exemplos |
|
13.2.7.14. now
Retorna a data e hora atuais. A função é estática e retornará resultados consistentes durante a avaliação. A hora retornada é a hora em que a expressão é preparada.
Sintaxe |
now() |
Exemplos |
|
13.2.7.15. second
Extrai a parte dos segundos de um datetime ou hora, ou o número de segundos de um intervalo.
Variação de tempo
Extrai a parte do segundos de uma hora ou datetime.
Sintaxe |
second(datetime) |
Argumentos |
|
Exemplos |
|
Variante Intervalo
Calcula a duração em segundos de um intervalo.
Sintaxe |
second(interval) |
Argumentos |
|
Exemplos |
|
13.2.7.16. to_date
Converte uma string em um objeto de data. Uma string de formatação pode ser fornecida para analisar a string; veja QDate::fromString ou a documentação da função format_date para documentação adicional da fomatação. Por padrão o locale atual do usuário do QGIS será utilizado.
Sintaxe |
to_date(string, [format], [language]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.7.17. to_datetime
Converte uma string em um objeto datetime. Uma string opcional pode ser fornecido para avaliar a string; veja QDate::fromString, QTime::fromString ou a documentação da função format_date para documentação adicional do formato. Por padrão a localização atual do usuário do QGIS é utilizada.
Sintaxe |
to_datetime(string, [format], [language]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.7.18. to_interval
Converte uma string para o tipo intervalo. Pode ser utilizado dias, horas, mês, etc de uma data.
Sintaxe |
to_interval(string) |
Argumentos |
|
Exemplos |
|
13.2.7.19. to_time
Converte uma string em um objeto time. Uma string de formato opcional pode ser fornecida para analisar a string; veja QTime::fromString para documentação adicional sobre o formato.
Sintaxe |
to_time(string, [format], [language]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.7.20. week
Extrai o número da semana de uma data ou o número de semanas de um intervalo.
Variante Data
Extrai o número da semana de uma data ou datetime.
Sintaxe |
week(date) |
Argumentos |
|
Exemplos |
|
Variante Intervalo
Calcula a duração em semanas de um intervalo.
Sintaxe |
week(interval) |
Argumentos |
|
Exemplos |
|
13.2.7.21. year
Extrai a parte do ano de uma data ou o número de anos de um intervalo.
Variante Data
Extrai a parte do ano de uma data ou de um datetime.
Sintaxe |
year(date) |
Argumentos |
|
Exemplos |
|
Variante Intervalo
Calcula a duração em anos de um intervalo.
Sintaxe |
year(interval) |
Argumentos |
|
Exemplos |
|
Alguns exemplos:
Além dessas funções, subtrair datas, datas ou horas usando o operador -
(menos) retornará um intervalo.
Adicionar ou subtrair um intervalo a datas, data/hora ou horas, usando os operadores +
(mais) e -
(menos), retornará uma data/hora.
Obtenha o número de dias até o lançamento do QGIS 3.0:
to_date('2017-09-29') - to_date(now()) -- Returns <interval: 203 days>
O mesmo com o tempo:
to_datetime('2017-09-29 12:00:00') - now() -- Returns <interval: 202.49 days>
Obtenha a data/hora de 100 dias a partir de agora:
now() + to_interval('100 days') -- Returns <datetime: 2017-06-18 01:00:00>
13.2.8. Campos e Valores
Contém uma lista de campos da camada ativa e valores especiais. Lista de campos inclui os que estão armazenados no dataset, virtuais e auxiliares bem como os unidos.
Clique duas vezes no nome de um campo para adicioná-lo à sua expressão. Você também pode digitar o nome do campo (de preferência entre aspas duplas) ou seu alias.
Para recuperar os valores dos campos a serem usados em uma expressão, selecione o campo apropriado e, no widget mostrado, escolha entre 10 Amostras e Todos os Únicos. Os valores solicitados são exibidos e você pode usar a caixa Pesquisar na parte superior da lista para filtrar o resultado. Valores de amostra também podem ser acessados clicando com o botão direito do mouse em um campo.
Para adicionar um valor à expressão que você está escrevendo, clique duas vezes nela na lista. Se o valor for de um tipo de string, deve ser simples entre aspas, caso contrário, nenhuma citação será necessária.
13.2.8.1. NULL
Equivale a um valor NULO.
Sintaxe |
NULL |
Exemplos |
|
Nota
Para testar NULO, use uma expressão IS NULL ou IS NOT NULL.
13.2.9. Funções de Arquivos e Caminhos
Este grupo contém funções que manipulam nomes de arquivos e caminhos.
13.2.9.1. base_file_name
Retorna o nome base do arquivo sem o diretório ou sufixo do arquivo.
Sintaxe |
base_file_name(path) |
Argumentos |
|
Exemplos |
|
13.2.9.2. exif
Recupera valores de tag exif de um arquivo de imagem.
Sintaxe |
exif(path, [tag]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.9.3. file_exists
Retorna TRUE se o caminho do arquivo existir.
Sintaxe |
file_exists(path) |
Argumentos |
|
Exemplos |
|
13.2.9.4. file_name
Retorna o nome de um arquivo (incluindo a extensão do arquivo), excluindo o diretório.
Sintaxe |
file_name(path) |
Argumentos |
|
Exemplos |
|
13.2.9.5. file_path
Retorna o componente de diretório de um caminho de arquivo. Isso não inclui o nome do arquivo.
Sintaxe |
file_path(path) |
Argumentos |
|
Exemplos |
|
13.2.9.6. file_size
Retorna o tamanho (em bytes) de um arquivo.
Sintaxe |
file_size(path) |
Argumentos |
|
Exemplos |
|
13.2.9.7. file_suffix
Retorna o sufixo de um arquivo (extensão) de um caminho de arquivo.
Sintaxe |
file_suffix(path) |
Argumentos |
|
Exemplos |
|
13.2.9.8. is_directory
Retorna VERDADEIRO se um caminho corresponder a um diretório.
Sintaxe |
is_directory(path) |
Argumentos |
|
Exemplos |
|
13.2.9.9. is_file
Retorna VERDADEIRO se um caminho corresponder a um arquivo.
Sintaxe |
is_file(path) |
Argumentos |
|
Exemplos |
|
13.2.10. Funções de Formulário
Este grupo contém funções que operam exclusivamente sobre os atributos de um contexto. Por exemplo, na configuração dos widgets de campos.
13.2.10.1. current_parent_value
Utilizável apenas em um contexto de formulário incorporado, esta função retorna o valor atual e não salvo de um campo no formulário pai que está sendo editado no momento. Isso será diferente dos valores de atributo reais da feição pai para feições que estão sendo editadas no momento ou que ainda não foram adicionadas a uma camada pai. Quando usada em um widget de filtro por expressão de relação de valor, essa função deve ser agrupada em um ‘coalesce()’ que pode recuperar o recurso pai real da camada quando o formulário não é usado em um contexto incorporado.
Sintaxe |
current_parent_value(field_name) |
Argumentos |
|
Exemplos |
|
13.2.10.2. current_value
Retorna o valor atual não salvo de um campo no formulário ou linha da tabela que está sendo editada no momento. Isso será diferente dos valores de atributo reais da feição para feições que estão sendo editadas no momento ou que ainda não foram adicionadas a uma camada.
Sintaxe |
current_value(field_name) |
Argumentos |
|
Exemplos |
|
13.2.11. Funções de Combinação Fuzzy
Este grupo contém funções para comaparações fuzzy entre valores.
13.2.11.1. hamming_distance
Retorna a distância de Hamming entre duas strings. Isso equivale ao número de caracteres em posições correspondentes nas strings de entrada onde os caracteres são diferentes. As cadeias de caracteres de entrada devem ter o mesmo comprimento e a comparação diferencia maiúsculas de minúsculas.
Sintaxe |
hamming_distance(string1, string2) |
Argumentos |
|
Exemplos |
|
13.2.11.2. levenshtein
Retorna a distância de edição Levenshtein entre duas cadeias. Isso equivale ao número mínimo de edições de caracteres (inserções, exclusões ou substituições) necessárias para alterar uma cadeia para outra.
A distância Levenshtein é uma medida da semelhança entre duas astrings. Distâncias menores significam que as string são mais semelhantes, e distâncias maiores indicam mais strings diferentes. A distância diferencia maiúsculas de minúsculas.
Sintaxe |
levenshtein(string1, string2) |
Argumentos |
|
Exemplos |
|
13.2.11.3. longest_common_substring
Retorna a sub string comum mais longa entre duas strings. Essa sub string é a cadeia mais longa que é uma sub string das duas strings de entrada. Por exemplo, a sub string comum mais longa de “ABABC” e “BABCA” é “BABC”. A substring faz distinção entre maiúsculas e minúsculas.
Sintaxe |
longest_common_substring(string1, string2) |
Argumentos |
|
Exemplos |
|
13.2.11.4. soundex
Retorna a representação Soundex de uma string. Soundex é um algoritmo de correspondência fonética, portanto, strings com sons semelhantes devem ser representadas pelo mesmo código Soundex.
Sintaxe |
soundex(string) |
Argumentos |
|
Exemplos |
|
13.2.12. Funções Gerais
Este grupo contém funções gerais variadas.
13.2.12.1. env
Obtém uma variável de ambiente e retorna seu conteúdo como uma string. Se a variável não for encontrada, NULL será retornado. Isso é útil para injetar configurações específicas do sistema, como letras de unidade ou prefixos de caminho. A definição de variáveis de ambiente depende do sistema operacional, verifique com o administrador do sistema ou a documentação do sistema operacional como isso pode ser definido.
Sintaxe |
env(name) |
Argumentos |
|
Exemplos |
|
13.2.12.2. eval
Avalia uma expressão que é passada em uma string. Útil para expandir parâmetros dinâmicos passados como campos ou variáveis de contexto.
Sintaxe |
eval(expression) |
Argumentos |
|
Exemplos |
|
13.2.12.3. eval_template
Avalia um modelo que é passado em uma string. Útil para expandir parâmetros dinâmicos passados como variáveis de contexto ou campos.
Sintaxe |
eval_template(template) |
Argumentos |
|
Exemplos |
|
13.2.12.4. is_layer_visible
Retorna VERDADEIRO se a camada especificada estiver visível.
Sintaxe |
is_layer_visible(layer) |
Argumentos |
|
Exemplos |
|
13.2.12.5. mime_type
Retorna o mime type dos dados binários.
Sintaxe |
mime_type(bytes) |
Argumentos |
|
Exemplos |
|
13.2.12.6. var
Retorna o valor armazenado em uma variável especificada.
Sintaxe |
var(name) |
Argumentos |
|
Exemplos |
|
Leitura adicional: Lista de variáveis padrão
13.2.12.7. with_variable
Esta função define uma variável para qualquer código de expressão que será fornecido como 3º argumento. Isso só é útil para expressões complicadas, onde o mesmo valor calculado precisa ser usado em lugares diferentes.
Sintaxe |
with_variable(name, value, expression) |
Argumentos |
|
Exemplos |
|
13.2.13. Funções de Geometria
Este grupo contém funções que operam em objetos de geometria (por exemplo, buffer, transform, $area).
13.2.13.1. affine_transform
Retorna a geometria após uma transformação afim. Os cálculos estão no Sistema de Referência Espacial desta geometria. As operações são realizadas em escala, rotação, ordem de translação. Se houver um deslocamento Z ou M, mas a coordenada não estiver presente na geometria, ela será adicionada.
Sintaxe |
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]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.2. angle_at_vertex
Retorna o ângulo da bissetriz (ângulo médio) para a geometria de um vértice especificado em uma geometria de linha. Os ângulos estão em graus no sentido horário a partir do norte.
Sintaxe |
angle_at_vertex(geometry, vertex) |
Argumentos |
|
Exemplos |
|
13.2.13.3. apply_dash_pattern
Aplica um padrão de traço a uma geometria, retornando uma geometria MultiLineString que é a geometria de entrada traçada ao longo de cada linha/anel com o padrão especificado.
Sintaxe |
apply_dash_pattern(geometry, pattern, [start_rule=no_rule], [end_rule=no_rule], [adjustment=both], [pattern_offset=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.4. $area
Retorna a área do recurso atual. A área calculada por esta função respeita tanto a configuração do elipsóide do projeto atual quanto as configurações da unidade de área. Por exemplo, se um elipsóide foi definido para o projeto, a área calculada será elipsoidal, e se nenhum elipsóide for definido, a área calculada será planimétrica.
Sintaxe |
$area |
Exemplos |
|
13.2.13.5. area
Retorna a área de um objeto de geometria polígono. Os cálculos são sempre planimétricos no Sistema de Referência Espacial (SRS) dessa geometria, e as unidades da área retornada corresponderão às unidades do SRS. Isso difere dos cálculos realizados pela função $area, que realizará cálculos elipsoidais com base nas configurações de elipsóide e unidade de área do projeto.
Sintaxe |
area(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.6. azimuth
Retorna o azimute baseado no norte como o ângulo em radianos medido no sentido horário da vertical em point_a a point_b.
Sintaxe |
azimuth(point_a, point_b) |
Argumentos |
|
Exemplos |
|
13.2.13.7. boundary
Retorna o fechamento do limite combinatório da geometria (ou seja, o limite topológico da geometria). Por exemplo, uma geometria de polígono terá um limite que consiste nas cadeias de linhas para cada anel no polígono. Alguns tipos de geometria não têm um limite definido, por exemplo, pontos ou coleções de geometria, e retornarão NULO.
Sintaxe |
boundary(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Limite
13.2.13.8. bounds
Retorna uma geometria que representa a caixa delimitadora de uma geometria de entrada. Os cálculos estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
bounds(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Caixas delimitadoras.
13.2.13.9. bounds_height
Retorna a altura do rentângulo envolvente de uma geometria. O cálculos são no Sistema de Referencia Espacial da geometria.
Sintaxe |
bounds_height(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.10. bounds_width
Retorna a largura do retângulo envolvente de uma geometria. Os cálculos estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
bounds_width(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.11. buffer
Retorna uma geometria que representa todos os pontos cuja distância dessa geometria é menor ou igual à distância. Os cálculos estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
buffer(geometry, distance, [segments=8], [cap=’round’], [join=’round’], [miter_limit=2]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Buffer
13.2.13.12. buffer_by_m
Cria um buffer ao longo de uma geometria de linha onde o diâmetro do buffer varia de acordo com os valores m nos vértices da linha.
Sintaxe |
buffer_by_m(geometry, [segments=8]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Buffer de largura variável (por valor M)
13.2.13.13. centroid
Retorna o centro geométrico de uma geometria.
Sintaxe |
centroid(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Centroides
13.2.13.14. close_line
Retorna uma linha fechada da linha de entrada anexando o primeiro ponto ao final da linha, se ainda não estiver fechada. Se a geometria não for uma sequência de linhas ou sequência de várias linhas, o resultado será NULL.
Sintaxe |
close_line(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.15. closest_point
Retorna o ponto em geometria1 que está mais próximo de geometria2.
Sintaxe |
closest_point(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
13.2.13.16. collect_geometries
Coleta uma série de geometrias em um objeto de geometria multi parte.
Lista de variantes de argumentos
As partes geométricas são especificadas como argumentos separados para a função.
Sintaxe |
collect_geometries(geometry1, geometry2, …) |
Argumentos |
|
Exemplos |
|
Variante array
As partes de geometria são especificadas como um array de partes de geometria.
Sintaxe |
collect_geometries(array) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Coletar geometrias
13.2.13.17. combine
Retorna a combinação de duas geometrias.
Sintaxe |
combine(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
13.2.13.18. concave_hull
Retorna um polígono possivelmente côncavo que contém todos os pontos na geometria
Sintaxe |
concave_hull(geometry, target_percent, [allow_holes=False]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: convex_hull
13.2.13.19. contains
Testa se uma geometria contém outra. Retorna TRUE se e somente se nenhum ponto da geometria2 estiver no exterior da geometria1 e pelo menos um ponto do interior da geometria2 estiver no interior da geometria1.
Sintaxe |
contains(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: overlay_contains
13.2.13.20. convex_hull
Retorna o convex hull de uma geometria. Ele representa a geometria convexa mínima que encerra todas as geometrias dentro do conjunto.
Sintaxe |
convex_hull(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: concave_hull, algoritmo Casco convexo.
13.2.13.21. crosses
Testa quando uma geometria cruza a outra. Retorna VERDADEIRO se as geometrias fornecidas possuirem algum, mas não todos, pontos internos em comum.
Sintaxe |
crosses(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: overlay_crosses
13.2.13.22. densify_by_count
Recebe uma camada com geometria do tipo polígono ou linha e gera uma nova onde as geometrias possuem uma quantidade maior de vertices que a original.
Sintaxe |
densify_by_count(geometry, vertices) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Densificar por contagem.
13.2.13.23. densify_by_distance
Pega um camada de polígono ou geometria e gera uma nova na qual as geometrias são densificadas adicionando novos vértices em arestas que têm uma distância máxima da distância de intervalo especificada.
Sintaxe |
densify_by_distance(geometry, distance) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Densificar por intervalo
13.2.13.24. difference
Retorna uma geometria que representa a parte da geometria1 que não faz interseção com geometria2.
Sintaxe |
difference(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Diferença
13.2.13.25. disjoint
Testa quando as geometrias não intersectam espacialmente. Retorna VERDADEIRO se as geometrias não compartilham algum espaço juntas.
Sintaxe |
disjoint(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: overlay_disjoint
13.2.13.26. distance
Retorna a menor distância (baseada na referencia espacial) entre duas geometrias na unidade projetada.
Sintaxe |
distance(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
13.2.13.27. distance_to_vertex
Retorna a distância ao longo da geometria para um vértice especificado.
Sintaxe |
distance_to_vertex(geometry, vertex) |
Argumentos |
|
Exemplos |
|
13.2.13.28. end_point
Retorna o último nó de uma geometria.
Sintaxe |
end_point(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Extrair vértices específicos
13.2.13.29. exif_geotag
Cria uma geometria de pontos a partir da geotag do exif de um arquivo de imagem.
Sintaxe |
exif_geotag(path) |
Argumentos |
|
Exemplos |
|
13.2.13.30. extend
Estende o início e o fim de uma geometria de linha em um valor especificado. As linhas são estendidas usando o rumo do primeiro e do último segmento da linha. Para uma multi linha, todas as partes são estendidas. As distâncias estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
extend(geometry, start_distance, end_distance) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Linhas estendidas.
13.2.13.31. exterior_ring
Retorna uma linha representando o anél exterior de uma geometria do tipo polígono. Se a geometria não for um polígono o resultado será NULL.
Sintaxe |
exterior_ring(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.32. extrude
Retorna uma versão extrudada da geometria de entrada (Multi-)Curve ou (Multi-)Linha com uma extensão especificada por x e y.
Sintaxe |
extrude(geometry, x, y) |
Argumentos |
|
Exemplos |
|
13.2.13.33. flip_coordinates
Retorna uma cópia da geometria com as coordenadas x e y trocadas. Útil para reparar geometrias que tiveram seus valores de latitude e longitude invertidos.
Sintaxe |
flip_coordinates(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Trocar as coordenadas X e Y
13.2.13.34. force_polygon_ccw
Força a geometria a respeitar a convenção onde os anéis exteriores são no sentido anti-horário, e anéis interiores são no sentido horário.
Sintaxe |
force_polygon_ccw(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: force_polygon_cw, force_rhr
13.2.13.35. force_polygon_cw
Força a geometria a respeitar a convenção onde anéis externos são no sentido horário, e anéis internos são no sentido anti-horário.
Sintaxe |
force_polygon_cw(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: force_polygon_ccw, force_rhr
13.2.13.36. force_rhr
Força uma geometria a respeitar a Regra da Mão Direita, na qual a área delimitada por um polígono está à direita do limite. Em particular, o anel externo é orientado no sentido horário e os anéis internos no sentido anti-horário. Devido à inconsistência na definição da Regra da Mão Direita em alguns contextos, recomenda-se o uso explícito force_polygon_cw function no lugar.
Sintaxe |
force_rhr(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Regra de força da mão direita., force_polygon_ccw, force_polygon_cw
13.2.13.37. geom_from_gml
Retorna uma geometria a partir de uma representação GML de geometria.
Sintaxe |
geom_from_gml(gml) |
Argumentos |
|
Exemplos |
|
13.2.13.38. geom_from_wkb
Retorna uma geometria criada a apartir de um uma representação Well-Known Binary (WKB).
Sintaxe |
geom_from_wkb(binary) |
Argumentos |
|
Exemplos |
|
13.2.13.39. geom_from_wkt
Retorna uma geometria criada a partir de uma representação Well-Known Text (WKT - Texto Bem Conhecido)
Sintaxe |
geom_from_wkt(text) |
Argumentos |
|
Exemplos |
|
13.2.13.40. geom_to_wkb
Retorna uma representação Well-known Binarye(WKB - Binário Bem Conhecido) da geometria
Sintaxe |
geom_to_wkb(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.41. geom_to_wkt
Retorna a representação Well-Know Text (WKT - Texto Bem Conhecido) da geometria sem o metadado do SRID.
Sintaxe |
geom_to_wkt(geometry, [precision=8]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.42. $geometry
Retorna a geometria da feição atual. Pode ser utilizada para processamento com outras funções. ATENÇÃO: Esta função está obsoleta. É recomendado utilizar a variável de substituição @geometry.
Sintaxe |
$geometry |
Exemplos |
|
13.2.13.43. geometry
Retorna a geometria de uma feição.
Sintaxe |
geometry(feature) |
Argumentos |
|
Exemplos |
|
13.2.13.44. geometry_n
Retorna uma geometria específica de uma coleção de geometrias, ou NULL se a geometria de entrada não for uma coleção. Também retorna uma parte de uma geometria multi partes.
Sintaxe |
geometry_n(geometry, index) |
Argumentos |
|
Exemplos |
|
13.2.13.45. geometry_type
Retorna uma valor em texto descrevendo o tipo de uma geometria (Point, Line ou Polygon)
Sintaxe |
geometry_type(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.46. hausdorff_distance
Retorna a distância de Hausdorff entre duas geometrias. Este é básicamente a medição de quão similar ou diferentes duas geometrias são, quanto menor a distancia mais similares são as geometrias.
A função pode ser executada com um argumento opcional de fração densificar. Se não for especificado, é usada uma aproximação da distância padrão de Hausdorff. Essa aproximação é exata ou próxima o suficiente para um grande subconjunto de casos úteis. Exemplos destes são:
distância computada entre Linestrings que são aproximadamente paralelas umas às outras e aproximadamente iguais em comprimento. Isso ocorre em redes lineares correspondentes.
Teste de similaridade de geometrias.
Se a aproximação padrão fornecida por este método for insuficiente, especifique o argumento opcional de densificar fração. Especificar este argumento realiza uma densificação do segmento antes de calcular a distância discreta de Hausdorff. O parâmetro define a fração para densificar cada segmento. Cada segmento será dividido em vários subsegmentos de igual comprimento, cuja fração do comprimento total é a mais próxima da fração dada. Diminuir o parâmetro fração densificar fará com que a distância retornada se aproxime da verdadeira distância de Hausdorff para as geometrias.
Sintaxe |
hausdorff_distance(geometry1, geometry2, [densify_fraction]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.47. inclination
Retorna a inclinação medida do zênite (0) ao nadir (180) no point_a ao point_b.
Sintaxe |
inclination(point_a, point_b) |
Argumentos |
|
Exemplos |
|
13.2.13.48. interior_ring_n
Retorna um anél interior específico de uma geometria polígono, ou NULL se a geometria não for polígono.
Sintaxe |
interior_ring_n(geometry, index) |
Argumentos |
|
Exemplos |
|
13.2.13.49. intersection
Retorna uma geometria que representa a porção compartilhada de duas geometrias.
Sintaxe |
intersection(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Interseção
13.2.13.50. intersects
Testa quando a geometria faz intercessão com outra. Retorna VERDADEIRO se as geometrias espacialmente intercessionam (compartilham alguma porção no espaço) e falso quando não.
Sintaxe |
intersects(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: overlay_intersects
13.2.13.51. intersects_bbox
Testa quando a geometria do retângulo envolvente sobrepõe outro retãngulo envolvente de outra geometria. Retorna VERDADEIRO se as geometrias espacialmente fazem intercessão com o retângulo envolvente definido e falso se não fizerem.
Sintaxe |
intersects_bbox(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
13.2.13.52. is_closed
Retorna VERDADEIRO se uma linha é fechada (pontos iniciais e finais são coincidentes), ou falso, se a linha não é fechada. Se a geometria não for uma linha então o resultado será NULO.
Sintaxe |
is_closed(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.53. is_empty
Retorna VERDADEIRO se a geometria está vazia (sem coordenadas), falso caso a geometria não estiver vazia e NULLO se não houver geometria. Veja também is_empty_or_null.
Sintaxe |
is_empty(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: is_empty_or_null
13.2.13.54. is_empty_or_null
Retorna VERDADEIRO se a geometria estiver NULA ou vazia (sem coordenadas) ou falso, caso contrário. Esta função é semelhantes à expressão ‘$geometry IS NULL or is_empty($geometry)’
Sintaxe |
is_empty_or_null(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.55. is_multipart
Retorna VERDADEIRO se a geometria não for Multi tipo.
Sintaxe |
is_multipart(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.56. is_valid
Retorna VERDADEIRO se a geometria for válida; se for bem formada em 2D de acordo com as regras OGC.
Sintaxe |
is_valid(geometry) |
Argumentos |
|
Exemplos |
|
Leintura adicional: make_valid, algoritmo Verificar a validade algorithm
13.2.13.57. $length
Retorna o comprimento de uma linha. Se você precisar do comprimento da borda de um polígono, use $perimeter. O comprimento calculado por esta função respeita tanto a configuração do elipsóide do projeto atual quanto as configurações da unidade de distância. Por exemplo, se um elipsóide foi definido para o projeto, o comprimento calculado será elipsoidal, e se nenhum elipsóide for definido, o comprimento calculado será planimétrico.
Sintaxe |
$length |
Exemplos |
|
13.2.13.58. length
Retorna o número de caracteres em uma string ou o tamanho de uma geometria linha.
Variante string
Retorna o número de caracteres em uma string.
Sintaxe |
length(string) |
Argumentos |
|
Exemplos |
|
Variante geometria
Calcule o comprimento de um objeto de geometria linha. Os cálculos são sempre planimétricos no Sistema de Referência Espacial (SRS) dessa geometria, e as unidades do comprimento retornado corresponderão às unidades do SRS. Isso difere dos cálculos realizados pela função $length, que realizará cálculos elipsoidais com base nas configurações de elipsóide e unidade de distância do projeto.
Sintaxe |
length(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: straight_distance_2d
13.2.13.59. length3D
Calcule o comprimento de um objeto de linha geométrica. Os cálculos são sempre planimétricos no Sistema de Referência Espacial (SRS) dessa geometria, e as unidades do comprimento retornado corresponderão às unidades do SRS. Isso difere dos cálculos realizados pela função $length, que realizará cálculos elipsoidais com base nas configurações de elipsóide e unidade de distância do projeto.
Sintaxe |
length3D(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.60. line_interpolate_angle
Retorna o ângulo paralelo à geometria a uma distância especificada ao longo de uma geometria de linhas. Os ângulos estão em graus no sentido horário do norte.
Sintaxe |
line_interpolate_angle(geometry, distance) |
Argumentos |
|
Exemplos |
|
13.2.13.61. line_interpolate_point
Retorna o ponto interpolado por uma distância específica ao longo de uma geometria de linha.
Sintaxe |
line_interpolate_point(geometry, distance) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Interpolar ponto na linha
13.2.13.62. line_locate_point
Retorna a distância ao longo de uma linha correspondente à posição mais próxima da linha a uma geometria de ponto especificada.
Sintaxe |
line_locate_point(geometry, point) |
Argumentos |
|
Exemplos |
|
13.2.13.63. line_merge
Retorna uma geometria LineString ou MultiLineString, em que quaisquer LineStrings conectadas da geometria de entrada foram mescladas em uma única cadeia de linhas. Esta função retornará NULL se passar uma geometria que não seja uma LineString/MultiLineString.
Sintaxe |
line_merge(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.64. line_substring
Retorna a parte de uma geometria de linha (ou curva) que fica entre as distâncias inicial e final especificadas (medidas a partir do início da linha). Os valores Z e M são interpolados linearmente a partir dos valores existentes.
Sintaxe |
line_substring(geometry, start_distance, end_distance) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Linha de substring.
13.2.13.65. m
Retorna o valor m (medição) de uma geometria de ponto.
Sintaxe |
m(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.66. m_max
Retorna o valor máximo de m (medida) de uma geometria.
Sintaxe |
m_max(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.67. m_min
Retorna o valor mínimo de m (medida) de uma geometria.
Sintaxe |
m_min(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.68. main_angle
Retorna o ângulo do eixo longo (no sentido horário, em graus a partir do Norte) do retângulo envolvente mínimo orientado, que cobre completamente a geometria.
Sintaxe |
main_angle(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.69. make_circle
Cria um polígono circular.
Sintaxe |
make_circle(center, radius, [segments=36]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.70. make_ellipse
Cria um polígono elíptico.
Sintaxe |
make_ellipse(center, semi_major_axis, semi_minor_axis, azimuth, [segments=36]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.71. make_line
Cria uma geometria de linha a partir de uma série de geometrias de ponto.
Lista de variantes de argumentos
Os vértices de linha são especificados como argumentos separados para a função.
Sintaxe |
make_line(point1, point2, …) |
Argumentos |
|
Exemplos |
|
Variante array
Os vértices de linha são especificados como um array de pontos.
Sintaxe |
make_line(array) |
Argumentos |
|
Exemplos |
|
13.2.13.72. make_point
Cria uma geometria de ponto a partir de x e y (e valores z e m opcionais).
Sintaxe |
make_point(x, y, [z], [m]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.73. make_point_m
Cria uma geometria de ponto a partir de uma coordenada x, y e um valor m.
Sintaxe |
make_point_m(x, y, m) |
Argumentos |
|
Exemplos |
|
13.2.13.74. make_polygon
Cria uma geometria de polígono a partir de um anel externo e uma série opcional de geometrias de anel interno.
Sintaxe |
make_polygon(outerRing, [innerRing1], [innerRing2], …) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.75. make_rectangle_3points
Cria um retângulo a partir de 3 pontos.
Sintaxe |
make_rectangle_3points(point1, point2, point3, [option=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.76. make_regular_polygon
Cria um polígono regular.
Sintaxe |
make_regular_polygon(center, radius, number_sides, [circle=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.77. make_square
Cria um quadrado a partir da diagonal.
Sintaxe |
make_square(point1, point2) |
Argumentos |
|
Exemplos |
|
13.2.13.78. make_triangle
Cria um polígono triangular.
Sintaxe |
make_triangle(point1, point2, point3) |
Argumentos |
|
Exemplos |
|
13.2.13.79. make_valid
Retorna uma geometria válida ou uma geometria vazia se a geometria não puder ser tornada valida.
Sintaxe |
make_valid(geometry, [method=structure], [keep_collapsed=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo is_valid, Corrigir geometrias
13.2.13.80. minimal_circle
Retorna o círculo mínimo de uma geometria. Ele representa o círculo mínimo que envolve todas as geometrias dentro do conjunto.
Sintaxe |
minimal_circle(geometry, [segments=36]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Círculos mínimos fechados.
13.2.13.81. nodes_to_points
Retorna uma geometria multiponto que consiste em cada nó na geometria de entrada.
Sintaxe |
nodes_to_points(geometry, [ignore_closing_nodes=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Extrair vértices
13.2.13.82. num_geometries
Retorna o número de geometrias em uma coleção de geometrias, ou o número de partes em uma geometria multi parte. A função retorna NULO se a geometria de entrada não for uma coleção.
Sintaxe |
num_geometries(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.83. num_interior_rings
Retorna o número de anéis interiores em um polígono ou coleção de geometrias, ou NULL se a geometria de entrada não for polígono ou coleção.
Sintaxe |
num_interior_rings(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.84. num_points
Retorna o número de vértices em uma geometria.
Sintaxe |
num_points(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.85. num_rings
Retorna o número de anéis (incluindo anéis externos) em um polígono ou coleção de geometrias ou NULO se a geometria de entrada não for um polígono ou coleção.
Sintaxe |
num_rings(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.86. offset_curve
Retorna uma geometria formada pelo deslocamento de uma geometria linha para o lado. As distâncias estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
offset_curve(geometry, distance, [segments=8], [join=1], [miter_limit=2.0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Linhas de desvio.
13.2.13.87. order_parts
Ordena as partes de um MultiGeometry por um determinado critério
Sintaxe |
order_parts(geometry, orderby, [ascending=true]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.88. oriented_bbox
Retorna uma geometria que representa o menor retângulo envolvente orientado de uma geometria de entrada.
Sintaxe |
oriented_bbox(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Orientação mínima da caixa limitante.
13.2.13.89. overlaps
Testa quando a geometria sobrepõe outra. Retorna VERDADEIRO se as geometrias compartilham espaço, são da mesma dimensão, mas não estão completamente contidas umas nas outras.
Sintaxe |
overlaps(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
13.2.13.90. overlay_contains
Retorna quando a feição atual contém espacialmente no mínimo uma feição de uma camada alvo, ou um lista baseada em expressão de resultados de feições na camada alvo contidas pela feição atual.
Leia mais sobre o predicado GEOS “Contains” , como descrito na função do PostGIS `ST_Contains<https://postgis.net/docs/ST_Contains.html>`_.
Sintaxe |
overlay_contains(layer, [expression], [filter], [limit], [cache=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: contains, manipulação de arrays, algoritmo Selecionar pela localização
13.2.13.91. overlay_crosses
Retorna quando a feição atual espacialmente cruza uma feição de uma camada alvo, ou uma lista de resultados baseados em expressão para as feições na camada alvo cruzadas pela feição atual.
Leia mais sobre o predicado GEOS “Crosses”, conforme descrito na função PostGIS ST_Crosses.
Sintaxe |
overlay_crosses(layer, [expression], [filter], [limit], [cache=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: crosses, manipulação de array, algoritmo Selecionar pela localização
13.2.13.92. overlay_disjoint
Retorna se a feição atual está separada espacialmente de todos as feições de uma camada de destino ou de uma lista de resultados baseados em expressão para as feições na camada de destino que estão separados da feição atual.
Leia mais sobre o predicado GEOS “Disjoint”, conforme descrito na função PostGIS ST_Disjoint.
Sintaxe |
overlay_disjoint(layer, [expression], [filter], [limit], [cache=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: disjoint, manipulação de array, algoritimo Selecionar pela localização
13.2.13.93. overlay_equals
Retorna quando a feição atual é espacialmente igual a pelo menos uma feição da camada alvo, ou uma lista baseada em expressão de resultados das feições na camada alvo que são espacialmente iguais à feição atual.
Leia mais sobre o predicado GEOS “Equals” acima, conforme descrito na função PostGIS ST_Equals function.
Sintaxe |
overlay_equals(layer, [expression], [filter], [limit], [cache=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: manipulação de array, algoritmo Selecionar pela localização
13.2.13.94. overlay_intersects
Retorna se feição atual intercepta espacialmente pelo menos uma feição de uma camada de destino ou uma matriz de resultados baseados em expressão para as feições na camada de destino interceptados pela feição atual.
Leia mais sobre o predicado GEOS “Intersects”, como descrito na função PostGIS ST_Intersects.
Sintaxe |
overlay_intersects(layer, [expression], [filter], [limit], [cache=false], [min_overlap], [min_inscribed_circle_radius], [return_details], [sort_by_intersection_size]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: intersects, manipulação de array, algoritmo Selecionar pela localização
13.2.13.95. overlay_nearest
Retorna se a feição atual tem feições de uma camada de destino dentro de uma determinada distância ou uma matriz de resultados baseados em expressões para as feições na camada de destino dentro de uma distância da feição atual.
Nota: Esta função pode ser lenta e consumir muita memória para camadas grandes.
Sintaxe |
overlay_nearest(layer, [expression], [filter], [limit=1], [max_distance], [cache=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: manipulação de array, algoritmo Unir atributos por mais próximo
13.2.13.96. overlay_touches
Retorna se a feição atual toca espacialmente pelo menos uma feição de uma camada de destino ou uma matriz de resultados baseados em expressão para as feições na camada de destino tocadas pela feição atual.
Leia mais sobre o predicado subjacente “Touches” do GEOS, conforme descrito na função ST_Touches do PostGIS.
Sintaxe |
overlay_touches(layer, [expression], [filter], [limit], [cache=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: touches, manipulação de array, algoritmo Selecionar pela localização
13.2.13.97. overlay_within
Retorna se a feição atual está espacialmente dentro de pelo menos uma feição da camada de destino ou uma matriz de resultados baseados em expressão para as feições na camada de destino que contém a feição atual.
Leia mais sobre o predicado GEOS “dentro” subjacente, conforme descrito na função ST_Within do PostGIS.
Sintaxe |
overlay_within(layer, [expression], [filter], [limit], [cache=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: within, manipulação de array, algoritmo Selecionar pela localização
13.2.13.98. $perimeter
Retorna o comprimento do perímetro da feição atual. O perímetro calculado por esta função respeita a configuração do elipsóide do projeto atual e as configurações da unidade de distância. Por exemplo, se um elipsóide foi definido para o projeto, o perímetro calculado será elipsoidal e, se nenhum elipsóide for definido, o perímetro calculado será planimétrico.
Sintaxe |
$perimeter |
Exemplos |
|
13.2.13.99. perimeter
Retorna o perímetro de um objeto de polígono geométrico. Os cálculos são sempre planimétricos no Spatial Reference System (SRS) dessa geometria, e as unidades do perímetro retornado corresponderão às unidades do SRS. Isso difere dos cálculos executados pela função $perimeter, que realizará cálculos elipsoidais com base nas configurações do elipsóide e da unidade de distância do projeto.
Sintaxe |
perimeter(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.100. point_n
Retorna um nó específico de uma geometria.
Sintaxe |
point_n(geometry, index) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Extrair vértices específicos
13.2.13.101. point_on_surface
Retorna um ponto garantido estar na superfície de uma geometria.
Sintaxe |
point_on_surface(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Ponto na Superfície
13.2.13.102. pole_of_inaccessibility
Calcula o pólo aproximado de inacessibilidade para uma superfície, que é o ponto interno mais distante do limite da superfície. Essa função usa o algoritmo ‘polylabel’ (Vladimir Agafonkin, 2016), que é uma abordagem iterativa garantida para encontrar o verdadeiro pólo de inacessibilidade dentro de uma tolerância especificada. Tolerâncias mais precisas requerem mais iterações e demoram mais para serem calculadas.
Sintaxe |
pole_of_inaccessibility(geometry, tolerance) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Pólo de inacessibilidade
13.2.13.103. project
Retorna um ponto projetado de um ponto inicial usando uma distância, um rumo (azimute) e uma elevação em radianos.
Sintaxe |
project(point, distance, azimuth, [elevation]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Projetar pontos (Cartesiano)
13.2.13.104. relate
Testa a representação do modelo de interseção 9 estendido dimensional (DE-9IM) da relação entre duas geometrias.
Variante de relação
Retorna a representação Dimensional Extended 9 Intersection Model (DE-9IM) da relação entre duas geometrias.
Sintaxe |
relate(geometry, geometry) |
Argumentos |
|
Exemplos |
|
Variante de correspondência de padrão
Testa se a relação DE-9IM entre duas geometrias corresponde a um padrão especificado.
Sintaxe |
relate(geometry, geometry, pattern) |
Argumentos |
|
Exemplos |
|
13.2.13.105. reverse
Inverte a direção de uma cadeia de linha invertendo a ordem de seus vértices.
Sintaxe |
reverse(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Direção reversa da linha
13.2.13.106. rotate
Retorna uma versão rotacionada de uma geometria. Os cálculos estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
rotate(geometry, rotation, [center=NULL], [per_part=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.107. roundness
Calcula o quão próximo a forma de um polígono está de um círculo. A função retorna VERDADEIRO quando a forma do polígono é um circulo perfeito e 0 quando for completamente plano.
Sintaxe |
roundness(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Grau de arredondamento
13.2.13.108. scale
Retorna uma versão em escala de uma geometria. Os cálculos estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
scale(geometry, x_scale, y_scale, [center]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.109. segments_to_lines
Retorna uma geometria de várias linhas que consiste em uma linha para cada segmento na geometria de entrada.
Sintaxe |
segments_to_lines(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Explodir linhas
13.2.13.111. shortest_line
Retorna a linha mais curta que une geometria1 a geometria2. A linha resultante começará em geometria1 e terminará em geometria2.
Sintaxe |
shortest_line(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
13.2.13.112. simplify
Simplifica uma geometria removendo nós usando um limite baseado em distância (ou seja, o algoritmo de Douglas Peucker). O algoritmo preserva grandes desvios nas geometrias e reduz o número de vértices em segmentos quase retos.
Sintaxe |
simplify(geometry, tolerance) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Simplificar
13.2.13.113. simplify_vw
Simplifica uma geometria removendo nós usando um limite baseado em área (ou seja, o algoritmo de Visvalingam-Whyatt). O algoritmo remove vértices que criam pequenas áreas em geometrias, por exemplo, picos estreitos ou segmentos quase retos.
Sintaxe |
simplify_vw(geometry, tolerance) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Simplificar
13.2.13.114. single_sided_buffer
Retorna uma geometria formada pelo buffer de apenas um lado de uma geometria linestring. As distâncias estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
single_sided_buffer(geometry, distance, [segments=8], [join=1], [miter_limit=2.0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Buffer de lado único
13.2.13.115. sinuosity
Retorna a sinuosidade de uma curva, que é a razão entre o comprimento da curva e a distância reta (2D) entre suas extremidades.
Sintaxe |
sinuosity(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.116. smooth
Suaviza uma geometria adicionando nós extras que arredondam os cantos na geometria. Se as geometrias de entrada contiverem valores Z ou M, eles também serão suavizados e a geometria de saída manterá a mesma dimensionalidade da geometria de entrada.
Sintaxe |
smooth(geometry, [iterations=1], [offset=0.25], [min_length=-1], [max_angle=180]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Suave
13.2.13.117. square_wave
Constructs square/rectangular waves along the boundary of a geometry.
Sintaxe |
square_wave(geometry, wavelength, amplitude, [strict=False]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.118. square_wave_randomized
Constructs randomized square/rectangular waves along the boundary of a geometry.
Sintaxe |
square_wave_randomized(geometry, min_wavelength, max_wavelength, min_amplitude, max_amplitude, [seed=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.119. start_point
Retorna o primeiro nó de uma geometria.
Sintaxe |
start_point(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Extrair vértices específicos
13.2.13.120. straight_distance_2d
Retorna a distância direta/euclidiana entre o primeiro e o último vértice de uma geometria. A geometria deve ser uma curva (sequência circular, sequência de linhas).
Sintaxe |
straight_distance_2d(geometry) |
Argumentos |
|
Exemplos |
|
Leitura adicional: length
13.2.13.121. sym_difference
Retorna uma geometria que representa as partes de duas geometrias que não se intersectam.
Sintaxe |
sym_difference(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Diferença simétrica
13.2.13.122. tapered_buffer
Cria um buffer ao longo de uma geometria de linha onde o diâmetro do buffer varia uniformemente ao longo do comprimento da linha.
Sintaxe |
tapered_buffer(geometry, start_width, end_width, [segments=8]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Buffers cônicos.
13.2.13.123. touches
Tests whether a geometry touches another. Returns TRUE if the geometries have at least one point in common, but their interiors do not intersect.
Sintaxe |
touches(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: overlay_touches
13.2.13.124. transform
Retorna a geometria transformada de um CRS de origem para um CRS de destino.
Sintaxe |
transform(geometry, source_auth_id, dest_auth_id) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Reprojetar camada
13.2.13.125. translate
Retorna uma versão traduzida de uma geometria. Os cálculos estão no Sistema de Referência Espacial desta geometria.
Sintaxe |
translate(geometry, dx, dy) |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Transladar
13.2.13.126. triangular_wave
Constructs triangular waves along the boundary of a geometry.
Sintaxe |
triangular_wave(geometry, wavelength, amplitude, [strict=False]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.127. triangular_wave_randomized
Constructs randomized triangular waves along the boundary of a geometry.
Sintaxe |
triangular_wave_randomized(geometry, min_wavelength, max_wavelength, min_amplitude, max_amplitude, [seed=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.128. union
Retorna uma geometria que representa a união do conjunto de pontos das geometrias.
Sintaxe |
union(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
13.2.13.129. wave
Constructs rounded (sine-like) waves along the boundary of a geometry.
Sintaxe |
wave(geometry, wavelength, amplitude, [strict=False]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.130. wave_randomized
Constructs randomized curved (sine-like) waves along the boundary of a geometry.
Sintaxe |
wave_randomized(geometry, min_wavelength, max_wavelength, min_amplitude, max_amplitude, [seed=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.13.131. wedge_buffer
Retorna um buffer em forma de cunha originário de uma geometria de ponto.
Sintaxe |
wedge_buffer(center, azimuth, width, outer_radius, [inner_radius=0.0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: algoritmo Crie buffers de cunha (wedge buffer).
13.2.13.132. within
Tests whether a geometry is within another. Returns TRUE if the geometry1 is completely within geometry2.
Sintaxe |
within(geometry1, geometry2) |
Argumentos |
|
Exemplos |
|
Leitura adicional: overlay_within
13.2.13.133. $x
Retorna a coordenada x da feição de ponto atual. Se a feição for multiponto, a coordenada x do primeiro ponto será retornada.
Sintaxe |
$x |
Exemplos |
|
13.2.13.134. x
Retorna a coordenada x de uma geometria de ponto ou a coordenada x do centroide para uma geometria sem ponto.
Sintaxe |
x(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.135. $x_at
Recupera uma coordenada x da geometria da feição atual.
Sintaxe |
$x_at(i) |
Argumentos |
|
Exemplos |
|
13.2.13.136. x_max
Retorna a coordenada x máxima de uma geometria. Os cálculos estão no sistema de referência espacial desta geometria.
Sintaxe |
x_max(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.137. x_min
Retorna a coordenada x mínima de uma geometria. Os cálculos estão no sistema de referência espacial desta geometria.
Sintaxe |
x_min(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.138. $y
Retorna a coordenada y da feição de ponto atual. Se a feição for multiponto, a coordenada y do primeiro ponto será retornada.
Sintaxe |
$y |
Exemplos |
|
13.2.13.139. y
Retorna a coordenada y de uma geometria de ponto ou a coordenada y do centroide para uma geometria sem ponto.
Sintaxe |
y(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.140. $y_at
Recupera uma coordenada y da geometria da feição atual.
Sintaxe |
$y_at(i) |
Argumentos |
|
Exemplos |
|
13.2.13.141. y_max
Retorna a coordenada y máxima de uma geometria. Os cálculos estão no sistema de referência espacial desta geometria.
Sintaxe |
y_max(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.142. y_min
Retorna a coordenada y mínima de uma geometria. Os cálculos estão no sistema de referência espacial desta geometria.
Sintaxe |
y_min(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.143. $z
Retorna o valor z da feição de ponto atual se for 3D. Se a feição for multiponto, o valor z do primeiro ponto será retornado.
Sintaxe |
$z |
Exemplos |
|
13.2.13.144. z
Retorna a coordenada z de uma geometria de ponto, ou NULO se a geometria não tiver valor z.
Sintaxe |
z(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.145. z_max
Retorna a coordenada z máxima de uma geometria, ou NULO se a geometria não tiver valor z.
Sintaxe |
z_max(geometry) |
Argumentos |
|
Exemplos |
|
13.2.13.146. z_min
Retorna a coordenada z mínima de uma geometria, ou NULO se a geometria não tiver valor z.
Sintaxe |
z_min(geometry) |
Argumentos |
|
Exemplos |
|
13.2.14. Funções de Layout
Este grupo contém funções para manipular as propriedades dos itens de layout de impressão.
13.2.14.1. item_variables
Retorna um mapa de variáveis de um item de layout dentro deste layout de impressão.
Sintaxe |
item_variables(id) |
Argumentos |
|
Exemplos |
|
Leitura adicional: Lista de variáveis padrão
13.2.14.2. map_credits
Retorna uma lista de strings de crédito (direitos de uso) para as camadas mostradas em um item de mapa de layout.
Sintaxe |
map_credits(id, [include_layer_names=false], [layer_name_separator=’: ‘]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Esta função precisa que Propriedades de metadados de acesso das camadas tenham sido preenchidos.
13.2.15. Camadas do mapa
Este grupo contém a lista de camadas disponíveis no projeto atual e, para cada camada, seus campos (armazenados no grupo de dados, virtual ou auxiliares bem como os provenientes de uniões). Os campos podem ser interagidos da mesma maneira mencionada em Campos e Valores, exceto que um clique-duplo adicionará o nome como uma string (entre aspas simples) à expressão em vez de como uma referência de campo, visto que eles não pertencem à camada ativa. Isto oferece uma forma conveniente de escrever expressões referenciando diferentes camadas, com quando criamos agregações, atributos ou consultas espaciais.
Também fornece algumas funções convenientes para manipular camadas.
13.2.15.1. decode_uri
Pega uma camada e decodifica o uri do provedor de dados subjacente. Depende do provedor de dados, quais dados estão disponíveis.
Sintaxe |
decode_uri(layer, [part]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.15.2. layer_property
Retorna uma propriedade de camada correspondente ou valor de metadados.
Sintaxe |
layer_property(layer, property) |
Argumentos |
|
Exemplos |
|
Leitura adicional: propriedades de camada vector, raster e mesh
13.2.16. Funções de mapeamento
Este grupo contém funções para criar ou manipular chaves e valores de estruturas de dados de mapas (também conhecidos como objetos de dicionário, pares de chave-valor ou arrays associativos). Ao contrário de estrutura de dados lista em que a ordem dos valores importa, a ordem dos pares de chave-valor no objeto de mapa não é relevante e os valores são identificados por suas chaves.
13.2.16.1. from_json
Carrega um texto formatado como JSON
Sintaxe |
from_json(string) |
Argumentos |
|
Exemplos |
|
13.2.16.2. hstore_to_map
Cria um mapa a parir de uma string formatada como hstore
Sintaxe |
hstore_to_map(string) |
Argumentos |
|
Exemplos |
|
13.2.16.3. map
Retorna um mapa contendo todas as chaves e valores passados como par de parâmetros.
Sintaxe |
map(key1, value1, key2, value2, …) |
Argumentos |
|
Exemplos |
|
13.2.16.4. map_akeys
Retorna um array contendo todas as chaves de um mapa
Sintaxe |
map_akeys(map) |
Argumentos |
|
Exemplos |
|
13.2.16.5. map_avals
Retorna todos os valores de um map como um array.
Sintaxe |
map_avals(map) |
Argumentos |
|
Exemplos |
|
13.2.16.6. map_concat
Retorna um mapa contendo todas as entradas dos mapas fornecidos. Se dois mapas contiverem a mesma chave, o valor do segundo mapa será usado.
Sintaxe |
map_concat(map1, map2, …) |
Argumentos |
|
Exemplos |
|
13.2.16.7. map_delete
Retorna um mapa com a chave fornecida e seu valor correspondente excluído.
Sintaxe |
map_delete(map, key) |
Argumentos |
|
Exemplos |
|
13.2.16.8. map_exist
Returns TRUE if the given key exists in the map.
Sintaxe |
map_exist(map, key) |
Argumentos |
|
Exemplos |
|
13.2.16.9. map_get
Retorna o valor de um mapa, dada sua chave. Retorna NULO se a chave não existir.
Sintaxe |
map_get(map, key) |
Argumentos |
|
Exemplos |
|
Dica
Você pode utilizar também o operador de índice ([]) para pegar um valor de um mapa.
13.2.16.10. map_insert
Retorna um mapa com uma chave/valor adicionado. Se a chave já existir, seu valor será substituído.
Sintaxe |
map_insert(map, key, value) |
Argumentos |
|
Exemplos |
|
13.2.16.11. map_prefix_keys
Returns a map with all keys prefixed by a given string.
Sintaxe |
map_prefix_keys(map, prefix) |
Argumentos |
|
Exemplos |
|
13.2.16.12. map_to_hstore
Mescla os elementos de um mapa em uma string formatada em hstore.
Sintaxe |
map_to_hstore(map) |
Argumentos |
|
Exemplos |
|
13.2.16.13. to_json
Cria uma string formada em JSON a partir de um mapa, matriz ou outro valor.
Sintaxe |
to_json(value) |
Argumentos |
|
Exemplos |
|
13.2.16.14. url_encode
Returns an URL encoded string from a map. Transforms all characters in their properly-encoded form producing a fully-compliant query string.
Note that the plus sign ‘+’ is not converted.
Sintaxe |
url_encode(map) |
Argumentos |
|
Exemplos |
|
13.2.17. Funções Matemáticas
Este grupo contém funções matemáticas (por exemplo, raiz quadrada, sen e cos).
13.2.17.1. abs
Retorna o valor absoluto de um número.
Sintaxe |
abs(value) |
Argumentos |
|
Exemplos |
|
13.2.17.2. acos
Retorna o cosseno inverso de um valor em radianos.
Sintaxe |
acos(value) |
Argumentos |
|
Exemplos |
|
13.2.17.3. asin
Retorna o seno inverso de um valor em radianos.
Sintaxe |
asin(value) |
Argumentos |
|
Exemplos |
|
13.2.17.4. atan
Retorna a tangente inversa de um valor em radianos.
Sintaxe |
atan(value) |
Argumentos |
|
Exemplos |
|
13.2.17.5. atan2
Retorna a tangente inversa de dy/dx usando os sinais dos dois argumentos para determinar o quadrante do resultado.
Sintaxe |
atan2(dy, dx) |
Argumentos |
|
Exemplos |
|
13.2.17.6. ceil
Arredonda um número para cima.
Sintaxe |
ceil(value) |
Argumentos |
|
Exemplos |
|
13.2.17.7. clamp
Restringe um valor de entrada a um intervalo especificado.
Sintaxe |
clamp(minimum, input, maximum) |
Argumentos |
|
Exemplos |
|
13.2.17.8. cos
Retorna o cosseno de um ângulo.
Sintaxe |
cos(angle) |
Argumentos |
|
Exemplos |
|
13.2.17.9. degrees
Converte de radianos para graus.
Sintaxe |
degrees(radians) |
Argumentos |
|
Exemplos |
|
13.2.17.10. exp
Retorna o exponencial de um valor.
Sintaxe |
exp(value) |
Argumentos |
|
Exemplos |
|
13.2.17.11. floor
Arredonda um número para baixo.
Sintaxe |
floor(value) |
Argumentos |
|
Exemplos |
|
13.2.17.12. ln
Retorna o logaritmo natural de um valor.
Sintaxe |
ln(value) |
Argumentos |
|
Exemplos |
|
13.2.17.13. log
Retorna o valor do logaritmo do valor passado e da base.
Sintaxe |
log(base, value) |
Argumentos |
|
Exemplos |
|
13.2.17.14. log10
Retorna o valor do logaritmo de base 10 da expressão passada.
Sintaxe |
log10(value) |
Argumentos |
|
Exemplos |
|
13.2.17.15. max
Retorna o maior valor em um conjunto de valores.
Sintaxe |
max(value1, value2, …) |
Argumentos |
|
Exemplos |
|
13.2.17.16. min
Retorna o menor valor em um conjunto de valores.
Sintaxe |
min(value1, value2, …) |
Argumentos |
|
Exemplos |
|
13.2.17.17. pi
Retorna o valor de pi para cálculos.
Sintaxe |
pi() |
Exemplos |
|
13.2.17.18. radians
Converte de graus para radianos.
Sintaxe |
radians(degrees) |
Argumentos |
|
Exemplos |
|
13.2.17.19. rand
Retorna um inteiro aleatório dentro do intervalo especificado pelo argumento mínimo e máximo (inclusive). Se uma seed for fornecida, o retorno será sempre o mesmo, dependendo da seed.
Sintaxe |
rand(min, max, [seed=NULL]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.17.20. randf
Retorna um float aleatório dentro do intervalo especificado pelo argumento mínimo e máximo (inclusive). Se uma seed for fornecida, o retorno será sempre o mesmo, dependendo da seed.
Sintaxe |
randf([min=0.0], [max=1.0], [seed=NULL]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.17.21. round
Arredonda um número para número de casas decimais.
Sintaxe |
round(value, [places=0]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.17.22. scale_exp
Transforma um determinado valor de um domínio de entrada para um intervalo de saída usando uma curva exponencial. Esta função pode ser usada para atenuar valores dentro ou fora do intervalo de saída especificado.
Sintaxe |
scale_exp(value, domain_min, domain_max, range_min, range_max, exponent) |
Argumentos |
|
Exemplos |
|
13.2.17.23. scale_linear
Transforma um determinado valor de um domínio de entrada em um intervalo de saída usando interpolação linear.
Sintaxe |
scale_linear(value, domain_min, domain_max, range_min, range_max) |
Argumentos |
|
Exemplos |
|
13.2.17.24. sin
Retorna o seno de um ângulo.
Sintaxe |
sin(angle) |
Argumentos |
|
Exemplos |
|
13.2.17.25. sqrt
Retorna a raiz quadrada de um valor.
Sintaxe |
sqrt(value) |
Argumentos |
|
Exemplos |
|
13.2.17.26. tan
Retorna a tangente de um ângulo.
Sintaxe |
tan(angle) |
Argumentos |
|
Exemplos |
|
13.2.18. Funções de Malhas
Este grupo contém funções que calculam ou retornam valores relacionados à mesh.
13.2.18.1. $face_area
Retorna a área da face da malha atual. A área calculada por esta função respeita tanto a configuração do elipsóide do projeto atual quanto as configurações da unidade de área. Por exemplo, se um elipsóide foi definido para o projeto, a área calculada será elipsoidal, e se nenhum elipsóide for definido, a área calculada será planimétrica.
Sintaxe |
$face_area |
Exemplos |
|
13.2.18.2. $face_index
Retorna o índice da face da malha atual.
Sintaxe |
$face_index |
Exemplos |
|
13.2.18.3. $vertex_as_point
Retorna o vértice atual como uma geometria de ponto.
Sintaxe |
$vertex_as_point |
Exemplos |
|
13.2.18.4. $vertex_index
Retorna o índice do vértice do mesh atual
Sintaxe |
$vertex_index |
Exemplos |
|
13.2.18.5. $vertex_x
Retorna a coordenada X do vértice da malha atual.
Sintaxe |
$vertex_x |
Exemplos |
|
13.2.18.6. $vertex_y
Retorna a coordenada Y do vértice da malha atual.
Sintaxe |
$vertex_y |
Exemplos |
|
13.2.18.7. $vertex_z
Retorna o valor Z do vértice do mesh atual.
Sintaxe |
$vertex_z |
Exemplos |
|
13.2.19. Operadores
Este grupo contém operadores (por exemplo, +, -, *). Observe que, para a maioria das funções matemáticas abaixo, se uma das entradas for NULL, o resultado será NULL.
13.2.19.1. %
Remainder of division. Takes the sign of the dividend.
Sintaxe |
a % b |
Argumentos |
|
Exemplos |
|
13.2.19.2. *
Multiplicação de dois valores
Sintaxe |
a * b |
Argumentos |
|
Exemplos |
|
13.2.19.3. +
Adição de dois valores. Se um dos valores for NULO, o resultado será NULO.
Sintaxe |
a + b |
Argumentos |
|
Exemplos |
|
13.2.19.4. -
Subtração de dois valores. Se um dos valores for NULO, o resultado será NULO.
Sintaxe |
a - b |
Argumentos |
|
Exemplos |
|
13.2.19.5. /
Divisão de dois valores
Sintaxe |
a / b |
Argumentos |
|
Exemplos |
|
13.2.19.6. <
Compara dois valores e avalia como 1 se o valor da esquerda for menor que o valor da direita.
Sintaxe |
a < b |
Argumentos |
|
Exemplos |
|
13.2.19.7. <=
Compara dois valores e avalia como 1 se o valor da esquerda for menor ou igual ao valor da direita.
Sintaxe |
a <= b |
Argumentos |
|
Exemplos |
|
13.2.19.8. <>
Compara dois valores e avalia com 1 se eles não forem iguais.
Sintaxe |
a <> b |
Argumentos |
|
Exemplos |
|
13.2.19.9. =
Compara dois valores e avalia com 1 se forem iguais.
Sintaxe |
a = b |
Argumentos |
|
Exemplos |
|
13.2.19.10. >
Compara dois valores e avalia como 1 se o valor esquerdo for maior que o valor direito.
Sintaxe |
a > b |
Argumentos |
|
Exemplos |
|
13.2.19.11. >=
Compara dois valores e avalia como 1 se o valor da esquerda for maior ou igual ao valor da direita.
Sintaxe |
a >= b |
Argumentos |
|
Exemplos |
|
13.2.19.12. AND
Returns TRUE when conditions a and b are true.
Sintaxe |
a AND b |
Argumentos |
|
Exemplos |
|
13.2.19.13. BETWEEN
Returns TRUE if value is within the specified range. The range is considered inclusive of the bounds. To test for exclusion NOT BETWEEN can be used.
Sintaxe |
value BETWEEN lower_bound AND higher_bound |
Argumentos |
|
Exemplos |
|
Nota
value BETWEEN lower_bound AND higher_bound is the same as “value >= lower_bound AND value <= higher_bound”.
Leitura adicional: NOT BETWEEN
13.2.19.14. ILIKE
Returns TRUE if the first parameter matches case-insensitive the supplied pattern. LIKE can be used instead of ILIKE to make the match case-sensitive. Works with numbers also.
Sintaxe |
string/número padrão ILIKE |
Argumentos |
|
Exemplos |
|
13.2.19.15. IN
Returns TRUE if value is found within a list of values.
Sintaxe |
a IN b |
Argumentos |
|
Exemplos |
|
13.2.19.16. IS
Returns TRUE if a is the same as b.
Sintaxe |
a IS b |
Argumentos |
|
Exemplos |
|
13.2.19.17. IS NOT
Returns TRUE if a is not the same as b.
Sintaxe |
a IS NOT b |
Argumentos |
|
Exemplos |
|
13.2.19.18. LIKE
Returns TRUE if the first parameter matches the supplied pattern. Works with numbers also.
Sintaxe |
texto/número padrão LIKE |
Argumentos |
|
Exemplos |
|
13.2.19.19. NOT
Nega uma condição.
Sintaxe |
NOT a |
Argumentos |
|
Exemplos |
|
13.2.19.20. NOT BETWEEN
Returns TRUE if value is not within the specified range. The range is considered inclusive of the bounds.
Sintaxe |
value NOT BETWEEN lower_bound AND higher_bound |
Argumentos |
|
Exemplos |
|
Nota
value NOT BETWEEN lower_bound AND higher_bound is the same as “value < lower_bound OR value > higher_bound”.
Leitura adicional: BETWEEN
13.2.19.21. OR
Returns TRUE when condition a or b is true.
Sintaxe |
a OR b |
Argumentos |
|
Exemplos |
|
13.2.19.22. []
Operador de índice. Retorna um elemento de uma matriz ou valor de mapa.
Sintaxe |
[index] |
Argumentos |
|
Exemplos |
|
13.2.19.23. ^
Potência de dois valores.
Sintaxe |
a ^ b |
Argumentos |
|
Exemplos |
|
13.2.19.24. ||
Une dois valores em uma string.
Se um dos valores for NULL o resultado será NULL. Veja a função CONCAT para um comportamento diferente
Sintaxe |
a || b |
Argumentos |
|
Exemplos |
|
13.2.19.25. ~
Executa uma correspondência de expressão regular em um valor de string. Os caracteres de barra invertida devem ter escape duplo (por exemplo, “\\s” para corresponder a um caractere de espaço em branco).
Sintaxe |
string ~ regex |
Argumentos |
|
Exemplos |
|
Leitura adicional: regexp_match
13.2.20. Funções de Processamento
Este grupo contém funções que operam em algoritmos de processamento.
13.2.20.1. parameter
Retorna o valor de um parâmetro de entrada do algoritmo de processamento.
Sintaxe |
parameter(name) |
Argumentos |
|
Exemplos |
|
13.2.21. Funções de Rasters
Este grupo contém funções para operar na camada raster.
13.2.21.1. raster_statistic
Retorna as estatísticas de uma camada raster.
Sintaxe |
raster_statistic(layer, band, property) |
Argumentos |
|
Exemplos |
|
13.2.21.2. raster_value
Retorna o valor raster encontrado no ponto fornecido.
Sintaxe |
raster_value(layer, band, point) |
Argumentos |
|
Exemplos |
|
13.2.22. Funções de Registro e Atributos
Este grupo contém funções que operam na identificação da registros.
13.2.22.1. attribute
Retorna um atributo de uma feição.
** Variante 1**
Retorna o valor de um atributo da feição atual.
Sintaxe |
attribute(attribute_name) |
Argumentos |
|
Exemplos |
|
Variante 2
Permite que a feição de destino e o nome do atributo sejam especificados.
Sintaxe |
attribute(feature, attribute_name) |
Argumentos |
|
Exemplos |
|
13.2.22.2. attributes
Retorna um mapa contendo todos os atributos de uma feição, onde os nomes de campo são as chaves do mapa
** Variante 1**
Retorna um mapa de todos os atributos da feição atual.
Sintaxe |
attributes() |
Exemplos |
|
Variante 2
Permite que a feição de destino seja especificada.
Sintaxe |
attributes(feature) |
Argumentos |
|
Exemplos |
|
Leitura adicional: Funções de mapeamento
13.2.22.3. $currentfeature
Returns the current feature being evaluated. This can be used with the ‘attribute’ function to evaluate attribute values from the current feature. WARNING: This function is deprecated. It is recommended to use the replacement @feature variable instead.
Sintaxe |
$currentfeature |
Exemplos |
|
13.2.22.4. display_expression
Retorna a expressão de exibição para uma determinada feição em uma camada. A expressão é avaliada por padrão. Pode ser usado com zero, um ou mais argumentos, veja abaixo para detalhes.
Sem parâmetros
Se for chamada sem nenhum parâmetro, a função irá avaliar a expressão de exibição da feição atual na camada atual.
Sintaxe |
display_expression() |
Exemplos |
|
Um parâmetro ‘feição’
Se chamada apenas com um parâmetro ‘feição’, a função avaliará a feição especificada da camada atual.
Sintaxe |
display_expression(feature) |
Argumentos |
|
Exemplos |
|
Parâmetros de camada e feição
Se a função for chamada com uma camada e uma feição, ela avaliará a feição especificada da camada especificada.
Sintaxe |
display_expression(layer, feature, [evaluate=true]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.22.5. get_feature
Retorna a primeia feição de uma camada correspondente a um determinado valor de atributo.
Single value variant
Along with the layer ID, a single column and value are specified.
Sintaxe |
get_feature(layer, attribute, value) |
Argumentos |
|
Exemplos |
|
Variação por mapeamento
Along with the layer ID, a map containing the columns (key) and their respective value to be used.
Sintaxe |
get_feature(layer, attribute) |
Argumentos |
|
Exemplos |
|
13.2.22.6. get_feature_by_id
Retorna a feição com um id em uma camada.
Sintaxe |
get_feature_by_id(layer, feature_id) |
Argumentos |
|
Exemplos |
|
Leitura adicional: $id
13.2.22.7. $id
Returns the feature id of the current row. WARNING: This function is deprecated. It is recommended to use the replacement @id variable instead.
Sintaxe |
$id |
Exemplos |
|
13.2.22.8. is_selected
Returns TRUE if a feature is selected. Can be used with zero, one or two arguments, see below for details.
Sem parâmetros
If called with no parameters, the function will return TRUE if the current feature in the current layer is selected.
Sintaxe |
is_selected() |
Exemplos |
|
Um parâmetro ‘feição’
If called with a ‘feature’ parameter only, the function returns TRUE if the specified feature from the current layer is selected.
Sintaxe |
is_selected(feature) |
Argumentos |
|
Exemplos |
|
Dois parâmetros
If the function is called with both a layer and a feature, it will return TRUE if the specified feature from the specified layer is selected.
Sintaxe |
is_selected(layer, feature) |
Argumentos |
|
Exemplos |
|
13.2.22.9. maptip
Retorna o maptip de uma feição de uma camada. A expressão é avaliada por padrão. Pode ser usada com zero, um ou mais argumentos, veja abaixo para mais detalhes.
Sem parâmetros
Se chamada sem parâmetros, a função avaliará a dica de mapa da feição atual na camada atual.
Sintaxe |
maptip() |
Exemplos |
|
Um parâmetro ‘feição’
Se chamada apenas com um parâmetro ‘feição’, a função avaliará a feição especificada da camada atual.
Sintaxe |
maptip(feature) |
Argumentos |
|
Exemplos |
|
Parâmetros de camada e feição
Se a função for chamada com uma camada e uma feição, ela avaliará a feição especificada da camada especificada.
Sintaxe |
maptip(layer, feature, [evaluate=true]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.22.10. num_selected
Retorna o número de feições selecionadas em uma determinada camada. Por padrão, funciona na camada na qual a expressão é avaliada.
Sintaxe |
num_selected([layer=current layer]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.22.11. represent_attributes
Returns a map with the attribute names as keys and the configured representation values as values. The representation value for the attributes depends on the configured widget type for each attribute. Can be used with zero, one or more arguments, see below for details.
Sem parâmetros
If called with no parameters, the function will return the representation of the attributes of the current feature in the current layer.
Sintaxe |
represent_attributes() |
Exemplos |
|
Um parâmetro ‘feição’
If called with a ‘feature’ parameter only, the function will return the representation of the attributes of the specified feature from the current layer.
Sintaxe |
represent_attributes(feature) |
Argumentos |
|
Exemplos |
|
Parâmetros de camada e feição
If called with a ‘layer’ and a ‘feature’ parameter, the function will return the representation of the attributes of the specified feature from the specified layer.
Sintaxe |
represent_attributes(layer, feature) |
Argumentos |
|
Exemplos |
|
Leitura adicional: represent_value
13.2.22.12. represent_value
Retorna o valor de representação configurado para um valor de campo. Depende do tipo de widget configurado. Frequentemente, isso é útil para widgets de ‘Mapa de valores’.
Sintaxe |
represent_value(value, [fieldName]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: widget types, represent_attributes
13.2.22.13. sqlite_fetch_and_increment
Gerencia valores auto incrementais em bancos de dados sqlite
Valores SQLIte padrões podem apenas serem aplicados durante a inserção e não pré-buscados.
Isso torna impossível adquirir uma chave primária incrementada via AUTO_INCREMENT antes de criar a linha no banco de dados. Observação: com postgres, isso funciona por meio da opção avaliar valores padrão.
Ao adicionar novas feições com relações, é muito bom poder adicionar filhos para um pai, enquanto o formulário dos pais ainda está aberto e equanto a feição pai não estiver commitada.
Para contornar essa limitação, esta função pode ser usada para gerenciar valores de sequência em uma tabela separada em formatos baseados em sqlite como gpkg.
A tabela de sequência será filtrada para um id de sequência (filter_attribute e filter_value) e o valor atual do id_field será incrementado em 1 e o valor incrementado retornado.
Se colunas adicionais exigirem a especificação de valores, o mapa default_values poderá ser usado para essa finalidade.
Observação
Esta função modifica a tabela sqlite de destino. Destina-se ao uso com configurações de valor padrão para atributos.
Quando o parâmetro do banco de dados for uma camada e a camada estiver no modo de transação, o valor será recuperado apenas uma vez durante o tempo de vida de uma transação e armazenado em cache e incrementado. Isso torna inseguro trabalhar no mesmo banco de dados de vários processos em paralelo.
Sintaxe |
sqlite_fetch_and_increment(database, table, id_field, filter_attribute, filter_value, [default_values]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
Leitura adicional: Data Sources Properties, Criando uma ou muitas para muitas relações
13.2.22.14. uuid
Gera um Idenrificador Universal Único (UUID) para cada linha utilizando o método Qt QUuid::createUuid.
Sintaxe |
uuid([format=’WithBraces’]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.23. Relações
Este grupo contém a liste de relações disponíveis no projeto atual, junto com suas descrições. Ele permite acesso rápido ao ID da relação para a escrita de uma expressção (como por exemplo a função relation_aggregate) ou customização de um formulário.
13.2.24. Funções de String
Este grupo contém funções que operam em textos (por exemplo, quer substituir, converter para maiúsculas).
13.2.24.1. ascii
Retorna o código unicode associado ao primeiro caractere de uma string.
Sintaxe |
ascii(string) |
Argumentos |
|
Exemplos |
|
13.2.24.2. char
Retorna um caractere associal a um código unicode.
Sintaxe |
char(code) |
Argumentos |
|
Exemplos |
|
13.2.24.3. concat
Concatena várias strings em uma. Valores nulos são convertidos em strings vazias. Outros valores (como números) são convertidos para string).
Sintaxe |
concat(string1, string2, …) |
Argumentos |
|
Exemplos |
|
Sobre a concatenação de campos
Você pode também concatenar strings ou valores de campos utilizando também os operadores ||
ou +
, com algumas características:
O operador
+
também significa somar expressão; portanto, se você tiver um operando inteiro (valor numérico ou de campo), isso pode ser propenso a erros e é melhor usar os outros:'My feature id is: ' + "gid" => triggers an error as gid returns an integer
Quando qualquer um dos argumentos for um valor NULL,
||
ou+
retornará um valor NULL. Para retornar os outros argumentos independentemente do valor NULL, convém usar a funçãoconcat
:'My feature id is: ' + NULL ==> NULL 'My feature id is: ' || NULL => NULL concat('My feature id is: ', NULL) => 'My feature id is: '
13.2.24.4. format
Formate uma string usando os argumentos fornecidos.
Sintaxe |
format(string, arg1, arg2, …) |
Argumentos |
|
Exemplos |
|
13.2.24.5. format_date
Fomata o tipo date ou string em uma string formadata customizada. Usa o formato de string do Qt date/time . Veja QDateTime::toString.
Sintaxe |
format_date(datetime, format, [language]) [] indica argumentos opcionais |
||||||||||||||||||||||||||||||||||||||||||||||||
Argumentos |
|
||||||||||||||||||||||||||||||||||||||||||||||||
Exemplos |
|
13.2.24.6. format_number
Retonra um número formatado com o separador de milhar de acordo com a localização, Por padrão a localização atual do QGIS é utilizada. Também permite truncar as casas decimais para a quantidade de casas fornecidas.
Sintaxe |
format_number(number, [places=0], [language], [omit_group_separators=false], [trim_trailing_zeroes=false]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.24.7. left
Retorna uma parte de uma string que contém os enésimos caractere mais a esquerda de uma string.
Sintaxe |
left(string, length) |
Argumentos |
|
Exemplos |
|
13.2.24.8. length
Retorna o número de caracteres em uma string ou o tamanho de uma geometria linha.
Variante string
Retorna o número de caracteres em uma string.
Sintaxe |
length(string) |
Argumentos |
|
Exemplos |
|
Variante geometria
Calcule o comprimento de um objeto de geometria linha. Os cálculos são sempre planimétricos no Sistema de Referência Espacial (SRS) dessa geometria, e as unidades do comprimento retornado corresponderão às unidades do SRS. Isso difere dos cálculos realizados pela função $length, que realizará cálculos elipsoidais com base nas configurações de elipsóide e unidade de distância do projeto.
Sintaxe |
length(geometry) |
Argumentos |
|
Exemplos |
|
13.2.24.9. lower
Converte uma cadeia em letras minúsculas.
Sintaxe |
lower(string) |
Argumentos |
|
Exemplos |
|
13.2.24.10. lpad
Retorna uma cadeia preenchida à esquerda até a largura especificada, usando um caractere de preenchimento. Se a largura de destino for menor que o comprimento da cadeia, a cadeia, será truncada.
Sintaxe |
lpad(string, width, fill) |
Argumentos |
|
Exemplos |
|
13.2.24.11. regexp_match
Retorna a primeira posição que corresponda com a expressão regular em uma string unicode, ou 0 se a sub string não for encontrada.
Sintaxe |
regexp_match(input_string, regex) |
Argumentos |
|
Exemplos |
|
13.2.24.12. regexp_replace
Retorna uma string com Retorna uma string com a expressão regular fornecida substituída.
Sintaxe |
regexp_replace(input_string, regex, replacement) |
Argumentos |
|
Exemplos |
|
13.2.24.13. regexp_substr
Retorna a parte de uma cadeia que corresponde a uma expressão regular fornecida.
Sintaxe |
regexp_substr(input_string, regex) |
Argumentos |
|
Exemplos |
|
13.2.24.14. replace
Retorna uma string com a string, array ou mapa de strings fornecido substituído.
Variante String & array
Retorna uma string com a string ou matriz de strings fornecida substituída por uma string ou uma matriz de strings.
Sintaxe |
replace(string, before, after) |
Argumentos |
|
Exemplos |
|
Variação por mapeamento
Retorna a string com as chaves de mapas substituidas pelos valores pareados. As chaves mais longas são avaliadas primeiro.
Sintaxe |
replace(string, map) |
Argumentos |
|
Exemplos |
|
13.2.24.15. right
Retorna uma sub string que contém os caracteres n mais à direita da string.
Sintaxe |
right(string, length) |
Argumentos |
|
Exemplos |
|
13.2.24.16. rpad
Retorna uma string preenchida à direita na largura especificada, usando um caractere de preenchimento. Se a largura de destino for menor que o comprimento da string, a string será truncada.
Sintaxe |
rpad(string, width, fill) |
Argumentos |
|
Exemplos |
|
13.2.24.17. strpos
Retorna a primeira posição encontrada de uma substring em outra string, ou 0 se a substring não for encontrada.
Sintaxe |
strpos(haystack, needle) |
Argumentos |
|
Exemplos |
|
13.2.24.18. substr
Retorna uma parte de uma string.
Sintaxe |
substr(string, start, [length]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.24.19. title
Converte todas as palavras de uma string de título (todas as palavras com a primeira letra maiúscula).
Sintaxe |
title(string) |
Argumentos |
|
Exemplos |
|
13.2.24.20. to_string
Converte um número em string.
Sintaxe |
to_string(number) |
Argumentos |
|
Exemplos |
|
13.2.24.21. trim
Remove todos os espaços em branco do início e do final (espaços vazios, tabulações, etc) de uma string.
Sintaxe |
trim(string) |
Argumentos |
|
Exemplos |
|
13.2.24.22. upper
Converte uma string em letras maiúsculas.
Sintaxe |
upper(string) |
Argumentos |
|
Exemplos |
|
13.2.24.23. wordwrap
Retorna uma string agrupada em um número máximo/mínimo de caracteres.
Sintaxe |
wordwrap(string, wrap_length, [delimiter_string]) [] indica argumentos opcionais |
Argumentos |
|
Exemplos |
|
13.2.25. Expressões do usuário
Este grupo contém as expressões salvas como expressões do usuário.
13.2.26. Variáveis
Este grupo contém variáveis dinâmicas relacionadas a aplicação, ao arquivo do projeto e outras configurações. A disponibilidade das variáveis depende do contexto:
na caixa de diálogo de propriedades da camada
do layout de impressão
Para usar essas variáveis em uma expressão, elas devem ser precedidas pelo caractere @
(por exemplo, @row_number
).
Variável |
Descrição |
---|---|
algorithm_id |
O ID exclusivo de um algoritmo |
animation_end_time |
Fim do intervalo de tempo geral da animação (como um valor de data e hora) |
animation_interval |
Duração do intervalo temporal geral da animação (como um valor de intervalo) |
animation_start_time |
Início do intervalo temporal geral da animação (como um valor de data e hora) |
atlas_feature |
A feição atual do atlas (como objeto de feição) |
atlas_featureid |
O ID da feição do atlas atual |
atlas_featurenumber |
O número atual da feição do atlas no layout |
atlas_filename |
O nome do arquivo do atlas atual |
atlas_geometry |
A geometria da feição do atlas atual |
atlas_layerid |
O ID da camada de cobertura do atlas atual |
atlas_layername |
O nome atual da camada de cobertura do atlas |
atlas_pagename |
O nome da página atual do atlas |
atlas_totalfeatures |
O número total de feições no atlas |
canvas_cursor_point |
A última posição do cursor na tela nas coordenadas geográficas do projeto |
cluster_color |
A cor dos símbolos em um cluster ou NULL se os símbolos tiverem cores misturadas |
cluster_size |
O número de símbolos contidos em um cluster |
current_feature |
A feição atualmente sendo editada no formulário de atributo ou na linha da tabela |
current_geometry |
A geometria da feição atualmente sendo editada no formulário ou na linha da tabela |
current_parent_feature |
representa a feição que está sendo editada no formulário pai. Apenas utilizável em um formulário incorporado pelo contexto. |
current_parent_geometry |
representa a geometria da feição que está sendo editada no formulário pai. Apenas utilizável em formulário incorporado pelo contexto. |
form_mode |
Para que o formulário é usado, como AddFeatureMode, SingleEditMode, MultiEditMode, SearchMode, AggregateSearchMode ou IdentifyMode como string. |
feature |
The current feature being evaluated. This can be used with the ‘attribute’ function to evaluate attribute values from the current feature. |
frame_duration |
Duração temporal de cada quadro de animação (como um valor de intervalo) |
frame_number |
Número do quadro atual durante a reprodução da animação |
frame_rate |
Número de quadros por segundo durante a reprodução da animação |
fullextent_maxx |
Valor máximo de x da extensão completa da tela (incluindo todas as camadas) |
fullextent_maxy |
Valor y máximo da extensão total da tela (incluindo todas as camadas) |
fullextent_minx |
Valor mínimo de x da extensão completa da tela (incluindo todas as camadas) |
fullextent_miny |
Valor y mínimo da extensão completa da tela (incluindo todas as camadas) |
geometry |
The geometry of the current feature being evaluated |
geometry_part_count |
O número de partes na geometria da feição renderizada |
geometry_part_num |
O número da parte da geometria atual para a feiição que está sendo renderizada |
geometry_point_count |
O número de pontos na parte da geometria renderizada |
geometry_point_num |
O número do ponto atual na parte da geometria renderizada |
geometry_ring_num |
Número do anel da geometria atual da feição sendo renderizado (para feições do tipo polígonos apenas). O anel exterior tem um valor de 0; |
grid_axis |
O eixo de anotação da grade atual (por exemplo, ‘x’ para longitude, ‘y’ para latitude) |
grid_number |
O valor atual da anotação da grade |
id |
The ID of the current feature being evaluated |
item_id |
O ID do usuário do item de layout (não necessariamente exclusivo) |
item_uuid |
O ID exclusivo do item de layout |
layer |
A camada atual |
layer_crs |
Autoridade do Sistema de Referência de Coordenadas da camada atual |
layer_id |
O ID da camada atual |
layer_ids |
Uma lista com os ID de todas as camadas de mapas no projeto atual |
layer_name |
O nome da camada atual |
layers |
Lista com todas as camadas no projeto atual |
layout_dpi |
A resolução da composição (DPI) |
layout_name |
O nome do layout |
layout_numpages |
O número de páginas no layout |
layout_page |
O número da página do item atual no layout |
layout_pageheight |
Altura da página atual no layout (em mm para tamanhos de papéis padrão, ou qualquer outra unidade sendo usada pelo tamanho de papel customizado) |
layout_pageoffsets |
Array de coordenadas do eixo Y de cada página. Permite posicionar itens dinamicamente nas páginas em um contexto em que os tamanhos das páginas podem mudar |
layout_pagewidth |
Largura da página atual no layout (em mm para tamanhos de papel padrão, ou outra unidade utilizada em tamanhos de papel customizado) |
legend_column_count |
O número de colunas na legenda |
legend_filter_by_map |
Indica se o conteúdo da legenda é filtrado pelo mapa |
legend_filter_out_atlas |
Indica se o atlas é filtrado para fora da legenda |
legend_split_layers |
Indica se as camadas podem ser divididas na legenda |
legend_title |
O título da lenda |
legend_wrap_string |
O(s) caractere(s) usados para quebrar o texto da legenda |
map_crs |
O Sistema de referência de coordenadas do mapa atual |
map_crs_acronym |
A sigla do Sistema de referência de coordenadas do mapa atual |
map_crs_definition |
A definição completa do Sistema de referência de coordenadas do mapa atual |
map_crs_description |
O nome do Sistema de referência de coordenadas do mapa atual |
map_crs_ellipsoid |
A sigla do elipsóide do Sistema de referência de coordenadas do mapa atual |
map_crs_proj4 |
A definição Proj4 do Sistema de referência de coordenadas do mapa atual |
map_crs_projection |
O nome descritivo do método de projeção usado pelo sistema de referência de coordenadas do mapa (por exemplo, ‘Albers Área Igual’) |
map_crs_wkt |
A definição WKT do Sistema de referência de coordenadas do mapa atual |
map_end_time |
O fim do intervalo de tempo temporal do mapa (como um valor de data e hora) |
map_extent |
A geometria que representa a extensão atual do mapa |
map_extent_center |
A feição de ponto no centro do mapa |
map_extent_height |
A altura atual do mapa |
map_extent_width |
A largura atual do mapa |
map_id |
O ID do destino atual do mapa. Será ‘canvas’ para renderizações de tela, e o ID do item para renderizações de mapa de layout |
map_interval |
A duração do intervalo de tempo temporal do mapa (como um valor de intervalo) |
map_layer_ids |
A lista de IDs da camada do mapa visíveis no mapa |
map_layers |
A lista de camadas do mapa visíveis no mapa |
map_rotation |
A rotação atual do mapa |
map_scale |
A escala atual do mapa |
map_start_time |
O início do intervalo de tempo temporal do mapa (como um valor de data e hora) |
map_units |
As unidades de medidas do mapa |
model_path |
Caminho completo (incluindo o nome do arquivo) do modelo atual (ou caminho do projeto se o modelo estiver incorporado em um projeto). |
model_folder |
Pasta que contém o modelo atual (ou pasta do projeto se o modelo estiver incorporado em um projeto). |
model_name |
Nome do modelo atual |
model_group |
Grupo para o modelo atual |
notification_message |
Conteúdo da mensagem de notificação enviada pelo provedor (disponível apenas para ações acionadas por notificações do provedor). |
parent |
Refere-se a feição atual na camada pai, fornecendo acesso aos seus atributos e geometria ao filtrar uma função aggregate |
project_abstract |
O resumo do projeto, extraído dos metadados do projeto |
project_area_units |
A unidade de área do projeto atual, usada no cálculo de áreas de geometrias |
project_author |
O autor do projeto, extraído dos metadados do projeto |
project_basename |
O nome base do nome do arquivo do projeto atual (sem caminho e extensão) |
project_creation_date |
A data de criação do projeto, extraída dos metadados do projeto |
project_crs |
O Sistema de referência de coordenadas do projeto |
project_crs_arconym |
A sigla do Sistema de referência de coordenadas do projeto |
project_crs_definition |
A definição completa do Sistema de referência de coordenadas do projeto |
project_crs_description |
A descrição do Sistema de referência de coordenadas do projeto |
project_crs_ellipsoid |
O elipsóide do Sistema de referência de coordenadas do projeto |
project_crs_proj4 |
A representação do Proj4 do Sistema de referência de coordenadas do projeto |
project_crs_wkt |
A representação WKT (well known text) do Sistema de referência de coordenadas do projeto |
project_distance_units |
A unidade de distância para o projeto atual, usada no cálculo de comprimentos de geometrias e distâncias |
project_ellipsoid |
O nome do elipsóide do projeto atual, usado no cálculo de áreas geodésicas ou comprimentos de geometrias |
project_filename |
O nome do arquivo do projeto atual |
project_folder |
A pasta do projeto atual |
project_home |
O caminho inicial do projeto atual |
project_identifier |
O identificador do projeto, obtido dos metadados do projeto |
project_keywords |
As palavras-chave do projeto, extraídas dos metadados do projeto |
project_last_saved |
Data/hora em que o projeto foi salvo pela última vez. |
project_path |
O caminho completo (incluindo o nome do arquivo) do projeto atual |
project_title |
O título do projeto atual |
project_units |
As unidades do SRC do projeto |
qgis_locale |
O idioma atual do QGIS |
qgis_os_name |
O nome atual do sistema operacional, por exemplo, ‘windows’, ‘linux’ ou ‘osx’ |
qgis_platform |
A plataforma QGIS, por exemplo, ‘desktop’ ou ‘servidor’ |
qgis_release_name |
O nome da versão atual do QGIS |
qgis_short_version |
A string curta da versão atual do QGIS |
qgis_version |
A string de versão atual do QGIS |
qgis_version_no |
O número da versão atual do QGIS |
row_number |
Armazena o número da linha atual |
snapping_results |
Dá acesso aos resultados de encaixe ao digitalizar uma feição (disponível apenas no adicionar feição) |
scale_value |
O valor atual da distância da barra de escala |
selected_file_path |
Caminho de arquivo selecionado do seletor de widget de arquivo ao carregar um arquivo com um sistema de armazenamento externo |
symbol_angle |
O ângulo do símbolo usado para renderizar a feição (válido apenas para símbolos de marcador) |
symbol_color |
A cor do símbolo usado para renderizar a feição |
symbol_count |
O número de feições representadas pelo símbolo (na legenda do layout) |
symbol_id |
O ID interno do símbolo (na legenda do layout) |
symbol_label |
O rótulo do símbolo (um rótulo definido pelo usuário ou o rótulo gerado automaticamente por padrão - na legenda do layout) |
symbol_layer_count |
Número total de camadas de símbolo no símbolo |
symbol_layer_index |
Current symbol layer index |
symbol_marker_column |
Número da coluna para marcador (válido apenas para preenchimentos de padrão de ponto). |
symbol_marker_row |
Número da linha do marcador (válido apenas para preenchimentos de padrão de ponto). |
user_account_name |
O nome da conta do sistema operacional do usuário atual |
user_full_name |
O nome do usuário do sistema operacional do usuário atual |
value |
O valor atual |
vector_tile_zoom |
Nível exato de zoom do bloco vetorial do mapa que está sendo renderizado (derivado da escala do mapa atual). Normalmente no intervalo [0, 20]. Ao contrário de @zoom_nível, esta variável é um valor de ponto flutuante que pode ser usado para interpolar valores entre dois níveis de zoom inteiros. |
with_variable |
Permite definir uma variável para uso em uma expressão e evitar recalcular o mesmo valor repetidamente |
zoom_level |
Nivel de zoom do tile do vetor no mapa que está sendo renderizado (derivado da escala do mapa atual). Normalmente um intervalo [0,20]. |
Alguns exemplos:
Retorna a coordenada X de um centro de item de mapa no layout:
x( map_get( item_variables( 'map1'), 'map_extent_center' ) )
Retorne, para cada feição na camada atual, o número de feições de aeroporto sobrepostas:
aggregate( layer:='airport', aggregate:='count', expression:="code", filter:=intersects( $geometry, geometry( @parent ) ) )
Obtém o object_id do primeiro ponto ajustado de uma linha:
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' ) )
13.2.27. Funções Recentes
Este grupo contém funções usadas recentemente. Dependendo do contexto de seu uso (seleção de feição, calculadora de campo, genérico), as expressões aplicadas recentemente são adicionadas à lista correspondente (até dez expressões), ordenadas de mais para menos recente. Isso facilita a rápida recuperação e reaplicação de expressões usadas anteriormente.