在THREE.js中,有没有一种方法可以使用
ExtrudeGeometry()
,使挤出深度倾斜上升。例如,假设我画了一个奇怪的形状:
然后我将它向上挤压成网格。然而,我希望它能像这样倾斜上升,而不是平顶。
(附:我使用 Blender 创建示例图像。)
我正在使用以下方法。
const shape = new THREE.Shape()
.moveTo(0,0)
.lineTo(1, 0.5)
.lineTo(2, 1)
...
.lineTo(0, 0);
const extrudeSettings = {
steps:16,
depth:10, // <-- Right here is where my question is: can this be adjusted to an angle of some kind?
bevelEnabled: false
}
const geometry = new THREE.ExtrudeGeometry(shape, extrudeSettings);
const material = new THREE.MeshStandardMaterial({color: 0xFF00FF});
const mesh = new THREE.Mesh(geometry, material);
scene.add(mesh);
我能做些什么来产生我想要的以指定角度倾斜顶部的效果吗?谢谢!
我最终使用了构造实体几何(CSG)和包
three-js-csg
的布尔运算。
npm i --save three-js-csg
创建一个对象,它将以我需要的任何角度切掉原始几何形状。