Borda de estilo para corresponder ao preenchimento do QGIS?

11

No passado, eu apenas correspondi manualmente a cor da borda à cor do preenchimento, mas isso pode levar tempo.

Gostaria de saber, existe alguma maneira de o programa corresponder automaticamente a cor da borda à do preenchimento?

A cor de preenchimento está sendo atribuída através da guia de estilo nas propriedades da camada.

Usando o QGIS 2.8.6

Martim-pescador
fonte
2
Parece-me que remover a borda terá o mesmo efeito visual que combinar a cor da borda com o preenchimento (se a borda for fina, é claro). Portanto, convém remover as bordas (opção "Sem caneta" em "estilo de borda").
ArMoraer
3
Obrigado pela sugestão, ArMoraer. Eu tentei isso no passado, mas descobri que isso geralmente expõe pequenas lacunas entre as formas, o que não é esteticamente agradável.
28816 Kingfisher

Respostas:

21

Não sei como aplicá-lo aos polígonos existentes, mas você pode fazê-lo funcionar para os futuros que você criar.

Em Propriedades do projeto> Estilos padrão> Gerenciador de estilos, você pode criar seu próprio estilo de símbolo padrão para "Preenchimento":

Gerente de estilo QGIS

Edite a expressão da cor da borda e defina-a como @symbol_color: Editando a expressão Border

Definindo a expressão de borda

Por fim, defina seu novo estilo de preenchimento como o padrão: Definindo novo preenchimento como padrão

Isso fará com que a borda sempre corresponda à cor definida do símbolo. Porém, isso não será necessariamente refletido nas propriedades do polígono. Portanto, ainda pode parecer que você tem uma borda de cor diferente definida nas propriedades, mas deve sempre corresponder à cor do símbolo definido do objeto no mapa.

Gostaria de ter uma idéia melhor para tornar isso retroativo, mas talvez eu ou outra pessoa venha com uma boa ideia sobre isso mais tarde.

JohnR
fonte
nice one - apenas tentei isso com uma camada de polígono anúncio existente e funcionou - não precisa configurar um estilo padrão ou (qgis 2.14.1)
Steven Kay
Que bom ouvir, Steven! Defini-lo como um estilo padrão seria mais para ajudar a não precisar defini-lo novamente em nenhum polígono novo no projeto, mas, como você disse, não precisa necessariamente fazer isso.
JohnR
2
Eu instalei o 2.8 e consertei um pouco. Parece que você precisará atualizar para a versão 2.14 se a função @color_symbol for super importante, simplesmente não há um equivalente embutido na 2.8.
precisa saber é
3
Estilisticamente, gosto de uma borda de polígono que é um tom um pouco mais escuro da cor de preenchimento. Consegui isso definindo a expressão da cor da borda como: mais escura (@symbol_color, 200).
CSK
1
@RutgerH Consegui fazer isso funcionar na 2.18.0, mas houve pequenas alterações de estilo desde a minha resposta inicial. Se você seguir as instruções e procurar "Estrutura de tópicos" em vez de "Borda", deverá chegar à mesma conclusão.
JohnR
2

Outra maneira de fazer com que a cor da borda corresponda à cor de preenchimento é adicionar uma nova camada ao seu símbolo com o tipo de camada de símbolo = Estrutura de tópicos: Linha simples.

Quando a cor é aplicada no nível do símbolo, todas as camadas obtêm a mesma cor (a menos que uma camada esteja bloqueada) para que o preenchimento e a borda adicionada sejam os mesmos ...

insira a descrição da imagem aqui

JR
fonte
0

Para saber como torná-lo retroativo - você pode salvar o estilo como um arquivo .qml, use a expressão regular find e replace para definir as bordas da mesma cor que os polígonos (no Notepad ++ ou similar):

Encontrar:

<prop k="color" v="([^\r\n"]+)"/>(.+?)<prop k="outline_color" v="([^\r\n"]+)"/>

Substituir:

<prop k="color" v="\1"/>\2<prop k="outline_color" v="\1"/>

salve e recarregue o estilo no qgis :)

tzirtzi
fonte