Tengo toneladas de archivos DWG / DXF con información (en varias capas) sobre:
- Líneas de contorno y elevación (líneas)
- posiciones de antenas (puntos)
- áreas de protección (polígonos)
- límites administrativos (líneas)
- carreteras (líneas)
- ríos (líneas)
- cercas (líneas)
- ...
Toda esta información se ha insertado en estos archivos CAD de una manera no estándar (nombres no unificados o colores en capas), y ahora quiero traducirla a GIS (archivos SHP o en un servidor PostGIS).
Estoy investigando cómo traducir estos datos.
Estoy considerando:
- crear scripts GDAL con Python ( http://www.gis.usu.edu/~chrisg/python/2009/ )
- crear scripts con bibliotecas Teigha ( http://www.opendesign.com/guestfiles/TeighaFileConverter )
- use ArcGIS Desktop (con scripts de Python) ( http://www.slideshare.net/cageyjames/python-scripting-with-arcgis )
- use QGIS o gvSIG ( http://www.qgis.org/ , http://www.gvsig.org )
- use GlobalMapper ( http://www.globalmapper.com/ )
- use GeoKettle ( http://www.spatialytics.org/projects/geokettle/ )
- ...
¿Se puede lograr la traducción CAD2GIS con este software?
Respuestas:
Me parece que el principal problema para usted es introducir algún orden en su
tons of DWG/DXF files with information (in several layers)
.Independientemente de elegir el software / herramienta, puedo recomendarle que describa sus datos. Aquí hay algunos pensamientos:
De esta manera, puede actualizar fácilmente dicha descripción documentada en el futuro y aplicarla nuevamente a cualquier dato sin necesidad de modificar sus scripts.
Mi experiencia:
Generalmente preparamos tales descripciones en un archivo XLS (puede ser editado fácilmente por cualquier cartógrafo o técnico) y usamos FME para transformar y convertir datos. Pero creo que puede implementar una idea similar con cualquier software que pueda leer DWG con propiedades de objetos.
fuente
Autocad Map 3D geo-referenciará fácilmente sus archivos dwg / dxf y permitirá la conversión a 12 formatos gis.
A menos que agregue también el escritorio FME (extensión FME para ArcGIS).
Luego, con FME extendido a arcmap y autocad, tiene todos los ~ 275 formatos .
Pero al hacerlo a través de map3d tienes acceso a algunas herramientas particularmente útiles.
(es decir, seleccione por capa, color, tipo de línea o incluso mediante selección manual si es necesario). Cree puntos desde el punto de inserción de bloque, convierta atributos de bloque en atributos de datos,
guarde todo esto en un archivo epf y aplíquelo a múltiples dibujos, etc.
Escríbalo también si eso es lo que estás buscando.
Comienzo todos mis proyectos asumiendo que autocad map 3d, arcmap y fme se utilizarán para su mejor propósito.
fuente
Parece que tiene un procesamiento por lotes importante y, por lo tanto, me inclinaría a escribir esto. Hacer todo esto a mano puede ser factible pero un dolor. Al menos con un script, si arruinas algo, puedes corregir el script y volver a ejecutarlo. Además, tiene la oportunidad de unificar muchos de los nombres no estándar, etc. mediante expresiones regulares y codificaciones / selecciones razonables.
Si está escribiendo esto, le sugiero que use el medio con el que se sienta más cómodo. Dicho esto, tener un montón de archivos de forma puede ser un poco difícil y tiene una rara oportunidad de forzar un pedido en su tienda de geodatos. Entonces, aprovecharía la oportunidad y almacenaría todo en PostGis, GeoDatabases o alguna otra base de datos habilitada espacialmente. Su elección aquí realmente depende de quién va a usar los datos y qué software les gusta más.
Para resumir, escríbelo a tu manera pero entrega los datos a su manera.
fuente
Para convertir sus archivos CAD a GIS, deberá agregar información de georreferencia a sus archivos CAD. Si sus archivos CAD están en algún sistema de coordenadas reconocible, puede asignarlos a sus archivos, de lo contrario tendrá que georreferenciar 'manualmente' el archivo CAD para traducir las coordenadas locales a un sistema de coordenadas proyectado.
Encontré esta buena guía [PDF] en la que le da una idea decente del proceso.
Con respecto a la automatización de este proceso, puedes probar bash con ogr2ogr. Si necesita más control, python con ogr definitivamente haría el trabajo.
fuente