Benutzer- und Referenzhandbuch

Wie ein räumlicher Index erstellt wird

Ein räumlicher Index wird durch Verwendung von Umschlägen erstellt. Der Umschlag ist selbst eine Geometrie und stellt den Minimal- und Maximalbereich für X und Y einer Geometrie dar. Für die meisten Geometrien ist der Umschlag ein Kasten; für horizontale und vertikale Linienfolgen ist es jedoch eine Zwei-Punkt-Linienfolge. Für Punkte ist der Umschlag selbst ein Punkt. Weitere Informationen zu Umschlägen finden Sie im Abschnitt Umschlag.

Der räumliche Index wird in einer räumlichen Spalte konstruiert; hierzu werden ein oder mehrere Einträge für die Schnittpunkte der Umschläge der einzelnen Geometrien mit dem Gitter vorgenommen. Ein Schnittpunkt wird als interne ID der Geometrie und als Mindestkoordinaten für X und Y der geschnittenen Gitterzellen aufgezeichnet. Das Polygon in Abbildung 7 schneidet beispielsweise das Gitter an den Koordinaten (20,30), (30,30), (40,30), (20,40), (30,40), (40,40), (20,50), (30,50) und (40,50). Siehe Tabelle 38 für Mindestwerte der X- und Y-Koordinaten für alle Geometrien in Abbildung 7.

Wenn mehrere Gitterstufen vorhanden sind, versucht der DB2 Spatial Extender, die niedrigste mögliche Gitterstufe zu verwenden. Wenn eine Geometrie vier oder mehr Gitterzellen auf einer angegebenen Ebene geschnitten hat, wird sie auf die nächsthöhere Stufe hochgestuft. Bei einem räumlichen Index mit den drei Gitterstufen 10.0e0, 100.0e0 und 1000.0e0 schneidet der DB2 Spatial Extender daher zunächst jede Geometrie mit dem Gitter der Ebene 10.0e0. Wenn eine Geometrie vier oder mehr 10.0e0-Gitterzellen schneidet, wird sie hochgestuft und mit dem Gitter der Ebene 100.0e0 geschnitten. Wenn sich vier oder mehr Schnittpunkte auf der Ebene 100.0e0 ergeben, wird die Geometrie auf die Ebene 1000.0e0 hochgestuft. Auf der Ebene 1000.0e0 müssen die Schnittpunkte im räumlichen Index eingegeben werden, da dies die höchste mögliche Ebene ist.

Abbildung 7 verdeutlicht, wie vier verschiedene Arten von Geometrien ein 10.0e-Gitter schneiden. Alle 23 Schnittpunkte für die vier Geometrien werden im räumlichen Index aufgezeichnet.

Abbildung 7. Anwendung einer 10.0e0-Gitterstufe

[Abbildung]

Tabelle 38 listet die Geometrien und ihre entsprechenden Gitterschnittpunkte auf. Die Umschläge der vier verschiedenen Geometrietypen schneiden das 10.0e-Gitter. Die Mindestkoordinaten für X und Y jeder geschnittenen Gitterzelle werden in dem räumlichen Index eingegeben.

Tabelle 38. Die 10.0e0-Gitterzelleneinträge für die Beispielgeometrien
Geometrie Gitter X Gitter Y

Polygon

20.0

30.0

Polygon

30.0

30.0

Polygon

40.0

30.0

Polygon

20.0

40.0

Polygon

30.0

40.0

Polygon

40.0

40.0

Polygon

20.0

50.0

Polygon

30.0

50.0

Polygon

40.0

50.0

Vertikale Linienfolge

50.0

30.0

Vertikale Linienfolge

50.0

40.0

Vertikale Linienfolge

50.0

50.0

Punkt

20.0

20.0

Horizontale Linienfolge

20.0

20.0

Horizontale Linienfolge

30.0

20.0

Horizontale Linienfolge

40.0

20.0

Horizontale Linienfolge

50.0

20.0

Horizontale Linienfolge

60.0

20.0

Horizontale Linienfolge

20.0

30.0

Horizontale Linienfolge

30.0

30.0

Horizontale Linienfolge

40.0

30.0

Horizontale Linienfolge

50.0

30.0

Horizontale Linienfolge

60.0

30.0

Abbildung 8 zeigt, wie die Anzahl der Schnittpunkte erheblich auf acht reduziert werden kann durch Hinzufügen der Gitterstufen 30.0e0 und 60.0e0. In diesem Fall werden das als Geometrie 1 gekennzeichnete Polygon auf die Gitterstufe 30.0e0 und die als Geometrie 4 gekennzeichnete Linienfolge auf die Gitterstufe 60.0e0 hochgestuft. Statt der neun und zehn Schnittpunkte, die die Geometrien auf der Stufe 10.0e0 hatten, haben sie nach dem Hochstufen nur noch zwei Schnittpunkte.

Abbildung 8. Auswirkung beim Hinzufügen der Gitterstufen 30.0e0 und 60.0e0. Der Umschlag des als Geometrie 1 gekennzeichneten Umschlags schneidet neun Gitterzellen. Der Umschlag der als Geometrie 2 vertikalen Linienfolge schneidet drei Gitterzellen. Der Umschlag des als Geometrie 3 gekennzeichneten Punkts schneidet nur eine Gitterzelle. Der Umschlag der als Geometrie 4 gekennzeichneten Linienfolge schneidet zehn Gitterzellen.

[Abbildung]

Der DB2 Spatial Extender verwendet die in der Anweisung CREATE INDEX angegebenen Gitterstufenparameter und prüft jedes räumliche Objekt, um die Koordinaten und die Anzahl der Gitterblöcke, in denen die Objekte enthalten sind, festzustellen. In Abbildung 8 sind die Gitterstufen 10.0e0, 30.0e0 und 60.0e0 dargestellt mit zunehmenden Linienstärken und unterschiedlichen Grauschattierungen. Die Zellenschnittpunkte der vertikalen Linienfolgen- und des Punktumschlags werden in dem Index auf der Stufe 10.0e0 eingegeben, da beide weniger als vier Schnittpunkte erzeugen. Das Polygon schneidet neun 10.0e0-Gitterzellen und wird daher hochgestuft auf die 30.0e0-Stufe. Auf dieser Stufe schneidet das Polygon zwei Gitterzellen, die in den Index eingegeben werden. Die als Geometrie 4 gekennzeichnete Linienfolge schneidet zehn 10.0e0-Gitterzellen und wird daher hochgestuft auf die 30.0e0-Gitterstufe. Auch auf dieser Stufe schneidet sie noch sechs Gitterzellen und wird daher erneut hochgestuft auf die 60.0e0-Gitterstufe, wo sie noch zwei Schnittpunkte generiert. Die 60.0e0-Gitterschnittpunkte der Linienfolge werden anschließend in den Index eingegeben. Hätte die Linienfolge auf dieser Ebene vier oder mehr Schnittpunkte generiert, wären diese dennoch in den Index eingetragen worden, da dies die höchste Stufe ist, auf die eine Geometrie hochgestuft werden kann.

Tabelle 39. Die Schnittpunkte der Geometrien im dreistufigen Index

Geometrie

Gitter X

Gitter Y

Die Schnittpunkte zwischen der vertikalen Linienfolge und dem Punkt auf der Stufe 1 (10.0e0-Gittergröße)

2

50.0

30.0

2

50.0

40.0

2

50.0

50.0

3

20.0

20.0

Die Schnittpunkte des Polygons auf der Stufe 2 (30.0e0-Gittergröße)
1 0.0 30.0
1 30.0 30.0
Die Schnittpunkte der Linienfolge auf der Stufe 3 (60.0e0-Gittergröße)
4 0.0 0.0
4 60.0 0.0

Der DB2 Spatial Extender erstellt nicht wirklich eine Polygongitterstruktur. Der DB2 Spatial Extender manifestiert jede Gitterstufe parametrisch durch die Definition des Ursprungs am Abstand X,Y des räumlichen Bezugssystems der Spalten. Anschließend wird das Gitter in den positiven Koordinatenbereich erweitert. Mit einem parametrischen Gitter generiert der DB2 Spatial Extender die Schnittpunkte mathematisch.


[ Seitenanfang | Vorherige Seite | Nächste Seite | Inhaltsverzeichnis | Index ]