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

Vector 计算3D矢量中值(而不是平均值)?,vector,3d,mesh,vertex,Vector,3d,Mesh,Vertex,我有一个3D网格,我正在从网格的面法线计算顶点法线。每个顶点法线计算为共享该顶点的面所有法线的平均值 所有这些都可以很好地工作,但由于网格曲面上的面细分不均匀,顶点法线可能会倾斜的情况除外。下面是一个对象的示例,该对象的一个角具有倾斜的顶点法线: 在该图像中,您可以看到各种面法线(蓝色)、理想顶点法线(黄色)和有问题的顶点法线(红色),这些法线被网格严重细分侧的许多面法线倾斜,这些面法线都共享顶点 所以我的问题是:有没有可能计算一个向量中值,而不是平均值?这里有一张额外的图片进一步说明: 在这

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

所有这些都可以很好地工作,但由于网格曲面上的面细分不均匀,顶点法线可能会倾斜的情况除外。下面是一个对象的示例,该对象的一个角具有倾斜的顶点法线:

在该图像中,您可以看到各种面法线(蓝色)、理想顶点法线(黄色)和有问题的顶点法线(红色),这些法线被网格严重细分侧的许多面法线倾斜,这些面法线都共享顶点

所以我的问题是:有没有可能计算一个向量中值,而不是平均值?这里有一张额外的图片进一步说明:


在这里找到了解决方案:

其思想是在将面法线添加到该顶点的法线之前,根据连接到该顶点的边的角度对面法线进行加权


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

中位数仅在比较操作时才有意义,例如(相对)关于固定轴的角度-在这种情况下,这可能是刻面法线。按面积归一化不会解决问题吗?@Anton,不幸的是,不会。提供的图像只是一个易于理解的示例,但是,在某些情况下,问题法线也可能附着到面积累计大于组中其他法线的面上,从而导致倾斜。@Tyson因此,在顶点由面积不等的面共享的情况下,你还想定义法线,就好像它们的面积是一样的吗?@Anton理想的解决方案是脸面积不可知论。