PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Punkte auf Ebene mit Abstand d


Gast
2009-10-18, 15:36:22
Die Ebene ist bestimmt durch den Aufpunkt a und den Normalenvektor n.
Nun suche ich drei Punkte auf der Ebene die den Abstand d zum Aufpunkt der Ebene haben.
Ich steh gerade etwas auf dem Schlauch, wie mache ich das?

ux-3
2009-10-18, 15:51:10
Schnitt Kugel (R=d) mit Ebene

Neomi
2009-10-18, 15:52:26
1. Beliebigen Punkt p im Raum generieren.

2. Auf die Ebene projezieren. Dazu bildest du einen Vektor v vom Punkt zum Aufpunkt, v = a - p. Das Skalarprodukt mit dem Normalenvektor der Ebene sagt dir, wie weit du von der Ebene entfernt bist. Entfernung e = dot(v, n). Um diese Distanz (ein Skalar) mußt du den Punkt verschieben, dadurch erhälst du p2 = p + d * n. Der Punkt p2 liegt in der Ebene.

3. In die richtige Entfernung schieben. Du bildest den Vektor vom Aufpunkt zum Punkt in der Ebene, also v2 = p2 - a. Du damit die Entfernung e2 = |v2|. Gewünscht ist die Entfernung d, also skalierst du den Vektor und erhälst v3 = v2 * d/e2. Der gesuchte Punkt ist dann p3 = a + v3, er liegt in der Ebene und hat den richtigen Abstand zu a. Wenn zufällig e2 = 0 ist (oder zu nah dran), dann vergiß diesen Punkt und fange wieder bei 1. an.

Das wiederholst du so oft, bis du genug unterschiedliche Punkte hast. Du kannst nämlich durch Zufall (wenn auch unwahrscheinlich) in 1. verschiedene Punkte generieren, die auf einer Linie liegen.

PS: das ist nur ein Weg zum Ziel, es gibt da diverse Möglichkeiten.

Gast
2009-10-18, 15:59:13
Danke für eure Antworten. Hat geklappt.

pest
2009-10-18, 20:32:36
PS: das ist nur ein Weg zum Ziel, es gibt da diverse Möglichkeiten.

Wahnsinn :D, wenn jetzt die Aufgabe heißt: "geben sie alle diese Punkte an", hast du ein Problem ;)