background image
Um eine Ordnung im Mesh zu erhalten, wurde für die Reihenfolge der Eckpunkte (Orientierung der
Dreiecke) ein gegenläufiger Uhrzeigersinn gewählt (Counter-Clockwise (CCW)), damit auf alle
Dreiecke in der gleichen Weise zugegriffen werden kann. Für die graphische Darstellung der
Dreiecke ist dadurch die äußere Normale, die die Vorderseite (Front Face) definiert, dem Betrachter
zugewandt.
4.2.3 Bestimmen des Mittelpunkts der Hypotenuse
Für die Ausrichtungen 0 bis 3 lässt sich die Position des Mittelpunkts der Hypotenuse bestimmen
über:
hypo.x = point2.x + (point3.x ­ point2.x) / 2;
hypo.z = point2.z + (point1.z ­ point2.z) / 2;
Entsprechend gilt für die Ausrichtungen 4 und 5:
hypo.x = point1.x;
hypo.z = point2.z;
Und schließlich für die Ausrichtungen 6 und 7:
hypo.x = point2.x;
hypo.z = point1.z;
Die y-Koordinate wird aus dem nächstgelegenen Punkt im Höhenfeld bestimmt, das, wie in
Abschnitt 4.1.1 beschrieben, die Funktion get_height(...) erledigt:
hypo.y = get_height( hypo.x, hypo.z );
17
Abbildung 13: Die möglichen Ausrichtungen der Dreiecke im Raum bei rekursiver
Unterteilung über den Mittelpunkt der Hypotenuse.