如何获得向量在射线方向上的分量
How do you get the component of a vector in the direction of a ray
我有一个物体在向量 A 的方向上移动。
还有另一个矢量 B 指向任意方向(但可以认为是无限直线)
我想得到向量 C,它是 B 方向的向量,但具有 A 分量在 B 方向的大小。
为了说明,如果向量 A 是 Vector(1,.5,0) 并且向量 B 是 Vector(0,1,0)
那么我的矢量 C 将是 Vector(0,.5,0).
如果 B 在轴上对齐就很容易,但是如果 B 类似于 (6,3,8),我该怎么做?
让C = normalize(B)
。 (将 B
除以它的长度)
然后dot(A, C)
给你想要的向量的长度,dot(A, C) * C
是向量本身。
我有一个物体在向量 A 的方向上移动。 还有另一个矢量 B 指向任意方向(但可以认为是无限直线)
我想得到向量 C,它是 B 方向的向量,但具有 A 分量在 B 方向的大小。
为了说明,如果向量 A 是 Vector(1,.5,0) 并且向量 B 是 Vector(0,1,0) 那么我的矢量 C 将是 Vector(0,.5,0).
如果 B 在轴上对齐就很容易,但是如果 B 类似于 (6,3,8),我该怎么做?
让C = normalize(B)
。 (将 B
除以它的长度)
然后dot(A, C)
给你想要的向量的长度,dot(A, C) * C
是向量本身。