Conexión y edición PostGIS desde AutoCAD Map 3D

Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D.

Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D.

En este artículo veremos la conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D.

AutoCAD Map 3D es la solución desarrollada por Autodesk para combinar en una única herramienta toda la potencialidad que ofrece AutoCAD, principal software de diseño asistido por ordenador a nivel mundial, y la funcionalidad de los sistemas de información geográfica permitiendo el acceso, creación, gestión y análisis sobre la información geoespacial.

A continuación, crearemos una base de datos espacial PostGIS que contendrá las construcciones poligonales de la cartografía 1:5000 del Instituto Cartográfico Valenciano y usaremos el programa AutoCAD Map 3D para acceder a los datos, modificarlos y crear nueva geometría e información espacial.

1. Creación de la base de datos espacial

La versión de AutoCAD Map 3D con la que vamos a realizar la conexión a la base de datos espacial es la 2020, por lo que es importante conocer qué versión PostgreSQL es compatible la versión del proveedor FDO (Feature Data Object), que es la que le permite establecer conexiones a ficheros vectoriales y rásters, así como bases de datos y servicios de cartografía online.

En el caso de AutoCAD Map 2020 el proveedor FDO solamente admite PostgreSQL 9.5, por lo que lo primero que haremos será instalar esa versión de PostgreSQL en nuestro ordenador y la versión de PostGIS compatible. Una vez instalado el programa y la extensión, crearemos la base de datos alcudia_pg a la que definiremos la extensión PostGIS.

1 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Una vez creada la base de datos espacial, importaremos la información de las construcciones gracias al plugin que acompaña la instalación de PostGIS en nuestro ordenador.

2 1 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Para terminar de configurar la base de datos espacial, realizaremos un par de operaciones usando SQL:

  • Ya que la geometría de origen se encuentra en 2.5 dimensiones y nosotros queremos trabajar en dos dimensiones, es necesario corregir el atributo y el valor de la geometría de las construcciones poligonales:
    ALTER TABLE construccionespoligonales ALTER COLUMN geom TYPE GEOMETRY;
    UPDATE construccionespoligonales SET geom = ST_Force2D(geom);
    ALTER TABLE construccionespoligonales ALTER COLUMN geom TYPE GEOMETRY(Polygon, 25830);
    
    
    
  • Además, queremos comprobar cómo funcionan los disparadores o triggers trabajando desde AutoCAD Map. Ya que vamos a crear, modificar o eliminar polígonos, vamos a crear, en primer lugar, una función que calcule de manera automática el área y el perímetro de cada polígono para después crear el disparador
    CREATE OR REPLACE FUNCTION public.area_perimetro()
      RETURNS trigger AS
    $BODY$
    BEGIN
        NEW.shape_area = st_area(NEW.geom);
        NEW.length = ST_Perimeter(NEW.geom);
        RETURN NEW;      
    END;
    $BODY$
      LANGUAGE plpgsql;
    CREATE TRIGGER area_length
      BEFORE INSERT OR UPDATE
      ON public.construccionespoligonales
      FOR EACH ROW
      EXECUTE PROCEDURE public.area_perimetro();
2. Conexión a la base de datos espacial desde AutoCAD Map

Después de crear la base de datos espacial y haber cargado la cartografía, lo siguiente que haremos será entrar en AutoCAD Map 3D para poder visualizar estos datos. Para ello, en la sección del panel de tareas haremos clic en el botón Datos.

3 2 1 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

A continuación, seleccionamos la opción Añadir conexión PostgreSQL y rellenamos los datos que se nos piden. Antes de continuar con el siguiente paso, deberemos introducir un nombre de usuario y contraseña válidos para nuestra base de datos.

4 3 2 1 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Por último, seleccionaremos la tabla espacial de las construcciones poligonales y haremos clic en el botón Añadir al mapa.

5 4 3 2 1 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

En la pantalla principal de AutoCAD Map 3D se mostrarán los polígonos de las construcciones del municipio de L’Alcudia (Valencia). Para ayudarnos en la creación y modificación de estos datos geométricos, hemos añadido, además, una Ortofoto del PNOA.

6 5 4 3 2 1 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Para mejorar esta edición vamos a darle transparencia a las geometrías, de manera que podamos usar la ortofoto como referencia cara a añadir, modificar o eliminar polígonos. Seleccionando la capa de las construcciones poligonales en el panel de tareas hacemos clic en el botón Estilo.

7 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Se abrirá la ventana del editor de estilos. En la sección inferior, estilo de polígono para el rango de escala 0 – Infinito, hacemos clic en el botón de los puntos suspensivos (…) de la columna estilo. Se nos abrirá una ventana con el estilo del polígono. Seleccionamos el número que hay a la derecha de transparencia y escribimos 40 para tener una transparencia del 40%.

7 7 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D
3. Edición de geometrías desde AutoCAD Map 3D

Al seleccionar la capa de las construcciones poligonales se nos abre una nueva pestaña con botones en AutoCAD Map 3D. Esta pestaña dispone de todos los comandos necesarios para, entre otras operaciones, crear y editar la geometría y la información alfanumérica de la tabla de atributos. Para guardar cualquier edición hecha sobre nuestra tabla espacial deberemos ir al conjunto de botones Conjunto de cambios y hacer clic en Aplicar check-in.

10.2.Eliminar poligono (aplicar cambios)

Con el fin de mostrar cómo funcionan las herramientas de creación y edición de datos en AutoCAD Map 3D, vamos a realizar las siguientes modificaciones en nuestra tabla espacial:

3.1 Eliminación de un polígono

Disponemos en nuestra tabla espacial de una geometría que, si comparamos con la Ortofoto, no se corresponde con ningún elemento en el terreno. Para eliminarlo solo hay que seleccionarlo y, cuando se muestre el polígono igual que en la siguiente imagen, haremos clic en la tecla suprimir. Para que los cambios se guarden en la base de datos debemos Aplicar check-in.

9 7 7 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D
3.2 Creación de un nuevo polígono

En la siguiente imagen vemos en la Ortofoto una vivienda que no aparece como geometría en nuestra tabla espacial. Para poder ver la tabla de atributos de la tabla espacial iremos al panel de tareas y haremos clic en el botón Tabla.

10 9 7 7 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

En el grupo Crear hacemos clic en Nuevo elemento y, en el desplegable, debemos elegir el mismo tipo de geometría de nuestra tabla espacial. En el caso de las construcciones poligonales, seleccionamos la opción Polígono.

11 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Se digitaliza el elemento, pudiendo, entre otras cosas, definir arcos o rectas según las opciones de dibujo que nos proporciona AutoCAD Map.

12 11 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Finalizada la digitalización, aparecerá una nueva fila con todos los valores vacíos. Haciendo clic en cualquiera de las casillas sin valores, le podremos asignar nuevos valores según la tipología del elemento. El atributo gid se actualizará de manera automática cuando apliquemos chek-in. Para que se aparezcan los valores del área y el perímetro del nuevo polígono, atributos que se actualizan con el disparador, tendremos que hacer clic derecho sobre la capa construcciones poligonales y, a continuación, seleccionar la opción actualizar.

13 12 11 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D
3.3 División de un polígono

Para concluir, vamos a dividir el siguiente polígono que define una nave industrial en dos partes siguiendo el trazado de la nave principal tal cual vemos en la Ortofoto.

14 13 12 11 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Una vez seleccionado el polígono, haremos clic en el botón Dividir elemento del grupo Dividir/fusionar.

15 14 13 12 11 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Seleccionaremos las opciones Nueva (generar dos entidades nuevas), Nueva (generar un nuevo identificador para las nuevas entidades) y Dibujar (dibujaremos la línea que se usará para dividir la geometría). Hecho esto, dibujaremos la línea que dividirá las dos nuevas geometrías.

16 15 14 13 12 11 Conexión y edición de una base de datos espacial PostGIS desde AutoCAD Map 3D

Una vez terminada la operación, se habrán creado dos nuevos polígonos y dos nuevas filas en nuestra tabla de atributos. Para actualizar los atributos gid, area y perímetro debemos aplicar check-in y actualizar la tabla del mismo modo que hicimos en la creación del nuevo polígono.

Autocad MAP 3D