Georeferenziazione DXF utilizzando QGIS? [duplicare]


14

Mi sono procurato un dxf che è costruito con unità nella scala sbagliata. Come posso effettuare l'upgrade in QGIS? Nota che si apre in QGIS, solo nelle unità e nella posizione della mappa sbagliate.


La risposta di nhopton sopra sull'utilizzo del plugin qgsAffine ha funzionato per me solo la scorsa settimana. Avevo un dxf ridimensionato 1000 volte il CRS che volevo. Ho trasformato il dxf in shp con il plugin standard, quindi ho trasformato X e Y moltiplicando per 0,001 in qgsAffine e il problema è stato risolto. PS Grazie in ritardo a nhopton per il consiglio, che non ho potuto estendere prima che il Forum QGIS fosse chiuso!
Prugnolo

Ho anche alcuni DXF che vorrei affinare. Ho usato OpenJump una volta, perché non potevo fare i calcoli per il plugin QGIS. Tuttavia, alla fine ho trovato più facile salvare il mio livello SHP con una proiezione nota come DXF, aprirlo in (libero) QCAD, importare il DXF che aveva bisogno di affetto e fare tutto il ridimensionamento, rotazione e spostamento del DXF lì. Quando tutto era a posto, l'ho salvato come DXF e reimportato in QGIS dove è stata mantenuta la proiezione e ora anche il mio DXF è stato influenzato nella posizione e scala adeguate. Potrei quindi salvare il DXF come SHP.
Melissa,

Risposte:


12

Voi raster georeferenziati e vettori affini :)

QGIS ha un plug-in affine (qgsAffine) con il quale è possibile ridimensionare i livelli vettoriali. Se necessario, puoi anche applicare gli offset xey su tutti i vertici in un livello vettoriale. Penso che probabilmente dovrai convertire il tuo DXF in un file di forma per usarlo (fai clic con il pulsante destro del mouse sul livello nel pannello dei livelli e seleziona "Salva con nome ..."). Applicare la rotazione su un livello vettoriale è leggermente più difficile.


1
Ecco alcuni suggerimenti per ruotare con qgsAffine: gis.stackexchange.com/q/21696/1872
Mike T

Hum sì, ho dato un contributo a quell'argomento che non sembrava trovare molto favore. Ma a conti fatti preferisco ancora l'approccio OpenJump, calcola tutti e sette i parametri di trasformazione e quindi li applica al vettore di interesse. Penso di aver visto una proposta GSG di QGIS per fare la stessa cosa in QGIS, il che sarebbe utile.
nhopton,

Sì, vedo cosa usano gli OpenJump ed è molto più forte!
Mike T,


3

Credo che ciò possa essere realizzato in QGIS.
Comunque uso il software cad con il mio software gis e farei quanto segue.
In entrambi i casi hai bisogno di alcune informazioni di base sul dxf.
1. Dovresti conoscere le unità del dxf.
2. Dovresti avere una serie di punti noti nel dxf. (almeno 2 punti).

1 bis. Se il sistema di coordinate originale (o non di sistema) è identificabile, è necessario trasformarlo in un sistema noto simile.
(se il disegno è stato appena disegnato in nessun sistema ma un sistema di base 0,0 assume un tipo di area uguale.) o alambert o albers (a seconda dell'area di copertura [dimensione])
2a. assicurarsi che tutti gli elementi nel disegno siano visualizzati (nessun livello disattivato).
3a. seleziona tutte le funzionalità.
4a. sposta tutte le funzioni da un punto noto a un punto noto.
5a. dopo aver determinato la scala originale ridimensionare empiricamente tutti gli oggetti selezionati
6a. ruota empiricamente tutti gli oggetti selezionati.
Salvare e / o esportare gli oggetti selezionati con un CRS noto.



2

Ho usato OpenJump una volta, perché non potevo fare i calcoli per il plugin QGIS. Tuttavia, alla fine ho trovato più facile salvare il mio livello SHP con una proiezione nota come DXF, aprirlo in (libero) QCAD, importare il DXF che aveva bisogno di affetto e fare tutto il ridimensionamento, rotazione e spostamento del DXF lì. Quando tutto era a posto, l'ho salvato come DXF e reimportato in QGIS dove è stata mantenuta la proiezione e ora anche il mio DXF è stato modificato nella corretta posizione e scala. Potrei quindi salvare il DXF come SHP.


2

Il plugin AnotherDXF2Shape contiene un modulo di georeferenziazione : inserisci qui la descrizione dell'immagine

Parametro inserisci qui la descrizione dell'immagine

Per mezzo degli offset X e Y, è possibile ottenere un semplice spostamento del DXF. Questo è utile quando le coordinate originali sono state abbreviate nel sistema CAD /.

File mondiali per set di dati CAD

Un file world (.wld) è un file di testo contenente punti di controllo che descrivono una trasformazione delle coordinate. Un file mondiale può essere utilizzato per estendere le proprietà di un disegno CAD per includere informazioni di georeferenziazione. Le informazioni sono memorizzate come valori di coordinate che definiscono uno o due vettori di spostamento chiamati collegamenti. I dati comprendono due o quattro coppie di coordinate organizzate in due file. Ogni riga definisce un collegamento di spostamento usando la sintassi seguente:. La prima coppia di coordinate in ciascuna riga corrisponde alle coordinate di origine, note anche come coordinate da. Questi valori rappresentano la posizione x, y di qualsiasi punto di controllo noto nel disegno CAD. La seconda coppia di coordinate in ciascuna riga corrisponde alle coordinate di destinazione, note anche come coordinate. Questi valori rappresentano una nuova posizione nello spazio geografico, in genere un punto di riferimento in un altro feature layer. Fonte: arcgis.com

Se la trasformazione delle coordinate è attivata e il plug-in trova un file WLD corrispondente, viene automaticamente integrato e il file DXF viene trasformato di conseguenza. inserisci qui la descrizione dell'immagine

Trasformazione su 1-4 punti identici

Simile al set di dati CAD, una trasformazione avviene tramite punti identici. Il numero di parametri per la trasformazione dipende dal numero di punti dati. Nota: un output dei residui per l'eccessiva determinazione non è attualmente.


1

Il modo più veloce, penso, è di modificare il tuo file DXF (ridimensionarlo e posizionarlo nelle coordinate giuste) usando un software CAD, quindi caricarlo in QGIS.

Ovviamente puoi spostare le tue funzionalità in QGIS, ma non puoi ridimensionarle. Spero che sia di aiuto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.