在标准化向量中找到缺失的坐标

时间:2014-11-27 17:28:45

标签: c++ math vector maxscript

假设我有一个标准化的向量,但我不知道z坐标是什么。如何在保留现有x和y坐标的同时检索规范化的z坐标。

例如:

X: -0.361
Y:  0.361
Z:  ?

x和y的长度为0.510531

len = sqrt((ax * ax) + (ay * ay)) -- 0.510531

谢谢!

2 个答案:

答案 0 :(得分:5)

有一个标准化的向量是什么意思?这意味着|Vx|^2 + |Vy|^2 +|Vz|^2 = 1。因此,从标准代数开始,遵循|Vz| = sqrt(1 - |Vx|^2 - |Vy|^2),这意味着Vz可以采用sqrt(1 - |Vx|^2 - |Vy|^2)

的2个值,负值和正值

顺便说一句,答案在所有编程语言中都是一样的;)Math与C ++无关。

答案 1 :(得分:1)

这只是平方根的正面或负面:

1 - ax * ax - ay * ay