Cómo convertir un DXF a SHP (Shapefile), de CAD a SIG
Un DXF y un Shapefile pueden contener las mismas líneas, pero están hechos para trabajos distintos. El DXF es un dibujo: entidades en capas, con bloques, textos y sombreados, y sin idea de en qué lugar de la Tierra está. El Shapefile es una capa SIG: un tipo de geometría por archivo, una tabla de atributos y un sistema de coordenadas opcional. Convertir uno en otro significa separar el dibujo por geometría, decidir qué se vuelve atributo y adjuntar un sistema de coordenadas que el DXF nunca tuvo. Esto es lo que se conserva, lo que no, y cómo hacerlo sin conexión.
Por qué un DXF no se corresponde uno a uno con un Shapefile
Un Shapefile guarda exactamente un tipo de geometría: puntos, líneas o polígonos. Un DXF los mezcla libremente en la misma capa. Lo primero que hace cualquier conversión es repartir el dibujo en hasta tres archivos, uno por tipo de geometría.
Un Shapefile también lleva una tabla de atributos (.dbf) y, opcionalmente, su sistema de coordenadas (.prj). Un DXF no tiene ninguno de los dos de esa forma: sus "atributos" son el nombre de la capa y lo que implique el tipo de entidad, y no declara ningún sistema de coordenadas.
Qué se conserva y qué no
La geometría se conserva: puntos, líneas abiertas y contornos cerrados se convierten en puntos, polilíneas y polígonos. Las cotas también pueden conservarse si el Shapefile se escribe en 3D (PointZ, PolyLineZ, PolygonZ) en lugar de plano.
La identidad se conserva como atributos: el nombre del objeto y la capa DXF de la que venía se convierten en campos de la tabla, así que la estructura de capas sobrevive como una columna por la que puedes filtrar.
El estilo de dibujo no: textos, símbolos de bloque, patrones de sombreado, colores y tipos de línea son presentación, y un Shapefile solo guarda geometría y atributos. Los Shapefiles tampoco tienen curvas verdaderas, así que revisa arcos y círculos después de cualquier conversión: tienen que convertirse en una cadena de vértices.
El sistema de coordenadas es el paso que se olvida
Las coordenadas de un DXF son números reales —a menudo una cuadrícula nacional o UTM—, pero el archivo no dice en qué sistema están. Un Shapefile sin .prj tiene el mismo problema, y un Shapefile con un .prj EQUIVOCADO es peor: se sitúa con toda seguridad en el lugar equivocado.
Así que la conversión es el momento de adjuntar el sistema en el que se hizo el dibujo. Es una asignación, no una transformación: los números siguen iguales y solo se declara su significado. Si el sistema no puede identificarse sin ambigüedad, es mejor no escribir .prj que escribir uno adivinado.
Paso a paso en STREAM
1. Trabaja en un proyecto cuyo sistema de coordenadas sea aquel en que se hizo el dibujo.
2. Importa el DXF. Sus capas vienen con él; una capa con muchísimos objetos se carga en solo lectura por velocidad: haz clic derecho sobre ella y elige Hacer editable para que sus objetos puedan exportarse.
3. Oculta lo que no quieras en la salida. Solo se exportan los objetos visibles.
4. Abre Salida de mapa y elige Shapefile. STREAM escribe un Shapefile 3D aparte para puntos, líneas y áreas, omite el tipo que no tiene objetos y pone el nombre y la capa de cada objeto en la tabla de atributos. Las mediciones también salen: las de área con los polígonos y las demás con las líneas.
5. El .prj se escribe cuando el sistema de coordenadas del proyecto se resuelve a un código EPSG; si no, el archivo queda sin él en vez de con uno adivinado.
6. Abre el resultado en tu SIG y comprueba tres cosas: la capa cae donde debe, la tabla de atributos tiene los nombres de capa que esperas y los valores Z están ahí.
En sentido contrario: de Shapefile a DXF
El camino inverso funciona igual. Importa un Shapefile, GeoJSON o GeoPackage —cada capa se convierte en capa y cada entidad en un objeto sobre el que puedes dibujar, enganchar y editar— y luego exporta DXF; las capas van con él.
Preguntas frecuentes
¿Por qué al convertir un DXF obtengo varios Shapefiles?
Porque un Shapefile solo guarda un tipo de geometría. Los puntos, líneas y polígonos de un mismo dibujo van a archivos separados; el tipo sin objetos se omite.
¿Por qué mi Shapefile convertido no tiene sistema de coordenadas?
Porque un DXF no declara ninguno. Adjunta el sistema en que se hizo el dibujo: es una asignación, no una transformación. STREAM escribe el sistema del proyecto como .prj cuando se resuelve a un código EPSG, y prefiere no escribir .prj antes que uno adivinado.
¿La conversión conserva las cotas?
Sí, si el Shapefile se escribe en 3D. STREAM escribe archivos PointZ, PolyLineZ y PolygonZ, así que la Z de cada vértice viene con él.
¿Qué pasa con los textos, bloques y sombreados del DXF?
Son presentación del dibujo, no geometría SIG, y no se escriben en el Shapefile. El nombre del objeto y su capa DXF se conservan como atributos.
¿Puedo convertir un Shapefile de vuelta a DXF?
Sí. Importa el Shapefile, GeoJSON o GeoPackage y exporta DXF; cada capa SIG se convierte en una capa DXF.
Convierte entre formatos CAD y SIG en STREAM
Windows nativo · totalmente sin conexión · beta gratuita