如何解决如何计算3D多边形的内角?
对于在三角形网格中定义为孔的多边形,每个顶点定义为[x,y,z]坐标,如何计算各边之间的内角?该孔不是平面的,但可以具有任意曲率。
可以使用点积计算出边缘之间的最小角度。但是,我想要内角在[0,360]度的范围内,因此需要知道内角是凸角还是凹角。如果它是凹的,我可以简单地将点积获得的角度增加180度。
也许有某种方式可以使用周围三角形的法线吗?
解决方法
如果您可以沿边界连续定义顶点的顺序,则可以通过在角度边缘绘制线段并将中心顶点与该线段进行比较来确定边缘是凸面还是凹面:
如图所示,我已经定义了一个段,该段连接由顶点1、2和3定义的角度的边缘。只要您的顶点顺序是一致的,则根据是否是角的中点(此处为顶点2)位于left or the right of the line segment。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。