2014-03-30 28 views
0

我目前正在Matlab上的一個項目上工作,我需要找到一個點反映一個線的座標。我知道如何在2D中做到這一點,但在3D中變得越來越難看。因此,我們有一條經過兩點A(x1,y1,z1)和B(x2,y2,z2)的直線。 P1(x0,y0,z0)反映在這條線上,我需要一個算法來找到P1的反射座標。算法找到一個點的座標,這是一個關於一條線在3D中的點的反射

+4

這個問題似乎是題外話,因爲它是關於數學/幾何(試行http://math.stackexchange.com)。 –

+0

我需要這個問題的算法。所以,我更好地編輯內容。 – user3478485

+0

這聽起來像你需要的方程,這使得它成爲一個純幾何問題。 –

回答

0

首先,找到點P的投影L到線AB。

L = A + AB * ScalarProduct(AB, AP)/ScalarProduct(AB, AB) 

然後計算反射

P' = P + 2*(L-P) = 2*L-P 
+0

非常感謝你.. :) – user3478485

相關問題