线框立方体几何形状

3

我刚刚从r59升级到r62,发现线框CubeGeometry在每个面上都多出了一条对角线。有办法解决吗?

volumeGeometry = new THREE.CubeGeometry(w, h, depth);
volumeMaterial = new THREE.MeshBasicMaterial({
      color : 0x0099ff,
      wireframe : true
    });
volumeMesh = new THREE.Mesh(volumeGeometry, volumeMaterial);
scene.add(volumeMesh);
2个回答

9
如果你只需要一个简单的线框立方体,可以这样做:
var cube = new THREE.BoxHelper();
cube.material.color.setRGB( 1, 0, 0 );
cube.scale.set( 10, 10, 10 );
scene.add( cube );

2
@Dan 作为额外的解释,你看到额外的线条可能是因为 Three.js 中的 Face4(四边形)被移除了,而 CubeGeometry 现在为每个面使用两个 Face3(三角形)。我认为 BoxHelper 使用线几何体,这就是为什么它没有这个问题的原因。 - yaku
1
cube.scale.set( width/2, height/2, depth/2 ); - falko
为什么文档中没有BoxHelper?它会被弃用吗? - Justin

1
形状示例中:
var points = shape.createPointsGeometry();
var line = new THREE.Line( points, new THREE.LineBasicMaterial({
            color: 0xffffff
        }));
scene.add(line);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接