Datenaustausch und Interoperabililtät von Geodaten

Preview:

DESCRIPTION

Datenaustausch und Interoperabililtät von Geodaten. ISO DIS 19107: Spatial Schema. Datenaustausch zwischen GIS. Zur Kommunikation zwischen Rechenersystemen sind Metasprachen (XML, GML, ...) vonnöten Metasprachen siehe Vorlesungen zu GISIII - PowerPoint PPT Presentation

Citation preview

Datenaustausch und Interoperabililtät von Geodaten

ISO DIS 19107:Spatial Schema

Datenaustausch zwischen GIS

Zur Kommunikation zwischen Rechenersystemen sind Metasprachen (XML, GML, ...) vonnöten

Metasprachen siehe Vorlesungen zu GISIII

Durch Metasprachen können Daten zwar übertragen, aber nicht strukturiert werden

Metadaten - Standards

Definition nach ISO DIS 19115:

... Schema, das erforderlich ist, um geographische Informationen und Dienste zu beschreiben.

Information über die Identifikation, die Ausdehnung, die Qualität, das räumliche und zeitliche Schema, die räumliche Referenz und Verteilung der digitalen geographischen Daten.

Spatial Schema

Spatial Schema: Ist ein internationaler Standard von Konzeptionellen Schemata um geographische Merkmale (features) zu beschreiben und zu verändern

Feature: Abstraktion eines Realweltphänomens

Geographic Features: Feature mit geographischem Ortsbezug (Vectordaten, Rasterdaten)

Spatial Schema

Räumliche Charakteristiken werden hier durch ein oder mehrere räumliche Attribute dargestellt

Spatial Schema unterstützt hauptsächlich Vektordaten in bis zu 3 Dimensionen

Spatial Schema definiert weiterhin Methoden („spezielle Operatoren“) für geometrische Daten

Spatial Schema

„Conceptual Schemas“ beschreiben die räumlichen Charakteristika von räumlichen Merkmalen

„Spezielle Operatoren“ sind Funktionen die räumliche Merkmale modifizieren, kreieren, löschen und gebrauchen (Methoden)

Spezielle Operatoren

In Spatial Schema gibt es einen klaren Rahmen für Spezielle Operatoren um einen Standard für ihre Implementierung und Definition zu schaffen:

Operationen sollten nicht zu komplex gestaltet werden, um sicher zu stellen, um ihre Funktion in Hinsicht auf bekannte Probleme zu gewährleisten

Diese Definitionen sollen einen Satz Standardoperationen bilden

Zusätzlich sollten algebraische Zusammenhänge definiert werden, die eine Kombination der Basisoperationen ermöglichen

Symbole und Notationen

In Spatial Schema werden Operatoren und Klassen in der Unified Modeling Language (UML) verfaßt.

UML ist dem geneigten Hörer dieser Veranstaltung aus verschiedenen Vorlesungen und Vorträgen hinlänglich bekannt

Geometry Packages

Geometrische Pakete sind hierarchisch in der Art von Bäumen gestaffelt.

Hierbei gibt es sogenannte „root packages“, quasi die Vaterknoten der beiden Paketstrukturen: GM_Objekt (GeometryObjekt) und TP_Objekt (TopologicalObjekt)

Spatial Schema - Unterscheidungen

Komplexität: 1 Geometric primitives 2 Geometric complexes 3 Topological complexes 4 Topological complexes with geometric

relation

Dimension: 1 0 - dimensionale Objekte 2 0 - und 1 - dimensionale Objekte 3 0 - , 1 - und 2 - dimesionale Objekte 4 0 - 3 - dimensionale Objekte

Geometry Packages

Geometry (GM_Object): Quantitative Beschreibung von geometrischen Figuren, Koordinaten und mathematische Funktionen (wie Dimension, Position, Größe, Orientierung und Form)

Ist Abhängig vom benutzten Koordinatensystem. Ändert sich ggf. bei Transformation

Geometry Packages

Topology (TP_Object): Charakteristika von Geometrische Figuren die bei einer „Gummihauttransf.“ invariant bleiben

Ändert sich nicht bei Koordinatentransformation in ein anderes System

Bietet Informationen über Zusammenhänge von Geometrie

Geometry Packages

Für uns besonders interessant: Geometry Packages

Geometry Packeges (unter GM_Object) beinhalten eine Vielzahl von Klassen für Koordinatenbezogene Geometrie

Geometry Packages gliedern sich in drei verschiedene Klassen: GM_Primitives, GM_Complexe und GM_Aggregates

Geometry Packages

GM_Object: ist wie erwähnt die „root class“ für alle Objekte mit geographischer Referenz

Ist eine Punktmenge von koordinatenmäßig bekannten Punkten

Geometry Packages

GM_Primitives: geometrisches Objekt, welches sich nicht weiter in einzelne Teile zerlegen läßt

Hierzu können auch Kurven und Flächen zählen

Diese lassen sich dann jedoch nicht mehr in ihre einzelnen Segmente zerlegen

Primitives

GM_Primitives: GM_Point: 0-Dimensional, Koordinatenpaar

GM_CurveSegment: Basis für 1-Dimensionale Geometrie, Verknüpfung von zwei Stützpunkten(aber nicht zwingend GM_Points)

GM_Curve: Verknüpfung von CurveSegments

Primitives

Gm_SurfacePatch: Basis für 2-Dimensionale

Geometrie, geschl. Verknüpfung von CurveSegments

Gm_Surface: „Side to side“ Verknüpfung von SurfacePatches

Geometry Packages

GM_Curve

GM_Surface

GM_Point

GM_SurfacePatch

GM_CurveSegment

20...*

1...*

1

1...* 1...2

1

1...*

Geometry Packages

GM_Complexes: Bezeichnet einen Satz von primitiven geometrischen Objekten, deren Innere sich nicht schneiden (disjunkt sind)

Ist ein Objekt höherer Dimension Teil eines Complexes, so sind auch alle Teilobjekte niedrigerer Dimension Teil des Complexes...

Geometry Packages

GM_Complexes:

Geometry Packages

GM_Aggregates: stellt eine lockere Gruppierung von gleichartigen geometrischen Objekten dar

Aggregates haben keinerlei interne Struktur

Sie „verbinden“ lediglich spezielle Objekte miteinander.

Geometry Packages

GM_Aggregates:

Geometry Packages

GM_Object

GM_Primitive

GM_ComplexGM_Aggregate

GM_OrientSurface

GM_Curve

GM_MultiSurface

GM_Surface

GM_MultiCurve

GM_MultiPoint

GM_MultiSolid

GM_OrientPrimitiv

GM_OrientCurve

GM_CompSurface

GM_CompSolid

GM_CompPoint

GM_CompCurve

GM_Point

GM_Solid

Geometry Packages

Anmerkung: Primitive sind IMMER offen, Grenzen gehören nicht zum Objekt)

Komplexe sind IMMER geschlossen (Grenzen gehören zum Objekt)

„Wie sieht`s aus?“

Konstruktion von Punkten:P1 = GM_Point <position = < 1.00, 5.00 > >

P2 = GM_Point <position = < 3.00, 5.00 > >

P3 = GM_Point <position = < 3.00, 2.00 > >

P4 = GM_Point <position = < 1.75, 2.75 > >

P5 = GM_Point <position = < 1.50, 4.50 > >

P6 = GM_Point <position = < 2.00, 3.25 > >

P7 = GM_Point <position = < 5.00, 4.00 > >

Insert P1, P2, P3, P4 ,P5 P6, P7 into Datastore

P1 (1.00, 5.00) P2 (3.00, 5.00)

P3 (3.00, 2.00)

P4 (1.75, 2.75)

P5 (1.50, 4.50)

P6 (2.00, 3.25)

P7 (5.00, 4.00)

„Wie sieht`s aus?“

„Wie sieht`s aus?“

Konstruktion von Kurvensegmenten:CS1 = GM_CurveSegment < controlPoint = <P1,P2>,

interpolation = "linear" >

CS2 = GM_CurveSegment < controlPoint = <P2,P3>,

interpolation = "linear" >

CS3 = GM_CurveSegment < controlPoint = <P2, (6,5),

(6,2),P3>, interpolation = "linear" >

CS4 = GM_CurveSegment < controlPoint = <P2,P3>,

interpolation = "linear" >

„Wie sieht`s aus?“

CS5 = GM_CurveSegment < controlPoint

= <P5,(1.9,4.25),(2,4)>, interpolation = "arc" >

CS6 = GM_CurveSegment < controlPoint = <(2,4),P6>,

interpolation = "linear" >

CS7 = GM_CurveSegment < controlPoint = <P7,(4.25,4),(4.25,3.25),(5,3.25),P7>,

interpolation = "linear" >

P1 (1.00, 5.00) P2 (3.00, 5.00)

P3 (3.00, 2.00)

P4 (1.75, 2.75)

P5 (1.50, 4.50)

P6 (2.00, 3.25)

P7 (5.00, 4.00)

„Wie sieht`s aus?“

CS6 CS3CS4

CS1

CS5CS2

CS7

„Wie sieht`s aus?“

Konstruktion von Kurven:C1 = GM_Curve segments = <CS1>

C2 = GM_Curve segments = <CS2>

C3 = GM_Curve segments = <CS3>

C4 = GM_Curve segments = <CS4>

C5 = GM_Curve segments = <CS5, CS6>

C6 = GM_Curve segments = <CS7>

Insert C1, C2, C3, C4, C5, C6 into Datastore

„Wie sieht`s aus?“

Konstruktion von Flächen:S0 = GM_Surface patch = <GM_Polygon interior =

<< C1, C3, - C4 >> >

S1 = GM_Surface patch = <GM_Polygon exterior =

< C4, - C2, - C1 > , interior << C5, - C5>> >

S2 = GM_Surface patch = <GM_Polygon exterior =

< - C2, C3, > , interior << - C6>> >

S3 = GM_Surface patch = <GM_Polygon exterior =

< - C6, > >

Insert S0, S1, S2, S3 into Datastore

„Wie sieht`s aus?“

P1 (1.00, 5.00)

P3 (3.00, 2.00)

P4 (1.75, 2.75)

P5 (1.50, 4.50)

P6 (2.00, 3.25)

P7 (5.00, 4.00)

C6C3

C4

C1

C2

S1

S2

S3C5

„Wie sieht`s aus?“

Konstruktion eines Komplexes:

GComplex = GM_Complex < surfaces = {S0, S1, S2, S3},

curves = {C1, C2, C3, C4, C5, C6},

points = {P1, P2, P3, P4, P5, P6, P7} >

Insert GComplex into Datastore

„Wie sieht`s aus?“

Bedeutung der Geometrie:

Lake = AreaFearur featureType="Hydrography::Waterbody",

extend = S3

Trail = LineFeature fearureType="CulturalFacilities::Hikingtrail",

centerline = C5

School = PointFeature featureType="CulturalFacilities::School",

location = P4

Finale

Vielen Dank für die Aufmerksamkeit

- Fragen? -

Recommended