从多边形三角形中解析连接顶点的列表

时间:2015-05-07 07:31:57

标签: javascript polygon vertex

enter image description here

我有:

  • 位置{x,y}
  • 的顶点数组
  • 具有顶点{a,b,c}的三角形数组(元素是指向顶点数组中所需顶点的索引的整数)

顶点数组排序不正确。如您所见,顶点9与11连接,后者为13,后者为17,等等。

所以我需要的是一个围绕周边的所需阵列的列表。在上面的图像的情况下,这将是: 0,1,2,3,4,5,6,7,8,9,11,13,17,16,15,19,21,22,23,25,27,29,39,38,37,36,35,34,33,32,31,30,28,26,24,20,18,14,12,10

我注意到那些重复的线条是我需要过滤掉的线条。例如,9到15次发生两次。我只需要保留那些发生过一次并正确排序的那些。

我已经去了,但没有走得太远,感觉非常凌乱。它会生成一个包含未排序行的数组。

var order = [faces[i], faces[i+1], faces[i+2]];
order.sort(function sortNumber(a,b){return a - b});
var names = [order[0]+":"+order[1], order[0]+":"+order[2], order[1]+":"+order[2]];
for(var k in names){
    if(paths.indexOf(names[k]) > -1)
        doubles.push(names[k]);

    paths.push(names[k]);
}
paths = paths.filter(function(el){
  return doubles.indexOf(el) < 0;
});

0 个答案:

没有答案