我想获得两条线之间的点,由原点的Vec3D点和方向线的角度定义。由于我的英语和我的数学不够好,无法解释,我画了一张照片:
在绿色的valid点,红色而不是valid。 有人可以帮我解决这个问题吗? 我有Vector3D点,方向(或角度),以及要检查的Vec3D列表。
由于
答案 0 :(得分:0)
基本思想是用半角约束中心点,检查点和方向之间的角度:
normalize direction
minDotProduct = cos(angle / 2)
for each point p
d := p - center
normalize d
point is valid iff dot(d, direction) >= minDotProduct
next