In den vorangegangenen Abschnitten wurden drei Kategorien räumlicher Funktionen vorgestellt:
In diesem Abschnitt werden drei weitere Kategorien vorgestellt:
Verschiedene räumliche Funktionen geben Informationen zurück über die Beziehung oder den Vergleich zwischen verschiedenen geographischen Merkmalen. Die meisten dieser Funktionen oder Prädikate sind Boolesche Funktionen. In diesem Abschnitt werden die Prädikate im allgemeinen und anschließend die Funktionen im einzelnen beschrieben.
Prädikatfunktionen geben 1 (TRUE) zurück, wenn ein Vergleich die Kriterien der Funktion erfüllt oder 0 (FALSE), wenn der Vergleich fehlschlägt. Prädikate, die einen Test auf eine räumliche Beziehung durchführen, vergleichen Paare von Geometrien, die einen unterschiedlichen Typ oder unterschiedliche Dimensionen haben können.
Prädikate vergleichen die X- und Y-Koordinaten der übergebenen Geometrien. Die Z-Koordinaten und das Maß (sofern vorhanden) werden nicht berücksichtigt. Auf diese Weise können Geometrien, die Z-Koordinaten oder ein Maß haben, mit anderen Geometrien ohne diese Merkmale verglichen werden.
Das Dimensionally Extended 9 Intersection Model (DE-9IM) 1 ist ein mathematischer Ansatz, der die paarweise räumliche Beziehung zwischen Geometrien mit verschiedenen Typen und Dimensionen definiert. Dieses Modell drückt die räumliche Beziehung zwischen allen Typen von Geometrien als paarweise Schnittmengen ihrer Innenbereiche, Begrenzungen und Außenbereiche unter Berücksichtigung der Dimension der resultierenden Schnittmengen aus.
Die gegebenen Geometrien a und b: I(a ), B(a ) und E( a ) stellen Innenbereich, die Begrenzung und den Außenbereich von a dar. I(b), B(b) und E(b) stellen den Innenbereich, die Begrenzung und den Außenbereich von b dar. Die Schnittmengen von I(a), B(a) und E(a) mit I(b), B(b) und E(b) ergeben eine 3-mal-3-Matrix. Jede Schnittmenge kann Geometrien verschiedener Dimensionen ergeben. Die Schnittmenge der Begrenzungen zweier Polygone besteht beispielsweise aus einem Punkt und einer Linienfolge; in diesem Fall gibt die dim-Funktion die maximale Dimension 1 zurück.
Die dim-Funktion gibt einen Wert 1, 0, 1 oder 2 zurück. Die 1
entspricht dem Null-Set oder dim(null); dieses Ergebnis wird
zurückgegeben, wenn keine Schnittmenge gefunden wurde.
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
Innenbereich
|
dim(I(a) &intersect. I(b))
|
dim(I(a) &intersect. B(b))
|
dim(I(a) &intersect. E(b))
|
Begrenzung
|
dim(B(a) &intersect. I(b))
|
dim(B(a) &intersect. B(b))
|
dim(B(a) &intersect. E(b))
|
Außenbereich
|
dim(E(a) &intersect. I(b))
|
dim(E(a) &intersect. B(b))
|
dim(E(a) &intersect. E(b))
|
Sie können das Ergebnis der räumlichen Beziehungsprädikate verstehen oder überprüfen, indem Sie die Ergebnisse des Prädikats mit einer Mustermatrix vergleichen, die die akzeptablen Werte des DE-9IM darstellt.
Die Mustermatrix enthält die akzeptablen Werte für alle Schnittmengen-Matrixzellen. Die möglichen Musterwerte sind:
Die folgende Mustermatrix für das Prädikat ST_Within enthält
beispielsweise die Werte T, F und *.
Tabelle 40. Matrix für ST_Within
Die Mustermatrix für das Prädikat ST_Within für Geometriekombinationen. | ||||
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
T
|
*
|
F
|
|
Begrenzung
|
*
|
*
|
F
|
|
Außenbereich
|
*
|
*
|
*
|
Das Prädikat ST_Within gibt TRUE zurück, wenn sich die Innenbereiche der beiden Geometrien schneiden und wenn der Innenbereich und die Begrenzung von a sich nicht mit dem Außenbereich von b schneidet. Alle weitere Bedingungen sind nicht von Bedeutung.
Jedes Prädikat hat mindestens eine Mustermatrix; einige erfordern jedoch auch mehrere Matrizen, um die Beziehungen zwischen verschiedenen Kombinationen von Geometrietypen zu beschreiben.
ST_Equals gibt 1 (TRUE) zurück, wenn zwei Geometrien des gleichen Typs identische Koordinaten X,Y haben.
Abbildung 14. ST_Equals. Geometrien sind gleich, wenn sie übereinstimmende Koordinaten X,Y haben.
Tabelle 41. Matrix für Gleichheit
Die DE-9IM Mustermatrix für die Gleichheit stellt sicher, daß sich die Innenbereiche schneiden und daß kein Teil des Innenbereichs oder der Begrenzung den Außenbereich des anderen schneidet. | ||||
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
T
|
*
|
F
|
|
Begrenzung
|
*
|
*
|
F
|
|
Außenbereich
|
F
|
F
|
*
|
Weitere Informationen hierzu finden Sie im Abschnitt ST_Equals.
ST_OrderingEquals vergleicht zwei Geometrien und gibt 1 (TRUE) zurück, wenn die Geometrien gleich sind und die Koordinaten die gleiche Reihenfolge haben; andernfalls wird 0 (FALSE) zurückgegeben. Weitere Informationen hierzu finden Sie im Abschnitt ST_OrderingEquals.
ST_Disjoint gibt 1 (TRUE) zurück, wenn die Schnittmenge der beiden Geometrien eine leere Gruppe ist.
Abbildung 15. ST_Disjoint. Geometrien sind nicht verbunden, wenn sie einander nicht schneiden.
Tabelle 42. Matrix für ST_Disjoint
Die Mustermatrix des Prädikats ST_Disjoint gibt nur an, daß sich weder die Innenbereiche noch die Begrenzungen der Geometrien schneiden. | ||||
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
F
|
F
|
*
|
|
Begrenzung
|
F
|
F
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Weitere Informationen hierzu finden Sie im Abschnitt ST_Disjoint.
ST_Intersects gibt 1 (TRUE) zurück, wenn die Schnittmenge nicht zu einer leeren Gruppe führt. ST_Intersects gibt genau das entgegengesetzte Ergebnis von ST_Disjoint zurück.
Das Prädikat ST_Intersects gibt TRUE zurück, wenn die Bedingung einer
der folgenden Mustermatrizen TRUE zurückgibt.
Tabelle 43. Matrix für ST_Intersects (1)
Das Prädikat ST_Intersects gibt TRUE zurück, wenn sich die Innenbereiche der beiden Geometrien schneiden. | ||||
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
T
|
*
|
*
|
|
Begrenzung
|
*
|
*
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Tabelle 44. Matrix für ST_Intersects (2)
Das Prädikat ST_Intersects gibt TRUE zurück, wenn die Begrenzung der ersten Geometrie die Begrenzung der zweiten Geometrie schneidet. | ||||
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
*
|
T
|
*
|
|
Begrenzung
|
*
|
*
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Tabelle 45. Matrix für ST_Intersects (3)
Das Prädikat ST_Intersects gibt TRUE zurück, wenn die Begrenzung der ersten Geometrie den Innenbereich der zweiten Geometrie schneidet. | ||||
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
*
|
*
|
*
|
|
Begrenzung
|
T
|
*
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Tabelle 46. Matrix für ST_Intersects (4)
Das Prädikat ST_Intersects gibt TRUE zurück, wenn sich die Begrenzungen der beiden Geometrien schneiden. | ||||
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
*
|
*
|
*
|
|
Begrenzung
|
*
|
T
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Weitere Informationen hierzu finden Sie im Abschnitt ST_Intersects.
Diese Funktion gibt 1 (TRUE) zurück, wenn sich die Umschläge der beiden Geometrien schneiden. Es ist eine hilfreiche Funktion, die ST_Intersects (ST_Envelope(g1),ST_Envelope(g2)) effizient implementiert. Weitere Informationen hierzu finden Sie im Abschnitt EnvelopesIntersect.
ST_Touches gibt 1 (TRUE) zurück, wenn keiner der gemeinsamen Punkte der beiden Geometrien den Innenbereich beider Geometrien schneidet. Mindestens eine der Geometrien muß eine Linienfolge, ein Polygon, eine Mehrlinienfolge oder ein Multipolygon sein.
Die Mustermatrizen zeigen, daß das Prädikat ST_Touches TRUE zurückgibt,
wenn sich die Innenbereiche der Geometrie nicht schneiden und die Begrenzungen
einer der beiden Geometrien den Innenbereich oder die Begrenzung der anderen
Geometrie schneiden.
Tabelle 47. Matrix für ST_Touches (1)
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
F
|
T
|
*
|
|
Begrenzung
|
*
|
*
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Tabelle 48. Matrix für ST_Touches (2)
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
F
|
*
|
*
|
|
Begrenzung
|
T
|
*
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Tabelle 49. Matrix für ST_Touches (3)
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
F
|
*
|
*
|
|
Begrenzung
|
*
|
T
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Weitere Informationen hierzu finden Sie im Abschnitt ST_Touches.
ST_Overlaps vergleicht zwei Geometrien der gleichen Dimension. Sie gibt 1 (TRUE) zurück, wenn die Schnittmenge eine Geometrie ergibt, die sich von beiden Geometrien unterscheidet, aber die gleiche Dimension hat.
Die Mustermatrix in Tabelle 50 gilt für die Überlagerungen Polygon/Polygon,
Mehrpunktangabe/Mehrpunktangabe und Multipolygon/Multipolygon. Für
diese Kombinationen gibt das Überlagerungsprädikat TRUE zurück, wenn der
Innenbereich beider Geometrien den Innenbereich und Außenbereich der anderen
Geometrie schneidet.
Tabelle 50. Matrix für ST_Overlaps (1)
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
T
|
*
|
T
|
|
Begrenzung
|
*
|
*
|
*
|
|
Außenbereich
|
T
|
*
|
*
|
Die Mustermatrix in Tabelle 51 gilt für die Überlagerungen Linienfolge/Linienfolge und
Mehrlinienfolge/Mehrlinienfolge. In diesem Fall muß die Schnittmenge
der Geometrien eine Geometrie mit der Dimension 1 (andere Linienfolge)
ergeben. Wenn die Dimension der Schnittmenge der Innenbereiche 1 ist,
gibt das Prädikat ST_Overlaps FALSE zurück; das Prädikat ST_Crosses
gibt jedoch TRUE zurück.
Tabelle 51. Matrix für ST_Overlaps (2)
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
1
|
*
|
T
|
|
Begrenzung
|
*
|
*
|
*
|
|
Außenbereich
|
T
|
*
|
*
|
Weitere Informationen hierzu finden Sie im Abschnitt ST_Overlaps.
ST_Crosses gibt 1 (TRUE) zurück, wenn die Schnittmenge eine Geometrie ergibt, deren Dimension um eins niedriger ist als die maximale Dimension der beiden Quellenobjekte und wenn die Schnittmenge im Innenbereich beider Quellengeometrien liegt. ST_Crosses gibt nur 1 (TRUE) zurück für Vergleiche Mehrpunktangabe/Polygon, Mehrpunktangabe/Linienfolge, Linienfolge/Linienfolge, Linienfolge/Polygon und Linienfolge/Multipolygon.
Die Mustermatrix in Tabelle 52 gilt für Mehrpunktangabe/Linienfolge,
Mehrpunktangabe/Mehrlinienfolge, Mehrpunktangabe/Polygon,
Mehrpunktangabe/Multipolygon, Linienfolge/Polygon und
Linienfolge/Multipolygon. Die Matrix gibt an, daß sich die
Innenbereiche schneiden müssen und daß der Innenbereich der primären Geometrie
(Geometrie a ) den Außenbereich der sekundären Geometrie (Geometrie
b ) schneiden muß.
Tabelle 52. Matrix für ST_Crosses (1)
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
T
|
*
|
T
|
|
Begrenzung
|
*
|
*
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Die Mustermatrix in Tabelle 53 gilt für die Überlagerungen Linienfolge/Linienfolge,
Linienfolge/Mehrlinienfolge und Mehrlinienfolge/Mehrlinienfolge. Die
Matrix gibt an, daß die Dimension der Schnittmenge der Innenbereiche 0
(Berührung in einem Punkt) sein muß. Wenn die Dimension dieser
Schnittmenge 1 ist (Schnitt in einer Linienfolge), gibt das Prädikat
ST_Crosses FALSE zurück; das Prädikat ST_Overlaps gibt jedoch TRUE
zurück.
Tabelle 53. Matrix für ST_Crosses (2)
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
0
|
*
|
*
|
|
Begrenzung
|
*
|
*
|
*
|
|
Außenbereich
|
*
|
*
|
*
|
Weitere Informationen hierzu finden Sie im Abschnitt ST_Crosses.
ST_Within gibt 1 (TRUE) zurück, wenn die Geometrie vollständig in der zweiten Geometrie enthalten ist. ST_Within gibt genau das entgegengesetzte Ergebnis von ST_Contains zurück.
Die Mustermatrix von ST_Within gibt an, daß sich die Innenbereiche der
beiden Geometrien schneiden müssen und daß der Innenbereich und die Begrenzung
der primären Geometrie (Geometrie a ) den Außenbereich der
sekundären Geometrie (Geometrie b ) nicht schneiden dürfen.
Tabelle 54. Matrix für ST_Within
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
T
|
*
|
F
|
|
Begrenzung
|
*
|
*
|
F
|
|
Außenbereich
|
*
|
*
|
*
|
Weitere Informationen hierzu finden Sie im Abschnitt ST_Within.
ST_Contains gibt 1 (TRUE) zurück, wenn die zweite Geometrie vollständig in der ersten Geometrie enthalten ist. ST_Contains gibt genau das entgegengesetzte Ergebnis von ST_Within zurück.
Die Mustermatrix von ST_Contains gibt an, daß sich die Innenbereiche der
beiden Geometrien schneiden müssen und daß der Innenbereich und die Begrenzung
der zweiten Geometrie (Geometrie b ) den Innenbereich der primären
Geometrie (Geometrie a ) nicht schneiden dürfen.
Tabelle 55. Matrix für ST_Contains
|
|
b
|
|
|
|
|
Innenbereich
|
Begrenzung
|
Außenbereich
|
a
|
Innenbereich
|
T
|
*
|
*
|
|
Begrenzung
|
*
|
*
|
*
|
|
Außenbereich
|
F
|
F
|
*
|
Weitere Informationen hierzu finden Sie im Abschnitt ST_Contains.
Die Funktion ST_Relate vergleicht zwei Geometrien und gibt 1 (TRUE) zurück, wenn die Geometrien die von der Mustermatrix-Zeichenfolge DE-91M definierten Bedingungen erfüllen; andernfalls wird 0 (FALSE) zurückgegeben. Weitere Informationen hierzu finden Sie im Abschnitt ST_Relate.
Die Funktion ST_Distance liefert die Mindestentfernung, die zwei nicht verbundene Merkmale trennt. Wenn die Merkmale nicht getrennt sind, meldet die Funktion den Mindestabstand 0.
ST_Distance könnte beispielsweise die kürzeste Entfernung angeben, mit der ein Flugzeug die Strecken zwischen zwei Standorten überbrücken könnte. Abbildung 20 verdeutlicht diese Angabe.
Abbildung 20. Mindestentfernung zwischen zwei Städten. ST_Distance kann die Koordinaten der Standorte von Los Angeles und Chicago als Eingabe verwenden und einen Wert zurückgeben, der die Mindestentfernung zwischen diesen beiden Standorten angibt.
Weitere Informationen hierzu finden Sie im Abschnitt ST_Distance.
Der DB2 Spatial Extender bietet Prädikate und Umsetzungsfunktionen, die neue Geometrien aus vorhandenen generieren.
Die Funktion ST_Intersection gibt die Schnittmenge der beiden Geometrien zurück. Die Schnittmenge wird immer als Gruppe zurückgegeben, die die Mindestdimension der Quellengeometrien darstellt. Für eine Linienfolge, die ein Polygon schneidet, gibt die Funktion ST_Intersection beispielsweise eine Mehrlinienfolge zurück, die aus einem Abschnitt dieser Linienfolge besteht, der zum Innenbereich und zur Begrenzung des Polygons gehört. Die Mehrlinienfolge enthält mehrere Linienfolgen, wenn die Quellenlinienfolge das Polygon mit zwei oder mehr nicht zusammenhängenden Segmenten schneidet. Wenn sich die Geometrien nicht schneiden oder wenn die Schnittmenge eine Dimension ergibt, die kleiner ist als die der Quellengeometrien, wird eine leere Geometrie zurückgegeben.
Abbildung 21. ST_Intersection. Beispiele zur Funktion ST_Intersection.
Weitere Informationen hierzu finden Sie im Abschnitt ST_Intersection.
Die Funktion ST_Difference gibt den Teil der primären Geometrie zurück, der nicht von der zweiten Geometrie geschnitten wird. Dies entspricht der logischen räumlichen Verknüpfung AND NOT. Die Funktion ST_Difference arbeitet nur mit Geometrien gleicher Dimensionen und gibt eine Gruppe zurück, die die gleiche Dimension hat wie die Quellengeometrien. Falls die Quellengeometrien gleich sind, wird eine leere Geometrie zurückgegeben.
Weitere Informationen hierzu finden Sie im Abschnitt ST_Difference.
Die Funktion ST_Union gibt die Verknüpfungsmenge der beiden Geometrien zurück. Dies entspricht der logischen räumlichen Funktion OR. Die Quellengeometrien müssen die gleiche Dimension haben. ST_Union gibt das Ergebnis immer als Gruppe zurück.
Weitere Informationen hierzu finden Sie im Abschnitt ST_Union.
Die Funktion ST_Buffer generiert eine Geometrie durch Einkreisen einer Geometrie mit einem angegebenen Abstand. Ein Polygon ergibt sich, wenn eine primäre Geometrie gepuffert wird oder wenn die Elemente einer Gruppe eng genug beieinander liegen, so daß sich alle Polygonpuffer überlappen. Wenn genügend Abstand zwischen den Elementen einer gepufferten Gruppe liegt, ergeben sich einzelne Pufferpolygone; in diesem Fall gibt die Funktion ST_Buffer ein Multipolygon zurück.
Die Funktion ST_Buffer verwendet positive und negative Abstände; für negative Puffer werden jedoch nur Geometrien mit der Dimension 2 (Polygone und Multipolygone) angewendet. Der absolute Wert des Pufferabstands wird verwendet, wenn die Dimension der Quellengeometrie weniger als 2 (alle Geometrien außer Polygon oder Multipolygon) beträgt.
Im allgemeinen generieren positive Pufferabstände für äußere Ringe Polygonringe, die sich außerhalb der Mitte der Quellengeometrie befinden; negative Pufferabstände generieren Polygon- oder Multipolygonringe zur Mitte hin. Für innere Ringe eines Polygons oder Multipolygons generiert ein positiver Pufferabstand einen Pufferring zur Mitte hin, und ein negativer Pufferabstand generiert einen Pufferring außerhalb der Mitte.
Der Pufferungsprozeß mischt überlappende Polygone. Negative Abstände größer als die Hälfte der maximalen Breite des Innenbereichs eines Polygons ergeben eine leere Geometrie.
Weitere Informationen hierzu finden Sie im Abschnitt ST_Buffer.
Für Geometrien mit Maßen kann die Position eines bestimmten Maßes mit der Funktion LocateAlong ermittelt werden. LocateAlong gibt die Position als Mehrpunktangabe zurück. Wenn die Dimension der Quellengeometrie 0 ist (beispielsweise ein Punkt und eine Mehrpunktangabe), ist eine exakte Übereinstimmung erforderlich; für diese Punkte wird ein übereinstimmendes Maß als Mehrpunktangabe zurückgegeben. Für Quellengeometrien mit einer Dimension größer als Null wird die Position interpoliert. Wenn das Maß beispielsweise als 5.5 eingegeben wird und die Maße an den Scheitelpunkten einer Linienfolge 3, 4, 5, 6 und 7 sind, wird der interpolierte Punkt, der exakt zwischen den Scheitelpunkten 5 und 6 liegt, zurückgegeben.
Weitere Informationen hierzu finden Sie im Abschnitt LocateAlong.
Die Funktion LocateBetween gibt entweder die Gruppe der Pfade oder Positionen zurück zwischen zwei Maßen einer Quellengeometrie mit Maßen. Wenn die Dimension der Quellengeometrie 0 ist, gibt LocateBetween eine Mehrpunktangabe zurück mit allen Punkten, deren Maß zwischen den beiden Quellenmaßen liegt. Für Quellengeometrien mit einer Dimension größer als 0 gibt LocateBetween eine Mehrlinienfolge zurück, wenn ein Pfad interpoliert werden kann; andernfalls gibt LocateBetween eine Mehrpunktangabe mit den Punktpositionen zurück. Ein leerer Punkt wird zurückgegeben, wenn LocateBetween keinen Pfad interpolieren kann oder keine Position zwischen den Maßen gefunden wird. LocateBetween führt eine inklusive Suche der Geometrien durch; die Maße der Geometrien müssen daher größer oder gleich dem Maß from und kleiner oder gleich dem Maß to sein.
Weitere Informationen hierzu finden Sie im Abschnitt LocateBetween.
Die Funktion ST_ConvexHull gibt ein konvexes Hülsenpolygon einer Geometrie zurück, die mindestens drei Scheitelpunkte haben muß, die eine konvexe Form bilden. Wenn die Scheitelpunkte der Geometrie keine konvexe Form bilden, gibt ST_ConvexHull Null zurück. ST_ConvexHull ist häufig der erste Schritt bei der Mosaikbildung zum Erstellen eines TIN-Netzwerks aus einer Reihe von Punkten.
Weitere Informationen hierzu finden Sie im Abschnitt ST_ConvexHull.
Generiert ein Polygon aus einer Linienfolge. Weitere Informationen hierzu finden Sie im Abschnitt ST_Polygon.
Der DB2 Spatial Extender unterstützt drei GIS-Datenaustauschformate:
Der DB2 Spatial Extender hat verschiedene Funktionen, die Geometrien aus Textbeschreibungen generieren.
Die Textdarstellung ist eine ASCII-Zeichenfolge. Sie ermöglicht den Austausch der Geometrie in ASCII-Textform. Diese Funktionen erfordern keine Definition spezieller Programmstrukturen für die Zuordnung einer binären Darstellung. Diese Funktionen können daher in einem 3GL- oder 4GL-Programm verwendet werden.
Die Funktion ST_AsText setzt eine vorhandene Geometrie um in eine Textdarstellung. Weitere Informationen hierzu finden Sie im Abschnitt ST_AsText.
Eine ausführliche Beschreibung der bekannten Textdarstellungen finden Sie im Abschnitt Die bekannten OGC-Textdarstellungen.
Der DB2 Spatial Extender hat verschiedene Funktionen, die Geometrien aus bekannten binären Darstellungen (WKB-Darstellungen) generieren.
Die bekannte Binärdarstellung ist ein fortlaufender Byte-Datenstrom. Sie ermöglicht den Austausch der Geometrie zwischen einem ODBC-Client und einer SQL-Datenbank in binärer Form. Diese Geometriefunktionen erfordern die Definition von C-Strukturen für die Zuordnung der binären Darstellung. Sie sind somit für die Verwendung in einem 3GL-Programm konzipiert und eignen sich nicht für 4GL-Umgebungen.
Die Funktion ST_AsBinary setzt eine vorhandene Geometrie um in eine Binärdarstellung. Weitere Informationen hierzu finden Sie im Abschnitt ST_AsBinary.
Eine ausführliche Beschreibung der bekannten Binärdarstellungen finden Sie im Abschnitt Die bekannten OGC-Binärdarstellungen (WKB).
Der DB2 Spatial Extender hat verschiedene Funktionen, die Geometrien aus ESRI-Formdarstellungen generieren. Die ESRI-Formdarstellung unterstützt zusätzlich zu den von Text- und Binärdarstellungen unterstützten zweidimensionalen Darstellungen auch Z-Koordinaten und Maße.
Die allgemeine Syntax dieser Funktionen ist gleich. Das erste Argument ist die Formdarstellung, die als BLOB-Datentyp eingegeben wird. Das zweite Argument ist die Kennung des räumlichen Bezugs, die der Geometrie zugeordnet werden soll. Die Funktion GeometryFromShape hat beispielsweise die folgende Syntax:
GeometryFromShape(shapegeometry, SRID)
Zur Zuordnung der Binärdarstellung erfordern diese Formfunktionen die Definition einer C-Struktur. Sie sind somit für die Verwendung in einem 3GL-Programm konzipiert und eignen sich nicht für 4GL-Umgebungen.
Die Funktion AsBinaryShape setzt einen Geometriewert um in eine ESRI-Formdarstellung. Weitere Informationen hierzu finden Sie im Abschnitt AsBinaryShape.
Eine ausführliche Beschreibung der Formdarstellungen finden Sie im Abschnitt Die ESRI-Formdarstellungen.