Georeferenciando DXF usando QGIS? [duplicar]


14

Tengo un dxf que está construido con unidades en la escala incorrecta. ¿Cómo puedo mejorar eso en QGIS? Tenga en cuenta que se abre en QGIS, solo en las unidades de mapa y ubicación incorrecta.


La respuesta anterior de nhopton sobre el uso del complemento qgsAffine funcionó para mí solo la semana pasada. Tenía un dxf que escalaba 1000 veces el CRS que quería. Transformé el dxf a shp con el complemento estándar, luego transformé X e Y multiplicando por .001 en qgsAffine, y el problema se resolvió. PD: ¡Agradecido a nhopton por el consejo, que no pude extender antes de que se cerrara el Foro QGIS!
endrino el

También tengo algunos DXF que deseo afinar. Utilicé OpenJump una vez, porque no podía hacer los cálculos para el complemento QGIS. Sin embargo, eventualmente me resultó más fácil guardar mi capa SHP con una proyección conocida como DXF, abrir esto en QCAD (gratis), importar el DXF que necesitaba afinación y hacer todo el escalado, rotación y movimiento del DXF allí. Cuando todo estuvo en su lugar, lo guardé como un DXF y lo reimporté a QGIS donde se retuvo la proyección y mi DXF ahora también estaba afinado en la posición y escala adecuadas. Entonces podría guardar el DXF como SHP.
Melissa

Respuestas:


12

Ustedes georreferencian rásteres y vectores afines :)

QGIS tiene un complemento afín (qgsAffine) con el que puede escalar capas vectoriales. También puede aplicar desplazamientos xey a todos los vértices en una capa vectorial si es necesario. Sin embargo, creo que probablemente necesite convertir su DXF a un archivo de forma para usarlo (haga clic con el botón derecho en la capa en el panel de capas y vaya a 'Guardar como ...'). Aplicar rotación a una capa vectorial es un poco más difícil.


1
Aquí hay algunos consejos para rotar con qgsAffine: gis.stackexchange.com/q/21696/1872
Mike T

Hum, sí, hice una contribución a ese tema que no pareció encontrar mucho favor. Pero en general, todavía prefiero el enfoque OpenJump, calcula los siete parámetros de transformación y luego los aplica al vector de interés. Creo que vi una propuesta de QGIS GSoC para hacer lo mismo en QGIS, lo que sería útil.
nhopton

Sí, veo lo que están usando las personas de OpenJump y es mucho más elegante.
Mike T


3

Creo que esto se puede lograr en QGIS.
Sin embargo, uso el software cad con mi software gis y haría lo siguiente en él.
De cualquier manera, necesita información básica sobre el dxf.
1. Debes conocer las unidades de dxf.
2. Debe tener un conjunto de puntos conocidos en el dxf. (al menos 2 puntos).

1a. Si el sistema de coordenadas original (o no sistema) es identificable, entonces debe transformarlo a un sistema similar conocido.
(si el dibujo se acaba de dibujar en ningún sistema pero un sistema base 0,0 asume algún tipo de área igual.) ya sea alambert o albers (dependiendo del área de cobertura [tamaño])
2a. asegúrese de que se muestren todos los elementos del dibujo (sin capas desactivadas).
3a. selecciona todas las funciones.
4a. mover todas las características de un punto conocido a un punto conocido.
5a. Después de determinar la escala original, cambie el tamaño de todos los objetos seleccionados empíricamente
6a. rotar todos los objetos seleccionados empíricamente.
Guarde y / o exporte los objetos seleccionados con un CRS conocido.



2

Usé OpenJump una vez, porque no podía hacer los cálculos para el complemento QGIS. Sin embargo, eventualmente me resultó más fácil guardar mi capa SHP con una proyección conocida como DXF, abrir esto en QCAD (gratis), importar el DXF que necesitaba afinación y hacer todo el escalado, rotación y movimiento del DXF allí. Cuando todo estuvo en su lugar, lo guardé como un DXF y lo reimporté a QGIS donde se retuvo la proyección y mi DXF ahora también estaba afinado en la posición y escala adecuadas. Entonces podría guardar el DXF como SHP.


2

El complemento AnotherDXF2Shape contiene un módulo de georreferenciación: ingrese la descripción de la imagen aquí

Parámetro ingrese la descripción de la imagen aquí

Mediante el desplazamiento X e Y, se puede lograr un desplazamiento simple del DXF. Esto es útil cuando las coordenadas originales se han acortado en el sistema / CAD.

Archivos mundiales para conjuntos de datos CAD

Un archivo mundial (.wld) es un archivo de texto que contiene puntos de control que describen una transformación de coordenadas. Se puede usar un archivo mundial para ampliar las propiedades de un dibujo CAD para incluir información de georreferenciación. La información se almacena como valores de coordenadas que definen uno o dos vectores de desplazamiento llamados enlaces. Los datos comprenden dos o cuatro pares de coordenadas organizadas en dos filas. Cada fila define un enlace de desplazamiento utilizando la siguiente sintaxis:. El primer par de coordenadas en cada fila corresponde a las coordenadas de origen, también conocidas como coordenadas de origen. Estos valores representan la ubicación x, y de cualquier punto de control conocido en el dibujo CAD. El segundo par de coordenadas en cada fila corresponde a las coordenadas de destino, también conocidas como coordenadas a. Estos valores representan una nueva ubicación en el espacio geográfico, normalmente un punto de referencia en otra capa de entidades. Fuente: arcgis.com

Si la transformación de coordenadas está activada y el complemento encuentra un archivo WLD correspondiente, se integra automáticamente y el archivo DXF se transforma en consecuencia. ingrese la descripción de la imagen aquí

Transformación sobre 1-4 puntos idénticos

Similar al conjunto de datos CAD, una transformación se lleva a cabo a través de puntos idénticos. El número de parámetros para la transformación depende del número de puntos dados. Nota: Una salida de los residuos para la sobredeterminación actualmente no lo es.


1

Creo que la forma más rápida es modificar su archivo DXF (escalar y colocar en coordenadas correctas) utilizando un software CAD, y luego cargarlo en QGIS.

Por supuesto, puede mover sus funciones en QGIS, pero no puede escalarlas. Espero que esto ayude.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.