交叉乘積的大小描述了用於構建交叉乘積的兩個向量(u,v)描述的平行四邊形的符號區域,它有其用途。這個相同的大小可以計算爲u乘以u和v之間角度的正弦的幅度的倍數: || u |||| v || sin(theta)。我可以在不計算角度的情況下找到餘弦值的正弦值嗎?
現在U(歸一化)和v(歸一化)的點積給出u和v之間的角度的餘弦值:== COS(THETA)的點(正常化(U),歸一化(V))
我希望能夠得到與餘弦值有關的符號正弦值。這是相關的,因爲正弦波和餘弦波的PI/2不同步。我知道1的平方根減去餘弦值的平方給出了無符號正弦值: sin(theta)== sqrt(1-(cos(θ)*cosθ) 其中cos(θ)I mean 。點積不角度
但是隨之而來極性符號計算(+/-)需要THETA作爲角度: (COS(希塔+ PI/2))>或==或如果非要執行ACOS功能我還不如干脆做叉積,找到幅度。
有沒有可以添加到一個餘弦值,以獲得其相關的正弦值已知比例或步?
你要知道哪個象限THETA是其他明智總有一個給定的正弦/餘弦兩種可能的角度值。請注意,這個問題也適用於ArcSin和ArcCos,所以這不是一個解決方案。 – RBarryYoung
我可以看到矢量的象限是已知的(如果(+,+,+),則(x,y,z),如果(+, - , - )則(x,-y,-z)等)的世界空間,但是計算一個旋轉空間(逆旋轉矩陣和確定符號)看起來會使交叉乘積值成爲更便宜的選擇。 – ste3e
這是2D還是3D?在2D中,您可以得到交叉乘積 - 從而得到正弦的符號 - 用兩次乘法和一次減法。在3D中,角度符號的問題是任意的,除非您將任意方向定義爲「向上」。 – Joni