我在XY平面上有一个轮廓实体。我必须沿着矢量进行挤压。所以我必须使轮廓实体垂直于挤出矢量。挤出矢量可以是任意一个(Xi + Yj + Zk)。您能否提供一些关于矢量基础操作的想法,以使剖面垂直于挤压矢量?
更新
...
XY平面中的轮廓
全球向上矢量:(0,0,1)
挤出载体:(Xe,Ye,Ze)
本地权利=挤出向量x全局向上向量=(x1,y1,z1) 局部左=挤压矢量x局部右=(x2,y2,z2)
我假设我必须围绕Local right和Local Left旋转飞机两次。
因此,对于Local right = Atan(Xe.Y / Xe.Z)计算角度,并通过计算出的角度将实体围绕Local旋转。它工作正常
我的问题是如何计算Local Left的角度?
如果我总结一下,我必须做与此相反的事情(Mapping coordinates from plane given by normal vector to XY plane)
答案 0 :(得分:1)
如果你有挤压矢量和一个参考矢量,你可以将它们交叉乘以在3D空间中检索2D平面的右矢量。
我通常使用global up
向量作为参考。因此,extrusion
向量交叉乘以global up
将导致local right
向量。您的extrusion
向量与新的local right
向量之间的另一个交叉乘法将产生local up
向量。
获得local right
和local up
向量后,这些向量将成为3D空间中的X
和Y
向量。