Gutentag,伙计们!
我试图在我的ExtrudeGeometry上打个洞,但它不起作用。
我的代码如下所示:
var shape = new THREE.Mesh(new THREE.ExtrudeGeometry(drawShape(), options), new THREE.MeshLambertMaterial({color: 0x593788}))
function drawShape() {
// create a basic shape
var shape = new THREE.Shape();
shape.moveTo(10, 10);
shape.lineTo(10, 40);
shape.lineTo(30, 40);
shape.lineTo(30, 10);
shape.lineTo(10, 10);
var hole1 = new THREE.Path();
hole1.moveTo(12,15);
hole1.lineTo(15,16);
hole1.lineTo(16,16);
hole1.lineTo(16,15);
hole1.lineTo(12,15);
shape.holes.push(hole1);
return shape;
}
我得到的是一个没有洞的普通形状图
请问为什么会发生这种情况?
因为当我添加absellipse或absarc时 - 这个洞工作正常。
var hole2 = new THREE.Path();
hole2.absellipse(23, 24, 2, 3, 0, Math.PI * 2, true);
shape.holes.push(hole2);
是否不可能推出由线点而不是椭圆或弧形成的孔?
如果你知道为什么这不起作用或如何解决它,请帮助。