2013-04-04 231 views
0

我正在使用一個模型,在這個模型中,我必須計算與連接這些點的線上點p3上的p1和p2(3d)的矢量的垂線。垂直於矢量上的矢量

這種安排可能會像這樣p1 -------- p3 --------- p2。有時這個p3可能與p1或p2一致。

我知道如何計算垂直向量p1-p2,一般使用點積和決定比率。但如何讓它通過這個點P3?

我將在幾何着色器計算..!

任何想法..?

回答

1

有幾個誤解:

  • 甲向量沒有位置:一個垂直矢量是無處在空間中,它僅僅是一個方向

  • 要確定的法向矢量,以通常的方式是使用交叉產品,而不是點積(儘管您仍然可以使用某些代數點產品,例如生成隨機向量並移除其切向分量)

  • 您可能想要創建al這個線段起源於p3並且與p2-p1垂直:在這種情況下,既然你提到你已經能夠生成一個法線向量(我們稱之爲V),那麼繪製這樣一條線就是將頂點放在p3和另一個頂點在p3 + a * V其中「a」是任何正值,將決定您的段的長度

0

WhitAngl是正確的。你也不受限制你的向量。有一個平面P通過點p3(垂直於p1-> p2),任何包含在P中的矢量都能滿足你的條件。如果特定矢量沒關係,我使用了以下技術:

  • 開始與x軸矢量(1,0,0)
  • 投影到平面P
  • 如果投影是零長度,選擇y軸向量(0,1,0)並重試,或z軸並重試

P的平面方程可以直接從p1和p2(|| p2-p1 | |是平面的法線,然後使用p3作爲P的定義點)。