Handbuch für die Modellierung von 3D Objekten - Teil 1: Grundlagen (Regeln für valide GML Geometrie-Elemente in CityGML): Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
| Zeile 440: | Zeile 440: | ||
==gml:CompositeSurface== | ==gml:CompositeSurface== | ||
Eine [http://www.schemacentral.com/sc/niem21/e-gml32_CompositeSurface.html '''CompositeSurface'''] | |||
ist eine Menge <math>C=\lbrace S_1,S_2,...,S_n \rbrace</math> von Polygonen, für die | |||
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 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> | # 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 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> | ||
# 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 | # 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>. | ||
# Die Polygone aus <math>C</math> | # Die Polygone aus <math>C</math> sind so orientiert, dass die Flächennormale benachbarte Polygone in dieselbe Richtung zeigen. | ||
# Die Polygone aus <math>C</math> sind zusammenhängend, d.h. in dem dualen Graphen von <math>C</math> gibt es einen Weg, der alle Knoten umfasst. Der duale Graph G<sub>C</sub> =(V<sub>C</sub>, E<sub>C</sub>) von <math>C</math> besteht aus einer Menge V<sub>C</sub> von Knoten und einer Menge E<sub>C</sub> von Kanten. Jeder Knoten v aus V<sub>C</sub> repräsentiert genau ein Polygon aus <math>C</math> . Eine Kante zweier Polygone <math>S_k</math> und <math>S_l</math> aus <math>C</math> wird in G<sub>C</sub> durch eine Kante <math>e=(v_{s_k},v_{s_l})</math> in E<sub>C</sub> dargestellt. | # Die Polygone aus <math>C</math> sind zusammenhängend, d.h. in dem dualen Graphen von <math>C</math> gibt es einen Weg, der alle Knoten umfasst. Der duale Graph G<sub>C</sub> =(V<sub>C</sub>, E<sub>C</sub>) von <math>C</math> besteht aus einer Menge V<sub>C</sub> von Knoten und einer Menge E<sub>C</sub> von Kanten. Jeder Knoten v aus V<sub>C</sub> repräsentiert genau ein Polygon aus <math>C</math> . Eine Kante zweier Polygone <math>S_k</math> und <math>S_l</math> aus <math>C</math> wird in G<sub>C</sub> durch eine Kante <math>e=(v_{s_k},v_{s_l})</math> in E<sub>C</sub> dargestellt. | ||
Aus (1) und (2) ergibt sich, dass die Oberfläche, die durch <math>C</math> beschrieben wird, keine Löcher enthalten darf. Mit den weiteren Bedingungen (4) und (5) ergibt sich, dass das Innere des durch <math>C</math> beschriebenen Festkörpers zusammenhängend sein muss. | Aus (1) und (2) ergibt sich, dass die Oberfläche, die durch <math>C</math> beschrieben wird, keine Löcher enthalten darf. Mit den weiteren Bedingungen (4) und (5) ergibt sich, dass das Innere des durch <math>C</math> beschriebenen Festkörpers zusammenhängend sein muss. | ||
== <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>== | ||