31.01.2014 Aufrufe

Bachelorarbeit (pdf, 0,9 MB) - Universität Osnabrück

Bachelorarbeit (pdf, 0,9 MB) - Universität Osnabrück

Bachelorarbeit (pdf, 0,9 MB) - Universität Osnabrück

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

4.1 PostGIS 29<br />

Dann wird eine PostGIS-Funktion genutzt, um eine Geometriespalte hinzuzufügen, in<br />

der die Koordinaten der Stadt gespeichert werden sollen. Die Funktion AddGeometry-<br />

Column wird mit Hilfe der SELECT-Anweisung aufgerufen. Die benötigten Parameter<br />

lauten:<br />

• Tabellenname<br />

• Spaltenname<br />

• Spatial Reference System Identier (SRID)<br />

• Geometrietyp<br />

• Dimension<br />

SELECT AddGeometryColumn ('staedte', 'XYCoordinates', -1, 'POINT', 2);<br />

Durch die aufgeführten Parameter wird in der Tabelle staedte eine Spalte XYCoordinates<br />

hinzugefügt, die einen zweidimensionalen Punkt repräsentiert [OGC 09c, vgl.<br />

S. 15 .]. PostGIS verwendet ein Spatial Reference System (SRS), welches u.a. für<br />

Koordinaten-Projektionen und Transformationen genutzt wird. Dabei stellt der Wert<br />

des Parameters SRID eine Verknüpfung (Schlüssel) zu der Tabelle spatial_ref_sys dar.<br />

Wird diese Funktionalität von PostGIS nicht verwendet, wird der Parameter auf -1<br />

gesetzt [OGC 09c, vgl. S. 13 .]. Um nun Daten in der erzeugten Tabelle hinzuzufügen,<br />

kann man sich der Funktion GeometryFromText bedienen, die mittels INSERT-Statement<br />

benutzt wird und die Geometriedaten im WKT-Format speichert.<br />

INSERT INTO staedte VALUES<br />

(1, 'Berlin', GeometryFromText('POINT (10 10)', -1));<br />

Als Parameter der Funktion GeometryFromText wird hier die WKT-Repräsentation der<br />

Geometrie, in diesem vereinfachten Beispiel ein zweidimensionaler Punkt mit den Koordinaten<br />

10, 10, sowie -1 für SRID übergeben. Zusammen mit dem INSERT-Statement<br />

wird ein Datensatz in der Tabelle staedte angelegt mit den Werten 1 als Primärschlüssel,<br />

Berlin als Name und ein zweidimensionaler Punkt mit Koordinaten 10, 10<br />

als Geometrierepräsentation [OGC 09c, vgl. S. 11 .].<br />

Um die Koordinateninformationen wieder auszulesen, bieten sich verschiedene Möglichkeiten<br />

an. Mittels der Funktion AsText wird der Wert der Geometriespalte wieder<br />

als WKT-Format zurückgegeben. Die Funktionen st_x bzw. st_y liefern den Wert der<br />

x-Koordinate bzw. y-Koordinate zurück [Mitc 08, vgl. S. 342 .]. Möchte man die Geometriespalte<br />

im SVG-Format erhalten, wählt man die Funktion AsSVG. Alle genannten<br />

Funktionen werden mit dem SELECT-Statement aufgerufen:<br />

SELECT AsSVG(XYCoordinates) FROM staedte;<br />

Analog dazu werden auch Analyse-Funktionen aufgerufen. Die Funktion Distance gibt<br />

z.B. den Abstand zweier Punkte zurück. Mit Hilfe des folgenden Aufrufs werden die<br />

Namen aller Städte ausgegeben, deren Abstand zu einem Referenzpunkt (refX, refY)<br />

kleiner als 10 ist:

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!