[QGIS-pt] Intersection bad geometries

Milú Olá!! Bom “ver-te” por aqui :wink:

Queria só perguntar ao pessoal se no qgis podemos usar com spatialite a st_makevalid e a série de funções st_* que o spatialite tem:
https://www.gaia-gis.it/fossil/libspatialite/wiki?name=liblwgeom-4.0

É mais fácil para quem não lida com postgis usar spatialite. (pelo menos não precisa de instalar pgsql+postgis)

Eu penso que sim, até da mesma forma que com postgis, mas não tenho a certeza… podem dar umas luzes?

Abraços,

Duarte

Olá Duarte,

No QGIS consegues até melhor do que isso! Podes usar essas funções todas, até com shapefiles!

Menu Layer → Add Layer → Add/Edit Virtual Layer…

Esta opção é mais uma daquelas que me deixa de queixo caído com o QGIS! :slight_smile:

As coisas que se fazem com umas reles shapefiles! Mas podes usar quaisquer outras fontes de dados.

Abraço!

Pedro Venâncio

···

No dia 7 de dezembro de 2017 às 21:47, Duarte Carreira <dncarreira@gmail.com> escreveu:

Milú Olá!! Bom “ver-te” por aqui :wink:

Queria só perguntar ao pessoal se no qgis podemos usar com spatialite a st_makevalid e a série de funções st_* que o spatialite tem:
https://www.gaia-gis.it/fossil/libspatialite/wiki?name=liblwgeom-4.0

É mais fácil para quem não lida com postgis usar spatialite. (pelo menos não precisa de instalar pgsql+postgis)

Eu penso que sim, até da mesma forma que com postgis, mas não tenho a certeza… podem dar umas luzes?

Abraços,

Duarte


QGIS-pt mailing list
QGIS-pt@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-pt

Boa tarde,

Olá Duarte!! Obrigada!
Obrigada também pelas vossas dicas. Como já perceberam ando por aqui
"apanhar muitos bonés"... Mas usando as dicas do Duarte e do Pedro criei um
Virtual Layer com uma query para saber quantas geometrias invalidas tinham
os shapefile COS e CAOP. Para a CAOP o resultado é zero e para a COS
(reclassificada por mim) é de 1292.

Tentei então correr criar outra vez um virtual layer mas com a query
"UPDATE COS2010_recIF SET geometry = ST_MakeValid(geometry)
WHERE ST_IsValid(geometry) = 0;" só que não tenho dipsonivel ST_MakeValid.

Então instalei o plugin "Processing LWGEOM Provider", mas quando o corro
aparece uma mensagem a dizer "A iniciar o algoritmo Make Valid----" e logo
a seguir outra a vermelho que diz "see log for more details"

Como se vê na imagem
<http://osgeo-org.1560.x6.nabble.com/file/t381590/Erro.jpg&gt;

Alguma dica/sugestão para o que possa estar a fazer mal?

Muito Obrigada!

Melhores cumprimentos,
Milú

--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-pt-f5128248.html

Olá bom dia,

Como se vê na imagem
<http://osgeo-org.1560.x6.nabble.com/file/t381590/Erro.jpg&gt;

a imagem é demadiado pequena, por favor copiem/colem (como texto) as
mensagens de erro.

Para usar o plugin que faz uso de liblwgeom (a biblioteca que define o
st_makevalid), a mesma biblioteca
deve ser instalada com o instalador osgeo4w > advanced install. A
seguir não opções do plugin deve ser definido
o path para esta biblioteca .dll.

Cumprimentos

-- GM --

Boa tarde,

Muito Obrigada a todos!

Consegui com esta ultima dica do Giovanni resolver a questão.
Instalei o /plugin / / liblwgeom/ e congfigurei o caminho (Menu
Processamento/Opções/Fornecedores/LWGEOM Algorithms) para a lwgeom.dll nas
opções.

O QGIS deu uma mensagem de erro ao configurar o caminho, que após varias
tentativas acabei por ignorar e, após reininciar o QGIS confirmei que o
caminho estava devidamente definido.

Já corrigi os dois temas em que tina problemas e já consigo fazer as
intersecções via desktop e via codigo python.

Desculpem se me excedi nos detalhes, mas pode ser que assim ajude alguém
também :slight_smile:

Muito obrigada mais uma vez.

Boas festas!

--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-pt-f5128248.html