Javascript 用three.js从圆柱体上切下一片来绘制圆柱体的最简单方法是什么?

Javascript 用three.js从圆柱体上切下一片来绘制圆柱体的最简单方法是什么?,javascript,three.js,Javascript,Three.js,我想知道你如何使用three.js绘制一个带有切块的圆柱体,例如: 非常感谢您的回复。使用THREE.Cylinder Geometry并设置Talength-参数。默认值为2*Pi,表示完整的圆柱体。我制作了一把小提琴,看起来像你的形象: 缺点:切片的面不见了,所以你可以在看切口时看到圆柱体内部:(然而,这是最简单的方法,如果你需要一个封闭的圆柱体,我建议用THREE.CSG可能获得你想要的形状的最简单方法是挤出THREE.shape像这样: var settings = { amou

我想知道你如何使用three.js绘制一个带有切块的圆柱体,例如:


非常感谢您的回复。

使用
THREE.Cylinder Geometry
并设置
Talength
-参数。默认值为
2*Pi
,表示完整的圆柱体。我制作了一把小提琴,看起来像你的形象:


缺点:切片的面不见了,所以你可以在看切口时看到圆柱体内部:(然而,这是最简单的方法,如果你需要一个封闭的圆柱体,我建议用
THREE.CSG
可能获得你想要的形状的最简单方法是挤出
THREE.shape
像这样:

var settings = {
    amount: 2,
    steps : 1,
    bevelEnabled: false,
    curveSegments: 24
};

var shape = new THREE.Shape();
shape.moveTo( 0, 0 );
shape.absarc( 0, 0, 10, 0, Math.PI * 1.75, false );
shape.moveTo( 0, 0 );

var geometry = new THREE.ExtrudeGeometry( shape, settings );
小提琴:


three.js r.73

你要找的是一种被称为“构造实体几何体”的东西。基本上,这只是一种将三维几何体视为实体的思维方式,这样你就可以进行布尔运算,例如合并和减法。这样你就可以做一些事情,比如构造圆柱体,构造一个楔形形状作为一种“模具”,然后“切”这是我过去使用过的一个3.js库,但它的结果和效率无法保证:非常感谢你的回答。这正是我所需要的,但是有没有办法在代码中的其他地方调整楔形的大小?如果你无法回答自己的问题,请发一篇新帖子,嘘编写代码,并清楚地描述问题。