É possível acessar o QGIS Map Canvas como um valor de variável ou expressão a ser usado na calculadora de campo ou no mecanismo de identificação?
(ou seja, para que você possa criar uma expressão que selecione / interroga recursos visíveis / presentes em uma visualização específica da tela, de maneira semelhante ao compositor de impressão "filtre a legenda pelo conteúdo do mapa")
(QGIS 2.18.1 [osgeo4w], win7)
EDIT:
Caso de uso potencial (fictício) 1 - Existem 50 polígonos em uma camada, atualmente existem 20 polígonos visíveis na visualização atual da tela do mapa. Gostaria de estilizar o azul do polígono se houver <= 25 polígonos visíveis ou denomine-os de verde se houver> = 25 polígonos visíveis.
Caso de uso potencial (fictício) 2 - Existem 50 polígonos em uma camada, atualmente existem 10 polígonos visíveis, 5 com um valor de atributo 'House' no campo / coluna "Tipo de construção" e 5 com o valor de 'Garagem' no campo / coluna "Tipo de construção", visível na visualização atual da tela do mapa. Retorno: o valor igual ao número de polígonos que são garagens ... answer = 5.
fonte
is_selected
função para saber se um recurso está selecionado. Pode valer a pena ter mais detalhes sobre o que você gostaria de fazer.Respostas:
Uma ferramenta para ir além das variáveis atualmente disponíveis seria uma expressão customizada em python.
Que eu saiba, essa é a única ferramenta disponível no momento para acessar a tela do mapa da maneira que você descreve e usa essas informações em expressões.
Para resolver seu caso de uso fictício 1, você pode fazer algo assim:
Em seguida, você pode configurar estilos baseados em regras usando filtros como:
A API de tela cheia pode ser encontrada aqui .
fonte