我需要找到 2 个点视觉地平线,曲面的。
I have:
- 4个角点的XYZ
- 2 个曲线边缘贝塞尔点的 XYZ
我需要计算:
Note:我得到了一个解决方案上次我问了这个问题,但只找到了extrema的曲线,而不是地平线点,它根据两条曲线相对于彼此的位置和旋转而变化。
您没有说明您的曲面是如何定义的,只是说它由两条二次贝塞尔曲线界定。有很多方法可以构建这样的表面,并且每种构建方法都有不同的地平线。所以这个答案将是猜测。
地平线由表面上的那些点组成,从相机到该点的矢量与表面相切,如下所示:
二次贝塞尔曲线具有参数方程
B(t) = (1 − t)2 P0 + 2(1 − t)t P1 + t2 P2
对 t 求导即可得到曲线的正切:
B′(t) = 2(t − 1) P0 + 2(1 − 2t) P1 + 2t P2
这与从相机(在原点)到曲线的矢量平行,如果
B(t) × B′(t) = 0
解决这个问题t你就会在地平线上找到曲线上的点。如何将其扩展到整个表面的地平线取决于表面的构造方式。 (也许您可以找到曲面两端曲线的地平线点,然后用直线将它们连接起来?)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)