有没有办法从Three.js QuickHull实例获取顶点数组?

我正在尝试从三个网格的快速船身创建几何,但是QuickHull实例似乎只具有与“面”相关的信息。


有没有办法从该实例获取每个顶点信息?


先感谢您。


const hull = new QuickHull().setFromObject(mesh) //Mesh is an already rendered object

//hull.vertices //this returns the entire geometry instead of the hull's vertices


陪伴而非守候
浏览 186回答 1
1回答

慕容708150

是的,那应该是可能的。像这样尝试:const hull = new THREE.QuickHull().setFromObject( mesh );const vertices = [];const faces = quickHull.faces;for ( let i = 0; i < faces.length; i ++ ) {&nbsp; &nbsp; const face = faces[ i ];&nbsp; &nbsp; let edge = face.edge;&nbsp; &nbsp; do {&nbsp; &nbsp; &nbsp; &nbsp; const point = edge.head().point;&nbsp; &nbsp; &nbsp; &nbsp; vertices.push( point.x, point.y, point.z );&nbsp; &nbsp; &nbsp; &nbsp; edge = edge.next;&nbsp; &nbsp; } while ( edge !== face.edge );}如您所见,其想法是使用面的半边以正确的顺序收集所有顶点。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript