计算中值3D矢量(而不是平均值)?

时间:2018-05-25 22:38:41

标签: vector 3d mesh vertex

我有一个3D网格我正在计算网格面法线的顶点法线。每个顶点法线计算为共享该顶点的面的所有法线的平均值。

一切正常,除非在 - 由于网格表面上的面不均匀细分 - 顶点法线可能会偏斜。下面是一个在其一个角上具有倾斜顶点法线的对象的示例:

Box

在此图像中,您可以看到各种面法线(蓝色),理想顶点法线(黄色)和有问题的顶点法线(红色),它们被网格严重细分侧面上的多个面法线倾斜它们共享顶点。

所以我的问题是:是否可以计算向量中位数而不是平均值?这是一个额外的图像,以进一步说明:

Median

1 个答案:

答案 0 :(得分:3)

在这里找到解决方案:

https://knowledge.autodesk.com/search-result/caas/CloudHelp/cloudhelp/2015/ENU/Max-SDK/files/GUID-0FCB4578-77F8-4F05-99CD-349E85F13639-htm.html

这个想法是在将面部法线添加到该顶点的法线之前,通过连接到所讨论的顶点的边缘的角度来加权面法线。

因此,在我的第一张图像中,右侧法线的大分组将具有与顶部/左侧的单个法线相同的累积权重....导致该角点顶点的整体理想法线。