[FOSSGIS-Talk] QGIS : Wie Kreise zeichnen, Radius ändern und verschieben ?
uwa mv
k.schaake at uwa-mv.de
Mi Aug 10 09:04:09 CEST 2022
Moin Bernd,
vielen Dank für die detaillierten und erhellenden Lösungsbeschreibungen. Das wollte ich schon immer mal herausfinden und bin dabei immer an der mir verfügbaren Zeit gescheitert.
Zu deinem abschließenden Absatz:
Das Erlernen von SQL ist sicherlich richtig. Aber als einer der sicherlich zahlreichen Nutzer, die nur gelegentlich GIS in ihrer Arbeit benötigen geht mir dabei folgendes durch den Kopf: "Hoffentlich kann ich mir das merken, bis ich es benötige….“
Alles Gute
Kai
____________________________________________
Landesverband für Unterwasserarchäologie M-V e.V.
Goor 4
18556 Putgarten/Rügen
www.uwa-mv.de
k.schaake at uwa-mv.de
Tel.: 030/ 30135205
Fax: 030/ 69542663
Mobil: 0179/ 5296980
> Am 09.08.2022 um 16:45 schrieb <bmarcus at giswana.de> <bmarcus at giswana.de>:
>
> Interessant wie viele Plug-Ins für das angefragte, recht einfache
> Unterfangen auszuprobieren sind, obwohl QGIS von Haus aus die gewünschte
> Funktionalität mitbringt.
>
> Man nehme einen beliebigen Polygon-Layer, wählt ein Objekt aus und ruft den
> Feldrechner auf. "Nur das selektierte Objekt aktualisieren" sowie
> "existierendes Feld aktualisieren" aktivieren, <geometry> als Feld auswählen
> und folgendes, mit den entsprechenden Koordinaten sowie des gewünschten
> Radius in den Ausdruckseditor eingeben:
>
> [ '--' kommentiert das Geschriebene ]
>
> buffer( -- erzeuge Puffer
> make_point(325500.0, 5890000.5) -- setze einen Punkt am
> Koordinatenpaar 325500.0, 5890000.5 (Punktnotation für Dezimal beachten!)
> , 250 -- Pufferweite
> , segments:= 50 -- Kreis mit 50 Segmenten
> pro Viertelkreis erzeugen (QGIS-Standart: 8)
> )
>
> Nach Bestätigung mit OK liegt gewähltes Polygon mit Zentrum 325500.0,
> 5890000.5 als Kreis mit 500'er Durchmesser im eingestellten
> Koordinatensystem vor.
>
> Um nicht immer erst ein Polygon erzeugen zu müssen, welches nachträglich in
> einen Kreis überführt werden will, bietet sich ein reiner SQL-Ansatz im
> DB-Manager an. Hierfür muss jedoch ein datenbankbasiertes Datenformat
> vorliegen, was bei Nutzung von QGIS selbstverständlich sein sollte, da als
> Standartformat Geopackage zum Einsatz kommt.
>
> DB-Manager aufrufen, Datenbankverbindung herstellen und den SQL-Editor
> aufrufen. Für das Erzeugen eines neuen Kreises folgendes eintippern:
>
> -- kreis erstellen
> insert into polygon(geom) -- füge in die Tabelle "polygon",
> aka Layer, in die Spalte "geom" Nachfolgendes ein:
> select buffer( -- selektiere einen Puffer
> makepoint( -- setze einen Punkt (man beachte
> die unterschiedliche Syntax zum Feldrechner)
> 325500.0 -- x_koord
> , 5890000.5 -- y_koord
> , 50 -- Anzahl Viertelkreis-Segmente
> (SpatiaLite-Standart: 30)
> )
> , 500 -- Radius Puffer
> )
> ;
>
> Auch OHNE Aktivierung des Editiermodus erhält man einen neuen Kreis mit
> gesetztem Zentrum und Radius.
>
> Zum nachträglichen Ändern von Position und/oder Radius wird UPDATE genutzt
> (ebenfalls ohne aktiviertem Editiermodus ausführbar):
>
> -- kreis aktualisieren
> update polygon -- aktualisiere "polygon"
> set geom = buffer( -- ändere "geom" = [...]
> makepoint(
> 324567.25 -- neue x_koord
> , 5892345 -- neue y_koord
> )
> , 1234 -- neuer Radius
> )
> -- Restriktion (falls nicht angegeben werden alle Objekte geändert)
> where fid = 2 -- nur Kreis 2 aktualisieren
> ;
>
> Nach Einfügen oder Ändern mittels SQL ist die Ansicht zu aktualisieren,
> damit die Änderungen in der Kartenansicht sichtbar werden.
>
> Abschließend kann ich jedem/r engagierten GIS-Nutzer/in nur an Herz legen:
>
> Lern SQL !!!
> Inkl. der S(patial)T(able) Befehle der SpatiaLite-Erweiterung für
> SQLite, auf die auch QGIS aufbaut.
> (URL: http://www.gaia-gis.it/gaia-sins/spatialite-sql-latest.html)
>
> Das macht das GIS-Leben in vielerlei Hinsicht einfacher und erspart das
> lästige Ausprobieren von Plug-Ins, die dann doch nicht genau das erfüllen,
> was erwartet wird.
>
> Grüße
>
> Bernd
>
>
>
>
>
> --
> ....................................................................
> FOSSGIS Veranstaltungen
> https://www.fossgis.de/news/fossgis-events/
>
> FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem
> GIS-Bereich und Freier Geodaten!
> https://www.fossgis.de/ https://twitter.com/FOSSGIS_Verein
>
> ____________________________________________________________________
> FOSSGIS-Talk-Liste mailing list
> FOSSGIS-Talk-Liste at fossgis.de
> https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste
Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste