2013-09-23 25 views
0

我正在嘗試從攪拌器導入一個模型並遍歷所有頂點。我正在使用colladaloader進行導入。它一切正常,模型正在加載。但我不想要模型的表面 - 我只需要頂點位置來達到我的目的。three.js - 我如何獲得對象的頂點?

任何人都可以告訴我,如果有辦法做到這一點?例如循環遍歷導入模型的所有頂點?

感謝, 託莫

回答

0

那麼,您導入攪拌機型號爲網格,使用裝載模塊。網格具有它基於的幾何形狀。幾何體有一個頂點陣列。只是迭代呢?如果你不想顯示模型,也許只是不把它添加到場景中?乍一看,你的問題似乎沒有很好的研究。查看Mesh對象結構並查看Three.js示例!

1

如果geo代表您的幾何圖形:

for (var i = 0; i < geo.vertices.length; i++) 
{ 
    var v = geo.vertices[i]; 
    // do stuff with v... 

} 
1

好了,現在我知道了......

的console.log()幫了我很多看到的是加載的.dae文件的背後是什麼結構。

loader.load('./models/collada/test.dae', function (collada) {     
    for(i = 0; i < collada.scene.children.length; i++) { 
     if(collada.scene.children[i].geometry) { 
      for(j = 0; j < collada.scene.children[i].geometry.vertices.length; j++) { 
       //do stuff... 
      } 
     } 
    } 

    //... 
});