【3D】将3D模型的多边面索引拆分重新组合成三角面索引算法

版权声明:本文为博主原创文章,如需转载请注明出处,谢谢。喜欢请关注哟~ https://blog.csdn.net/sjt223857130/article/details/80907670

将模型的多边面索引,重新组合成三角面索引算法。(多边面转三角面算法)原理如图所示,算法很简单。


  • 拆分前4个索引:0,1,2,3 组成一个四边面A。
  • 拆分后6个索引:由两个三角面A和B组成。每个三角面由3个索引组成,两个三角面共计6个索引。

                                 其中:三角面A=(0 , 1 , 2)      三角面B=(0 , 2  ,3)

话不多说,直接上码。四边面转三角面的方法非常简单,就是每三个索引为一组。

数组索引是从0开始,遍历的时候i=2从2开始。就是从数组的第3位索引开始。依次获取数组索引0,2-1,2 = (0,1,2)

            
            //可以是三角面,四边面,五边面等任意多边形面 
            //条件:索引数不能小于3,因为三个顶点才能组成一个三角面。
           
            var index: Array=[[ 0, 1, 2, 3]];
             for each( var face: Array in index) {
                 for ( i = 2; i < face. length; i++ ) {
                     trace( face[ 0], face[ i- 1], face[ i]);
                }
            }


拆分结果:

0 , 1 , 2

0 , 2 , 3


猜你喜欢

转载自blog.csdn.net/sjt223857130/article/details/80907670