Zeile 440: |
Zeile 440: |
| ==gml:CompositeSurface== | | ==gml:CompositeSurface== |
| | | |
− | Ein Solid modelliert einen beliebigen Festkörper. Die Oberfläche des Solid wird über eine Menge von Polygonen beschrieben, die bestimmte strukturgebende Eigenschaften erfüllen müssen.
| + | Eine [http://www.schemacentral.com/sc/niem21/e-gml32_CompositeSurface.html '''CompositeSurface'''] |
− | Die Menge <math>C=\lbrace S_1,S_2,...,S_n \rbrace</math> von Polygonen beschreibt die Oberfläche eines Solid genau dann, wenn gilt:
| + | 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 genau 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>. | + | # 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> sind so orientiert, dass die Flächennormalen nicht ins Innere des Festkörpers zeigen, sondern nach außen. | + | # 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. |
− | # Für jeden Punkt <math>P</math>, der in einem linearen Ring eines Polygons aus <math>C </math> vorkommt, gilt: Der Graph <math>G_P =(V_P, E_P)</math>, der aus Polygonen und Kanten gebildet wird, die <math>P</math> berühren, ist zusammenhängend. Dabei repräsentiert jeder Knoten <math>v</math> aus <math>V_P</math> genau ein Polygon, dessen linearer Ring <math>P</math> enthält. Zwei Knoten sind genau dann mit einer Kante <math>e</math> aus <math>E_P</math> verbunden, wenn die Polygone, die durch die Knoten repräsentiert werden, eine gemeinsame Kante haben, die <math>P</math> berührt .
| |
| | | |
| 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. |
− | <math>S</math> wird auch als geschlossene [http://www.schemacentral.com/sc/niem21/e-gml32_CompositeSurface.html '''CompositeSurface'''] bezeichnet.
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
| | | |
| == <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>== |