Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

GIS III – Vorlesung 13 Geography Markup Language – Teil 2

Ähnliche Präsentationen


Präsentation zum Thema: "GIS III – Vorlesung 13 Geography Markup Language – Teil 2"—  Präsentation transkript:

1 GIS III – Vorlesung 13 Geography Markup Language – Teil 2

2 Modellierung der Geometrie
T. H. Kolbe: Geography Markup Language – Teil 2

3 Wdh.: Modellierung der Geometrie
_GML (from gmlBase) + description [0. .1 ] : CharacterString + name [0. .*] : CharacterString + i d [0 ..1] : ID _CoordinateReferenceSystem (from CoordinateReferenceSystems) +srsName _Geometry 0..1 + gid [0..1] : CharacterString _GeometricPrimitive GeometricComplex _GeometricAggregate T. H. Kolbe: Geography Markup Language – Teil 2

4 Wdh.: Basiskonzepte des Geometriemodells
Primitive einfache, kontinuierliche geometrische Objekte Komplexe (GeometricComplex) Menge geometrisch disjunkter Primitive Zusammengesetzte Geometrien (Composites) spezielle Art von Komplexen: homogene Komposition von Primitiven und Composites derselben Dimension isomorph zu Primitiven der entsprechenden Dimension zusammenhängend einzelne Primitive besitzen gemeinsame Teilgeometrien (Primitive niedriger Dimension, z.B. bei zwei benachbarten Flächen die Grenzlinie) Aggregate Sammlungen einzelner Geometrieelemente, die nicht miteinander verbunden sein müssen; Überlappungen sind erlaubt ! T. H. Kolbe: Geography Markup Language – Teil 2

5 Wdh.: Hierarchie der Geometrietypen
_Geometry +gid [0..1]: String _CoordinateReferenceSystem srsName 0..1 _GeometricPrimitive GeometricComplex _GeometricAggregate Point _Surface _Curve _Solid 0D 1D 2D 3D T. H. Kolbe: Geography Markup Language – Teil 2

6 Wdh.: Point Geometry Element
Ein Point Element besteht aus einem Koordinatentupel. <element name="Point" type="gml:PointType" substitutionGroup="gml:_Geometry"/> <complexType name="PointType"> <complexContent> <extension base="gml:AbstractGeometryType"> <sequence> <choice> <element ref="gml:pos"/> <element ref="gml:coordinates"/> <element ref="gml:coord"/> </choice> </sequence> </extension> </complexContent> </complexType> <Point srsName=" <pos> </pos> </Point> Beispiel: T. H. Kolbe: Geography Markup Language – Teil 2

7 Modellierung linearer Geometrien (1)
_GeometricPrimitive +curveMember +baseCurve _Curve 1..n 1 CompositeCurve OrientableCurve + orientation [0..1] : Sign = "+" LineString Curve T. H. Kolbe: Geography Markup Language – Teil 2

8 Wdh.: LineString Geometry Element
LineString: Folge von Punkten, durch gerade Liniensegmente verbunden <element name="LineString" type="gml:LineStringType" substitutionGroup="gml:_Curve"/> <complexType name="LineStringType"> <complexContent> <extension base="gml:AbstractCurveType"> <sequence> <choice> <choice minOccurs="2" maxOccurs="unbounded"> <element ref="gml:pos" /> <element ref="gml:coord" /> <element ref="gml:pointRep" /> </choice> <element ref="gml:coordinates"/> </sequence> </extension> </complexContent> </complexType> <LineString srsName=" <coordinates>100.0, , ,130.0 </coordinates> </LineString> Beispiel T. H. Kolbe: Geography Markup Language – Teil 2

9 Modellierung linearer Geometrien (2)
Curve i +segments 1 <<DataType>> _CurveSegment + numDerivativesAtStart [0..1] : Integer = 0 + numDerivativesAtEnd [0..1] : Integer = 0 + numDerivativeInterior [0..1] : Integer = 0 LineStringSegment ArcString ArcStringByBulge ArcByCenterPoint CubicSpline BSpline T. H. Kolbe: Geography Markup Language – Teil 2

10 Interpolatoren für lineare Geometrien
Unterstützte Interpolationsarten (Erläuterungen s. ISO 19107): linear geodesic circularArc3Points circularArc2PointWithBulge circularArcCenterPointWithRadius elliptical clothoid conic polynomialSpline cubicSpline rationalSpline T. H. Kolbe: Geography Markup Language – Teil 2

11 Gerichtete Geometrieobjekte
Geometrieelemente sind normalerweise positiv gerichtet Kurven (jedes Segment) vom Startpunkt in Richtung Endpunkt bei Flächen beschreibt die Seite die Oberfläche, auf der der Normalenvektor steht; Bestimmung mittels Rechter-Hand-Regel explizite Angabe der Richtung eines Geometrieobjekts erlaubt Wiederverwendung von Primitiven in Komplexen Curve 1 Curve 2 S3 S1 S2 S4 S5 Aus Segmenten zusam-mengesetzte Kurven: Curve 1: +S1 +S2 +S3 Curve 2: +S4 –S2 +S5 Beispiel: T. H. Kolbe: Geography Markup Language – Teil 2

12 Flächenhafte Geometrien (1)
_GeometricPrimitive +surfaceMember +baseSurface _Surface 1..n 1 CompositeSurface OrientableSurface + orientation [0..1] : Sign = "+" Polygon Surface i +patches 1 << DataType>> _SurfacePatch T. H. Kolbe: Geography Markup Language – Teil 2

13 Wdh.: Polygon Geometry Element
_Surface Polygon _Ring LinearRing +position [4..n]: Position +interior 0..n +exterior 0..1 exterior exterior interior T. H. Kolbe: Geography Markup Language – Teil 2

14 Polygon – Schema (1) _Surface Polygon
<element name="_Surface" type="gml:AbstractSurfaceType" abstract="true" substitutionGroup="gml:_GeometricPrimitive"/> <complexType name="AbstractSurfaceType"> <complexContent> <extension base="gml:AbstractGeometricPrimitiveType"/> </complexContent> </complexType> <element name="Polygon" type="gml:PolygonType" substitutionGroup="gml:_Surface" /> <complexType name="PolygonType"> <extension base="gml:AbstractSurfaceType"> <sequence> <element ref="gml:exterior" minOccurs="0" /> <element ref="gml:interior" minOccurs="0" maxOccurs="unbounded" /> </sequence> </extension> _Surface Polygon T. H. Kolbe: Geography Markup Language – Teil 2

15 Polygon – Schema (2) Polygon _Ring +interior 0..n +exterior 0..1
<element name="_Ring" type="gml:AbstractRingType" abstract="true"/> <complexType name="AbstractRingType" abstract="true"> <complexContent> <extension base="gml:AbstractGeometryType"/> </complexContent> </complexType> <element name="exterior" type="gml:AbstractRingPropertyType"/> <element name="interior" type="gml:AbstractRingPropertyType"/> <complexType name="AbstractRingPropertyType"> <sequence> <element ref="gml:_Ring"/> </sequence> Polygon _Ring +interior 0..n +exterior 0..1 T. H. Kolbe: Geography Markup Language – Teil 2

16 +position [4..n]: Position
Polygon – Schema (3) <element name="LinearRing" type="gml:LinearRingType" substitutionGroup="gml:_Ring"/> <complexType name="LinearRingType"> <complexContent> <extension base="gml:AbstractRingType"> <sequence> <choice> <choice minOccurs="4" maxOccurs="unbounded"> <element ref="gml:pos"/> <element ref="gml:pointRep"/> </choice> <element ref="gml:coordinates"/> <element ref="gml:coord" minOccurs="4" maxOccurs="unbounded"/> </sequence> </extension> </complexContent> </complexType> _Ring LinearRing +position [4..n]: Position Hinweis: letzte Koordinate muss gleich der ersten sein  mind. 4 Koordinaten T. H. Kolbe: Geography Markup Language – Teil 2

17 Wdh.: Polygon Geometry Element - Beispiel
<Polygon srsName=" <exterior> <LinearRing gml:id="Außen1"> <coordinates> 0.0, , , , ,0.0 </coordinates> </LinearRing> </exterior> <interior> <LinearRing gml:id="Innen1"> 60.0, , ,90.0 90.0, ,60.0 </interior> </Polygon> T. H. Kolbe: Geography Markup Language – Teil 2

18 Flächenhafte Geometrien (2)
<< DataType>> _SurfacePatch PolygonPatch Triangle + interpolation : SurfaceInterpolation = "planar" {frozen} + interpolation : SurfaceInterpolation = "planar" {frozen} Rectangle + interpolation : SurfaceInterpolation = "planar" {frozen} +exterior 0..n +interior 1 +exterior _Ring 0..1 +exterior 1 +curveMember _Curve Ring LinearRing 1..n + position [4..n] : Position T. H. Kolbe: Geography Markup Language – Teil 2

19 Interpolatoren für Flächengeometrien
Unterstützte Interpolationsarten (Erläuterungen s. ISO 19107): planar spherical elliptical conic tin parametricCurve polynomialSpline rationalSpline triangulatedSpline T. H. Kolbe: Geography Markup Language – Teil 2

20 Volumenhafte Geometrien
_GeometricPrimitive außen +solidMember _Solid 1..n CompositeSolid Solid +exterior +interior 0..1 0..n _Surface T. H. Kolbe: Geography Markup Language – Teil 2

21 Solid Element Solid: Volumenkörper mit geschlossener äußerer Hülle
und Einschlüssen (jeweils CompositeSurfaces) <element name="_Solid" type="gml:AbstractSolidType" abstract="true" substitutionGroup="gml:_GeometricPrimitive" /> <complexType name="AbstractSolidType"> <complexContent> <extension base="gml:AbstractGeometricPrimitiveType" /> </complexContent> </complexType> <element name="Solid" type="gml:SolidType" substitutionGroup="gml:_Solid" /> <complexType name="SolidType"> <extension base="gml:AbstractSolidType"> <sequence> <element name="exterior" type="gml:SurfacePropertyType" minOccurs="0" /> <element name="interior" type="gml:SurfacePropertyType" minOccurs="0" maxOccurs="unbounded„ </sequence> </extension> T. H. Kolbe: Geography Markup Language – Teil 2

22 Solid – Beispiel <gml:Solid srsName="...irgendein 3D-Bezugssystem..."> <gml:exterior> <gml:CompositeSurface> <gml:surfaceMember> <gml:OrientableSurface orientation="+"> <gml:baseSurface> <gml:Polygon> <gml:LinearRing> <gml:pos dimension="3"> </gml:pos> <gml:pos dimension="3"> </gml:pos> <gml:pos dimension="3"> </gml:pos> <gml:pos dimension="3"> </gml:pos> <gml:pos dimension="3"> </gml:pos> </gml:LinearRing> </gml:exterior> </gml:Polygon> </gml:baseSurface> </gml:OrientableSurface> </gml:surfaceMember> ... <!-- weitere Oberflächen --> ... </gml:CompositeSurface> </gml:Solid> T. H. Kolbe: Geography Markup Language – Teil 2

23 Geometrische Aggregate
_Geometry MultiLineString MultiPolygon _GeometricAggregate 0..n +lineStringMember +polygonMember 0..n LineString Polygon Heterogenes Aggregat MultiPoint MultiSurface i i +pointMember +pointMembers +surfaceMembers +surfaceMember 0..1 0..n 0..1 0..n Point _Surface MultiGeometry MultiCurve MultiSolid i i i +geometryMembers +geometryMember +curveMembers +curveMember +solidMembers +solidMember 0..1 0..n 0..1 0..n 0..1 0..n _Geometry _Curve _Solid T. H. Kolbe: Geography Markup Language – Teil 2

24 Geometrische Eigenschaften in Features
Geometrische Eigenschaften eines Features werden in geometryProperty-Kindelemente eingebettet darin sind ein oder mehrere (im Fall des geometryArrayProperty) Geometrieelemente eingebunden für jeden Geometrietyp gibt es vordefinierte Property-Elemente Beispiel Feature <Strasse> <strassenname>Meckenheimer Allee</strassenname> <breite>5.6</breite> <curveProperty> <LineString srsName="...irgendein Bezugssystem..."> <pos> </pos> <pos> </pos> <pos> </pos> </LineString> </curveProperty> </Strasse> geometryProperty Geometrie- element T. H. Kolbe: Geography Markup Language – Teil 2

25 vordefinierte geometrische Eigenschaften
Formaler Bezeichner Geometrietypen pointProperty Point curveProperty LineString Curve OrientableCurve CompositeCurve surfaceProperty Polygon Surface OrientableSurface CompositeSurface solidProperty Solid CompositeSolid geometryProperty AbstractGeometry multiPointProperty MultiPoint multiCurveProperty MultiCurve multiSurfaceProperty MultiSurface multiSolidProperty MultiSolid multiGeometryProperty MultiGeometry pointArrayProperty Point(s) curveArrayProperty LineString(s) Curve(s) OrientableCurve(s) CompositeCurve(s) surfaceArrayProperty Polygon(s) Surface(s) OrientableSurface(s) CompositeSurface(s) solidArrayProperty Solid(s) CompositeSolid(s) T. H. Kolbe: Geography Markup Language – Teil 2


Herunterladen ppt "GIS III – Vorlesung 13 Geography Markup Language – Teil 2"

Ähnliche Präsentationen


Google-Anzeigen