我在3d空间中有一个随机定向的四面体。我必须在每个面上进行计算,这些计算在面平面中是完全可解的。 我的问题是: 我应该变换(不投影)面部,这样一个空间坐标是恒定的(我可以放下它)或者我应该只在3d中完成所有这些操作吗?
请在计算速度方面给出答案。
将要执行的操作是:
*面积计算
*面部离散化
*线和圆之间的交叉点
编辑: 澄清: 圆弧段/圆形交叉点和三角形的面积计算。 三角形内圆圈的面积与三角形重叠; 在三角形内的两个圆之间的交叉区域是什么
离散意味着,我将三角形放在一个矩形中并用N \约200个点填充它。然后我找到三角形内的点,并将它们用于进一步的计算。
答案 0 :(得分:0)
我转换为2D因为:
float triArea = abs(cross(b-a, c-a))
无论问题是什么,将3D平面问题转换为2D总是更好。一切都变得容易了。
答案 1 :(得分:0)
如果您只对几个对象执行这些操作几次,那么以三维方式执行操作将会更快,因为您将有足够的开销将对象从3D转换为2D并将计算结果从2D转换回3D。但是,如果您需要多次执行这些操作,那么与通过2D操作节省的时间相比,这些开销将变得相对较小。