Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vector 如何计算三维法向量的单位切线向量?_Vector_Java 3d_Normals - Fatal编程技术网

Vector 如何计算三维法向量的单位切线向量?

Vector 如何计算三维法向量的单位切线向量?,vector,java-3d,normals,Vector,Java 3d,Normals,这很容易从单位法向量中找到二维单位切线。只要使单位正切向量的x分量等于单位法向量的y分量的负值, 并使单位切线向量的y分量等于单位法向量的x分量: ut=〈−uny,unx〉 但是如何从单位法向量得到单位正切,在三维中使用xyz组件?我不完全确定我是否正确理解了你的问题。 我的理解是你有一个向量(x,y,z),你想找到垂直于这个向量的向量 相互垂直的向量是点积等于零的向量。 一个是(-y,x,0)(如果不是的话,x和y都是零)。叫它b1。 另一个是通过计算(x,y,z)和(-y,x,0)的叉积得

这很容易从单位法向量中找到二维单位切线。只要使单位正切向量的x分量等于单位法向量的y分量的负值, 并使单位切线向量的y分量等于单位法向量的x分量:

ut=〈−uny,unx〉


但是如何从单位法向量得到单位正切,在三维中使用xyz组件?

我不完全确定我是否正确理解了你的问题。 我的理解是你有一个向量(x,y,z),你想找到垂直于这个向量的向量

相互垂直的向量是点积等于零的向量。 一个是(-y,x,0)(如果不是的话,x和y都是零)。叫它b1。 另一个是通过计算(x,y,z)和(-y,x,0)的叉积得到的。叫它b2。
垂直于(x,y,z)的所有向量集是b1和b2的线性组合集。

3D中不是有一个切平面而不是切向量吗?这要复杂得多,但我不是专家。