Difference between revisions of "Modeling Guide for 3D Objects - Part 1: Basics (Rules for Validating GML Geometries in CityGML)"

From SIG3D Quality Wiki EN
Jump to navigation Jump to search
Line 30: Line 30:
 
== gml:LinearRing ==
 
== gml:LinearRing ==
  
 +
Der Linear Ring ist das grundlegende Element zur Geometriebeschreibung in CityGML. Jedes einzelne Polygon einer Gebäudegeometrie wird durch seinen Umring definiert. Eben dieser Umring wird durch das Element „Linear Ring“ beschrieben.
 +
Zur formalen Definition des Linear Ring muss zunächst der Begriff der Sequenz eingeführt werden. Eine Sequenz ist eine geordnete Liste von Elementen. Im Gegensatz zu einer Menge ist die Reihenfolge der Elemente in einer Sequenz von Bedeutung. Ebenso kann in einer Sequenz ein Element mehrfach vorkommen. Eine endliche Sequenz  mit  Elementen wird durch die Elemente der Sequenz beschrieben: . Die leere Sequenz  hat keine Elemente.
 +
Eine endliche Sequenz von Punkten  ist ein Linear Ring genau dann, wenn gilt:
 +
(i) Der erste und der letzte Punkt der Sequenz sind identisch:  (closeness)
 +
(ii) Mit Ausnahme des ersten und letzten Punktes sind alle Punkte verschieden, d.h. 
 +
(iii) Zwei Kanten  und  mit  dürfen sich nur in einem Start-/ Endpunkt berühren. Weitere Schnitt- bzw. Berührungspunkte sind nicht zulässig (no self intersection).
 +
 +
Sind alle Punkte der Sequenz ko-planar, wird der Linear Ring planar genannt.
  
 
=== Planarität von Polygonen ===
 
=== Planarität von Polygonen ===
 
  
 
== gml:Polygon ==
 
== gml:Polygon ==

Revision as of 18:34, 1 November 2011



Spatial Reference Systems (SRS)

  • Jedes Geometrie-Element (einschließlich pos, posList and coordinates) muss
    • entweder im srsName-Attribut mit einem Wert belegt sein, oder
    • den Wert des srsName-Attributs erben
      • von seiner Elterngeometrie (auch rekursiv, von deren Elterngeometrie usw.) oder
      • von der gml:Envelope (oder gml:Box), die der Wert der gml:boundedBy Property des Eltern-Features oder der Eltern-FeatureCollection ist (auch rekursiv).
  • ein lokaler Wert des srsName Attribut geht dem geerbten Wert des srsName- Attributs vor
  • sollte aus dem SRS nicht zweifelsfrei die Dimension erkennbar sein, muss das Attribut srsDimension bei Geometrieelementen (pos, posList) die Dimension des SRS enthalten


gml:_Curve, gml:LineString

  • als _Curves sind nur gml:LineStrings erlaubt (gilt nur für CityGML)
  • ein gml:LineString hat lineare Interpolation
  • für die Kindelemente eines gml:LineString (Kontrollpunkte) gilt folgendes:
    • diese bilden eine Folge von "pos" (DirectPositionType) oder "pointProperty" (PointPropertyType) Elementen. "pos"-Elemente sind Kontrollpunkte, die nur zu dieser Curve gehören. "pointProperty"-Elemente enthalten Punkte, die von anderen Geometrien referenziert werden können, oder referenzieren andere Punkte (über XLinks), die in anderen Geometrien definiert sind.
    • Alternativ kann der gml:LineString aus einem "posList"-Element bestehen, das eine kompakte Möglichkeit der Angabe von Koordinaten bietet. In diesem Fall müssen alle Kontrollpunkte zu derselben Curve gehören und im selben SRS vorliegen. Die Anzahl der Punkte (Direct Position) ist mindestens zwei.
  • Jeder Kontrollpunkt im gml:LineString erscheint nur einmal, außer dem ersten und letzten, die identisch sein können.
  • Liniensegmente eines gml:LineString ergeben sich jeweils durch zwei aufeinanderfolgende Kontrollpunkte. Diese Liniensegmente dürfen sich nicht schneiden bzw. haben keine gemeinsamen Punkte. Ausgenommen sind Anfangs- und Endpunkt (definiert durch einen gemeinsamen Kontrollpunkt) zweier aufeinander folgender Liniensegmente.


gml:posList

  • Die Anzahl der Einträge in der Liste entspricht dem Produkt der Dimension des SRS und der Anzahl der direct positions.

gml:LinearRing

Der Linear Ring ist das grundlegende Element zur Geometriebeschreibung in CityGML. Jedes einzelne Polygon einer Gebäudegeometrie wird durch seinen Umring definiert. Eben dieser Umring wird durch das Element „Linear Ring“ beschrieben. Zur formalen Definition des Linear Ring muss zunächst der Begriff der Sequenz eingeführt werden. Eine Sequenz ist eine geordnete Liste von Elementen. Im Gegensatz zu einer Menge ist die Reihenfolge der Elemente in einer Sequenz von Bedeutung. Ebenso kann in einer Sequenz ein Element mehrfach vorkommen. Eine endliche Sequenz mit Elementen wird durch die Elemente der Sequenz beschrieben: . Die leere Sequenz hat keine Elemente. Eine endliche Sequenz von Punkten ist ein Linear Ring genau dann, wenn gilt: (i) Der erste und der letzte Punkt der Sequenz sind identisch: (closeness) (ii) Mit Ausnahme des ersten und letzten Punktes sind alle Punkte verschieden, d.h. (iii) Zwei Kanten und mit dürfen sich nur in einem Start-/ Endpunkt berühren. Weitere Schnitt- bzw. Berührungspunkte sind nicht zulässig (no self intersection).

Sind alle Punkte der Sequenz ko-planar, wird der Linear Ring planar genannt.

Planarität von Polygonen

gml:Polygon

gml:OrientableSurface

gml:Solid

gml:MultiSurface

gml:Triangle

gml:TriangulatedSurface

gml:TIN