[QGIS-pt] Atribuição automática de atributos - "com base na geometria/localização"

Caríssimos colegas,

Possuo uma base de dados postgresql onde um grupo de pessoas regista inúmeras geometrias (maioritariamente em forma de pontos) para localizar eventos e outros elementos. A localização é efetuada com o QGIS, sobre imagens de satélite.

Foi solicitado pelos meus colegas, para aferir a possibilidade de um conjunto de atributos serem preenchidos de forma automática, como é o caso do Distrito, Concelho e Freguesia.

Atualmente usamos a Carta Administrativa Oficial de Portugal para efetuar a indicação desses dados manualmente, mas o ideal seria fazer isso automaticamente com o QGIS, sabem-me indicar alguma forma de o fazer com os widgets do QGIS?

Grato pela atenção e ajuda

Saudações,

Manuel D’Almeida

···

Cumprimentos,
Manuel Almeida, arqº

A minha solução seria fazer no lado do PostGIS com um trigger após a criação de um novo elemento, ou alteração da geometria do mesmo. Basicamente os colegas deixariam esses campos vazios e eles seriam automaticamente preenchidos.

A sex, 17/03/2017, 16:45, Manuel Almeida <manuel.dalmeida@gmail.com> escreveu:

Caríssimos colegas,

Possuo uma base de dados postgresql onde um grupo de pessoas regista inúmeras geometrias (maioritariamente em forma de pontos) para localizar eventos e outros elementos. A localização é efetuada com o QGIS, sobre imagens de satélite.

Foi solicitado pelos meus colegas, para aferir a possibilidade de um conjunto de atributos serem preenchidos de forma automática, como é o caso do Distrito, Concelho e Freguesia.

Atualmente usamos a Carta Administrativa Oficial de Portugal para efetuar a indicação desses dados manualmente, mas o ideal seria fazer isso automaticamente com o QGIS, sabem-me indicar alguma forma de o fazer com os widgets do QGIS?

Grato pela atenção e ajuda

Saudações,

Manuel D’Almeida

Cumprimentos,
Manuel Almeida, arqº


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

Alexandre Neto

@AlexNetoGeo
http://sigsemgrilhetas.wordpress.com
http://gisunchained.wordpress.com

2017-03-17 16:45 GMT+00:00 Manuel Almeida <manuel.dalmeida@gmail.com>:

Caríssimos colegas,

Possuo uma base de dados postgresql onde um grupo de pessoas regista
inúmeras geometrias (maioritariamente em forma de pontos) para localizar
eventos e outros elementos. A localização é efetuada com o QGIS, sobre
imagens de satélite.

Foi solicitado pelos meus colegas, para aferir a possibilidade de um
conjunto de atributos serem preenchidos de forma automática, como é o caso
do Distrito, Concelho e Freguesia.

como estou a dar um curso de PostGIS neste momento... um exemplo:

  CREATE OR REPLACE FUNCTION add_dist()
  RETURNS trigger AS
$BODY$
BEGIN
    UPDATE dados.estacoes SET distrito = distritos.distrito FROM
dados.distritos WHERE ST_Intersects(distritos.geom, estacoes.geom);
    RETURN NULL;
END;
$BODY$
  LANGUAGE plpgsql VOLATILE;

DROP TRIGGER IF EXISTS addist ON dados.estacoes;
  CREATE TRIGGER adddist
  AFTER INSERT
  ON dados.estacoes
  FOR EACH ROW
  EXECUTE PROCEDURE add_dist();

-- G --