Rendere le linee curve usando QGIS?


10

Non ho molta esperienza con QGIS e sto lavorando su una mappa con linee che collegano posizioni create con il plugin mmqgis. C'è un modo semplice per rendere sinuose quelle linee dirette per scopi estetici?

Sto cercando di ottenere qualcosa di simile alla mappa qui sotto ma con diversi hub. Ho letto suggerimenti su come farlo con PostGIS e altri strumenti avanzati, quindi ho fatto le mie ricerche (compresi altri post qui) e ho provato a utilizzare diversi plug-in, e in particolare sto chiedendo una soluzione semplice perché non avere molta esperienza.

Esempio


c'è un modo per annullare la curva durante la modifica o annullare un punto in cui l'hai posizionata accidentalmente?
3mm

Benvenuti in GIS SE! Come nuovo utente, assicurati di fare un breve tour per conoscere il formato di domande e risposte focalizzato su questo sito. Se hai una domanda, utilizza il link Poni domanda anziché pubblicare una risposta.
Andy,

Se hai una nuova domanda, chiedila facendo clic sul pulsante Poni domanda . Includi un link a questa domanda se aiuta a fornire un contesto. - Dalla recensione
csk

Risposte:


6

Se stai usando QGIS 2.12 o successivo, avrai lo strumento " Aggiungi stringa circolare " in " Barra degli strumenti di digitalizzazione ". Oppure potresti provare " Spline plugin ".

(LHS) Aggiungi strumento stringa circolare durante la digitalizzazione, (RHS) Strumento spline durante la digitalizzazione

digitalizzazione

Puoi vedere lo strumento Aggiungi stringa circolare (LHS) disegna una linea circolare o semicircolare, mentre lo strumento Spline (RHS) interpola i punti per adattare la linea alla curva spline. Qualunque cosa tu scelga, devi solo fare clic su 3 punti: punto iniziale, punto curva e punto finale.

E otterrai:

risultato

Esistono altri strumenti come CadTools, ma sarà più emozionante se lo trovi da solo.


1
Grazie. Non sto cercando di creare linee, ma di curvare (non manualmente) quelle che ho già creato con mmqgis. Inoltre, non cerchi eccitazione, ma solo qualcosa per portare a termine il lavoro. È per questo che sono venuto qui, quindi qualsiasi aiuto sarebbe apprezzato! :)
darj,

1
Capito, grazie. E scusa se mi sono sbagliato. Ora capisco che hai già Hub Lines creato dal plugin MMQGIS.
Kazuhito,

6

Utilizzare lo stile Frecce anziché lo stile Linea semplice.

Ad esempio, queste linee con stile Linea semplice:

inserisci qui la descrizione dell'immagine

assomiglia a questo con lo stile Freccia:

inserisci qui la descrizione dell'immagine

È possibile disattivare le punte delle frecce impostando la larghezza e la lunghezza della testa su 0.

Come puoi vedere, la linea retta diventa una freccia dritta, mentre le linee con un vertice centrale diventano frecce curve. Il posizionamento del vertice medio determina la curva della freccia.

Per convertire le linee rette in frecce curve, dovrai aggiungere un vertice medio a ogni linea, quindi compensare quel vertice abbastanza da generare una freccia curva.

Utilizzare lo stile Generatore di geometria con il tipo Geometria: Linestring. Questa espressione creerà una linea con un punto medio di 200 unità di distanza verso est e nord del punto medio originale della linea.

  make_line( start_point( $geometry), translate( centroid( $geometry), 200,200), end_point($geometry))

Modifica la linea da visualizzare come stile Freccia. Regola i valori di offset del centroide nell'espressione del generatore di geometria fino a quando non sei soddisfatto della forma delle frecce. Se lo desideri, puoi renderli proporzionali alla lunghezza della linea originale, ad es $length/10. L'espressione completa sarebbe:

make_line( start_point( $geometry), translate( centroid( $geometry), $length/10, $length/10), end_point($geometry))

Ecco come appare, con le linee originali in rosa e le frecce generate dalla geometria in nero:

inserisci qui la descrizione dell'immagine

Se non si è soddisfatti del posizionamento del punto medio della linea, è possibile regolarli manualmente. Innanzitutto, converti lo stile di linea generato dalla geometria in un livello reale. Copia l'espressione dal generatore di geometrie nello geometry by expressionstrumento (Casella degli strumenti di elaborazione). Quindi utilizzare lo strumento Vertice (barra degli strumenti Digitalizzazione) per spostare manualmente i vertici.

Nota: questa risposta è stata fatta con QGIS 3.4.


4

Devi fare qualche altro passo: (Ho la versione olandese quindi se non è la traduzione giusta, scusa). Come ha fatto @bugmenot, ma di nuovo scegli Riempi e modificalo da Riempimento standard di tipo di livello simbolo in: 'Rand / Bordo?: Freccia. Ho fatto un riempimento graduale a colori [geleiddelijke vulling] nell'ultimo "Riempimento". Spero sia stato d'aiuto. inserisci qui la descrizione dell'immagine


Grazie! È possibile regolare l'angolo della curva in modo che sia più piatto come nell'immagine che ho pubblicato?
darj,

Non penso sia possibile. Forse con qualche sceneggiatura in Python, ma non è la mia tazza di tè.
Willem,
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.