Changes

Jump to navigation Jump to search
no edit summary
Line 161: Line 161:  
     <td>
 
     <td>
 
English Version    </td>  
 
English Version    </td>  
 +
  </tr>
 +
  <tr align="left" valign="top">
 +
    <td>
 +
0.7.1 EN
 +
    </td>
 +
    <td width="220">
 +
November 2014
 +
    </td>
 +
    <td>
 +
Egbert Casper
 +
    </td> 
 +
    <td>
 +
public
 +
    </td> 
 +
    <td>
 +
Derived PDF Version    </td>
 +
  </tr>
 +
  <tr align="left" valign="top">
 +
    <td>
 +
0.7.2 EN
 +
    </td>
 +
    <td width="220">
 +
November 2017
 +
    </td>
 +
    <td>
 +
Egbert Casper
 +
    </td> 
 +
    <td>
 +
public
 +
    </td> 
 +
    <td>
 +
Minor editorial changes and completions, License change to Creative Commons BY-NC-SA-4.0    </td>
 
   </tr>
 
   </tr>
 +
    
   </table>
 
   </table>
 +
 +
{| width="100%" cellspacing="6" border="0"
 +
|- valign="top" align="left"
 +
| width="80%" | <div style="margin: 10px; border: 2px solid #dfdfdf; background-color:#f8f8ff;">{{Copyright-BY-NC-SA-4.0}}</div>
 +
|}
    
== References ==
 
== References ==
Line 243: Line 281:  
<math>\forall E_{ijk} \forall P_a = dist (P_a,E_{ijk})\le \epsilon</math>
 
<math>\forall E_{ijk} \forall P_a = dist (P_a,E_{ijk})\le \epsilon</math>
   −
+
<!--
 
  Für die Überprüfung der Planarität wäre es wünschenswert, eine Vorgabe für die Schranke <math>\epsilon</math> zu haben.<br> Da die Eigenschaft der Planarität invariant gegenüber Skalierungen sein sollte,<br /> sollte in den Wert von <math>\epsilon</math> die Ausdehnung bzw. Größe (Flächeninhalt, max. Punktabstand) des Linearen Ringes eingehen.<br /> Dazu sollte die Punktgenauigkeit bekannt/festgelegt sein.
 
  Für die Überprüfung der Planarität wäre es wünschenswert, eine Vorgabe für die Schranke <math>\epsilon</math> zu haben.<br> Da die Eigenschaft der Planarität invariant gegenüber Skalierungen sein sollte,<br /> sollte in den Wert von <math>\epsilon</math> die Ausdehnung bzw. Größe (Flächeninhalt, max. Punktabstand) des Linearen Ringes eingehen.<br /> Dazu sollte die Punktgenauigkeit bekannt/festgelegt sein.
 +
-->
    
== <span id="posList">[http://www.schemacentral.com/sc/niem21/e-gml32_posList.html gml:posList]</span> ==
 
== <span id="posList">[http://www.schemacentral.com/sc/niem21/e-gml32_posList.html gml:posList]</span> ==
Line 410: Line 449:  
   <tr align="left" valign="top">
 
   <tr align="left" valign="top">
 
     <td colspan="1">
 
     <td colspan="1">
'''Figure 7:''' Polygon mit <span style="color:#008000">korrektem interior Ring (links)</span> und <span style="color:#FF0000">nicht korrektem inneren Ring (rechts)</span> </td>
+
'''Figure 7:''' Polygon with <span style="color:#008000">correct interior ring (left)</span> and <span style="color:#FF0000">incorrect inner ring (right)</span> </td>
 
   </tr>
 
   </tr>
 
</table>
 
</table>
Line 436: Line 475:  
   <tr align="left" valign="top">
 
   <tr align="left" valign="top">
 
     <td colspan="1">
 
     <td colspan="1">
'''Figure 9:''' Polygon with <span style="color:#008000">correct, interior Ring, der den außeren Ring an einem Punkt berührt (left)</span> and <span style="color:#FF0000">not correct interior Ring, der den äußeren Ring an zwei Punkten berührt und damit dass Polygon spaltet (rechts)</span> </td>
+
'''Figure 9:''' Polygon with <span style="color:#008000">correct, interior ring touching the outer ring at exactly one point (left)</span> and <span style="color:#FF0000">incorrect interior Ring touching the outer ring at two points and splitting the polygon (right) </span> </td>
 
   </tr>
 
   </tr>
 
</table>
 
</table>
Line 504: Line 543:  
== <span id="CompositeSurface"> [http://www.schemacentral.com/sc/niem21/e-gml32_CompositeSurface.html gml:CompositeSurface]</span>==
 
== <span id="CompositeSurface"> [http://www.schemacentral.com/sc/niem21/e-gml32_CompositeSurface.html gml:CompositeSurface]</span>==
   −
Eine CompositeSurface ist eine Menge <math>C=\lbrace S_1,S_2,...,S_n \rbrace</math> von Polygonen, für die
+
A set <math>C=\lbrace S_1,S_2,...,S_n \rbrace</math> of polygons is a CompositeSurface for which
folgendes gilt:
     −
# Die Schnittmenge zweier Polygone <math>S_k</math>  und <math>S_l</math>  aus <math>C</math>  ist entweder leer oder besteht nur aus Punkten und/oder Kanten, die auch in den beiden linearen Ringen vorkommen. Bezeichne <math>R_k=(P_0^k,P_1^k,...,P_n^k)</math> den planaren linearen Ring, der das Polygon <math>S</math> definiert. Dann gilt:<br><math>S_i \cap S_k= \begin{cases}\emptyset\\ \lbrace Q_0,Q_1,...,Q_m\rbrace,Q_j=P_k^i\\ \lbrace e_0,e_1,...,e_m\rbrace,e_j=\overline{P_i^kP_{i+1}^k} \end{cases}</math>
+
# The intersection of two polygons <math>S_k</math>  and <math>S_l</math>  of <math>C</math>  is either empty or contains only points <math>P</math> and/or edges <math>e</math>that are part of both Linear Rings.  
# Jede Kante <math>e_k=\overline{P_i^kP_{i+1}^k}</math> eines linearen Rings <math>R_k=(P_0^k,P_1^k,...,P_n^k)</math> , der ein Polygon <math>S_k \in C</math> definiert, wird höchstens  einmal als Kante <math>e_l=\overline{P_j^lP_{j+1}^l}</math>  in einem linearen Ring <math>R_l=(P_0^l,P_1^l,...,P_m^l)</math>  genutzt, der ein anderes Polygon <math>S_l \in C</math> definiert.<br>Es gilt <math>P_i^k=P_{j+1}^l</math>  und <math>P_{i+1}=P_j^l</math>.
+
The polygon <math>S</math> is defined by the planar Linear Ring <math>R_k=(P_0^k,P_1^k,...,P_n^k)</math>.
# Die Polygone aus <math>C</math> sind so orientiert, dass die Flächennormale benachbarte Polygone in dieselbe Richtung zeigen.
+
The intersection of <math>S_i</math> and <math>S_k</math> equals<br>
# Die Vereinigung aller Polygone aus <math>C</math> ohne die Kanten oder Punkte, in denen sich die Polygone berühren, ist isomorph zu einem Polygon.  
+
<math>S_i \cap S_k= \begin{cases}\emptyset\\ \lbrace Q_0,Q_1,...,Q_m\rbrace,Q_j=P_k^i\\ \lbrace e_0,e_1,...,e_m\rbrace,e_j=\overline{P_i^kP_{i+1}^k} \end{cases}</math>
 +
# Every edge <math>e_k=\overline{P_i^kP_{i+1}^k}</math> of a Linear Ring <math>R_k=(P_0^k,P_1^k,...,P_n^k)</math> , defining a polygon <math>S_k \in C</math> is used exactly once as an edge <math>e_l=\overline{P_j^lP_{j+1}^l}</math>  in a Linear Ring <math>R_l=(P_0^l,P_1^l,...,P_m^l)</math>  defining another polygon <math>S_l \in C</math> with <math>P_i^k=P_{j+1}^l</math>  and  <math>P_{i+1}=P_j^l</math>.
 +
# All polygons in <math>C</math> are oriented such that the normal vectors of neighbouring polygons point to the same direction.
 +
# The union of all polygons in <math>C</math> without the edges or points where the polygons touch, is isomorphic to a polygon.  
   −
Aus (1) und (2) ergibt sich, dass die Oberfläche, die durch  <math>C</math> beschrieben wird, keine sich gegenseitig überlappenden oder durchdringenden Polygone enthalten darf (Polygone berühren sich höchstens in Punkten oder Kanten).
+
It follows from (i) and (ii) that the surface defined by <math>C</math> , must not contain any overlapping or penetrating polygons, that is, polygons touch at most at points or edges.
    
== <span id="Solid"> [http://www.schemacentral.com/sc/niem21/e-gml32_Solid.html gml:Solid]</span>==
 
== <span id="Solid"> [http://www.schemacentral.com/sc/niem21/e-gml32_Solid.html gml:Solid]</span>==
Line 529: Line 570:       −
'''Beispiele:'''
+
'''Examples:'''
    
<table width="1200px"  border="1" cellspacing="0" style="border:thin">
 
<table width="1200px"  border="1" cellspacing="0" style="border:thin">
Line 552: Line 593:  
   <tr align="middle">
 
   <tr align="middle">
 
   <td width="300px" valign="top">
 
   <td width="300px" valign="top">
Korrekt: 6 Flächen, geschlossen, Flächenorientierung korrekt
+
correct: 6 surfaces, closed, correct surface orientation
 
     </td>
 
     </td>
 
     <td width="300px" valign="top">
 
     <td width="300px" valign="top">
Korrekt: 11 Flächen, geschlossen, Flächenorientierung korrekt
+
correct: 11 surfaces, closed, correct surface orientation
 
     </td>
 
     </td>
 
     <td width="300px" valign="top">
 
     <td width="300px" valign="top">
Korrekt: 10 Flächen, geschlossen, Flächenorientierung korrekt
+
correct: 10 surfaces, closed, correct surface orientation
 
     </td>   
 
     </td>   
 
     <td width="300px" valign="top">
 
     <td width="300px" valign="top">
Korrekt: 30 Flächen, geschlossen, Flächenorientierung korrekt
+
correct: 30 surfaces, closed, correct surface orientation
 
     </td>   
 
     </td>   
 
</tr>
 
</tr>
Line 588: Line 629:  
   <tr align="middle">
 
   <tr align="middle">
 
   <td width="300px" valign="top">
 
   <td width="300px" valign="top">
Nicht Korrekt: 5 Flächen, nicht geschlossen, Flächenorientierung korrekt
+
incorrect: 5 surfaces, not closed, correct surface orientation
 
     </td>
 
     </td>
 
     <td width="300px" valign="top">
 
     <td width="300px" valign="top">
Nicht Korrekt: 6 Flächen, geschlossen, Flächenorientierung nicht korrekt
+
incorrect: 6 surfaces, closed, incorrect surface orientation
 
     </td>
 
     </td>
 
     <td width="300px" valign="top">
 
     <td width="300px" valign="top">
Nicht Korrekt: 12 Flächen, nicht geschlossen (zwei Außenhüllen), Flächenorientierung korrekt
+
incorrect: 12 surfaces, no closed (two outer hulls), correct surface orientation
 
     </td>   
 
     </td>   
 
     <td width="300px" valign="top">
 
     <td width="300px" valign="top">
Nicht Korrekt: 12 Flächen, nicht geschlossen (innere und äußere Hülle), Flächenorientierung korrekt
+
incorrect: 12 surfaces, not closed (inner and outer hull), correct surface orientation
 
     </td>   
 
     </td>   
 
</tr>
 
</tr>
Line 603: Line 644:     
== <span id="CompositeSolid">[http://www.schemacentral.com/sc/niem21/e-gml32_CompositeSolid.html gml:CompositeSolid]</span>==
 
== <span id="CompositeSolid">[http://www.schemacentral.com/sc/niem21/e-gml32_CompositeSolid.html gml:CompositeSolid]</span>==
Ein CompositeSolid wird durch eine nichtleere Menge  <math>C = \{S_1,..., S_n\}</math> von '''[[#Solid|Solids]]''' (vgl. 12.) beschrieben, für die gilt:
+
A CompositeSolid is represented by a nonempty set <math>C = \{S_1,..., S_n\}</math> of '''[[#Solid|Solids]]''' (see 10.) with the following properties:
   −
# Der Schnitt der Inneren zweier Solids <math>S_i</math>, <math>S_j</math>, 1 ≤ i ≤ n, 1 ≤ j ≤ n, i ≠ j, ist leer, d.h. entweder sind beide Solids <math>S_i</math>, <math>S_j</math> disjunkt oder beide berühren sich nur in Flächen, Linien oder Punkten
+
# The intersection of the inner of two solids <math>S_i</math>, <math>S_j</math>, 1 ≤ i ≤ n, 1 ≤ j ≤ n, i ≠ j of <math>C</math> is empty, that is either both solids <math>S_i</math>, <math>S_j</math> are disjoint or both solids are connected only by surfaces, lines or points.
# Sei <math>C'</math> die Vereinigung aller Solids aus <math>C</math>. Dann ist die Begrenzung von <math>C'</math> (die Oberfläche von <math>C'</math> ohne die Flächen oder Punkte, in denen sich die Solids berühren) die Begrenzung eines Solid.  
+
# Let <math>C'</math> be the union of all solids from <math>C</math>. Then the boundary of <math>C'</math> (the surface of <math>C'</math> without the surfaces or points where the solids touch each other) is the boundary of a solid.  
   −
In CityGML werden bei CompositeSolids ebenso wie bei Solids innere Einschlüsse (Hohlräume) nicht betrachtet.  
+
In CityGML inner inclusions ( hollow spaces ) are not considered in CompositeSolids, as in solids.  
      Line 744: Line 785:  
# Areas of the surface where the data is not sufficiently dense to assure reasonable calculations shall be removed by adding a retention criterion for triangles based on the length of their sides. For any triangle sides exceeding maximum length, the adjacent triangles to that triangle side shall be removed from the surface. # The number of control points is at least three.  
 
# Areas of the surface where the data is not sufficiently dense to assure reasonable calculations shall be removed by adding a retention criterion for triangles based on the length of their sides. For any triangle sides exceeding maximum length, the adjacent triangles to that triangle side shall be removed from the surface. # The number of control points is at least three.  
 
# The surface is not affected by the order in which the control points are given. Application schemas may add information based on the ordering of the control points to facilitate the reconstruction of the TIN from the control points.
 
# The surface is not affected by the order in which the control points are given. Application schemas may add information based on the ordering of the control points to facilitate the reconstruction of the TIN from the control points.
 +
 +
{| width="100%" cellspacing="6" border="0"
 +
|- valign="top" align="left"
 +
| width="80%" | <div style="margin: 10px; border: 2px solid #dfdfdf; background-color:#f8f8ff;">{{Copyright-BY-NC-SA-4.0}}</div>
 +
|}

Navigation menu