【发布时间】:2019-08-22 01:43:58
【问题描述】:
我正在尝试显示加载了OBJLoader() 的目标文件的线框。这是我正在使用的代码的一部分:
var loader = new THREE.OBJLoader();
loader.load( filePath, function ( object ) {
object.traverse( function ( child ) {
if ( child instanceof THREE.Mesh ){
var geometry = child.geometry;
materialMesh = child.material;
mesh = new THREE.Mesh(geometry, materialMesh);
var useWireFrame = true;
if (useWireFrame) {
mesh.traverse(function (child) {
if (child instanceof THREE.Mesh)
{
child.material.wireframe = true;
hild.material.color = new THREE.Color( 0xff0000 );
}
});
}
}// end if
scene.add( object );
});
});
在下图中是我想要得到的结果:
但是,这就是我的代码得到的结果:
每个单元格都有对角线!谁能告诉我应该修改什么以获得与第一张图片等效的结果?
谢谢!
【问题讨论】:
-
您必须绘制四边形而不是三角形作为网格的基元,才能将其作为线框,我认为 ThreeJS 不支持。所以我认为使用线框不可能得到你想要的结果。相反,您可以尝试在网格上使用
GridHelper以获得类似的效果。 -
您好,感谢您的回答,请看下面我的评论。
标签: object three.js mesh loader wireframe