2
私は元のShapeから穴を持つMeshを作成してから、ExtrudedGeometryを作成しようとしています。問題は、私が追加する穴は、結果として得られるメッシュの高さ全体に常に詰まることです。高さを短くする方法はありますか?最終的には、全体の形状を横切ることはありませんか?押し出されたの形状のためthree.js形状の穴の高さ
リファレンスコード:
var heartShape = new THREE.Shape();
heartShape.moveTo(25, 25);
heartShape.bezierCurveTo(25, 25, 20, 0, 0, 0);
blah
var innerCircle = new THREE.Path();
innerCircle.moveTo(blah);
heartShape.holes.push(innerCircle);
var extrudeSettings = { amount: 8, bevelEnabled: true, bevelSegments: 2, steps: 2, bevelSize: 1, bevelThickness: 1 };
var geometry = new THREE.ExtrudeGeometry(heartShape, extrudeSettings);
var mesh = new THREE.Mesh(geometry, new THREE.MeshPhongMaterial());
ありがとう!
希望するものを実現するには、「Constructive Solid Geometry」(CSG)を使用する方がよいでしょう。 [ここ](http://learningthreejs.com/blog/2011/12/10/constructive-solid-geometry-with-csg-js/)、[ここ](https://stemkoski.github)から始めてください。 io/Three.js/CSG.html)、新しい構文について[このSOスレッド](http://stackoverflow.com/questions/32778617/three-js-why-is-csg-js-not-working)を読んでください。 lib自体はここにある(https://github.com/chandlerprall/ThreeCSG) – prisoner849
@ prisoner849ええ、CSGは間違いなく、この種のことについて推論するのに役立ちますが、問題はどこでも使用するには高価すぎるということです。既にそれを使用しています)。だから、私は単純で十分だが安価なアプローチを模索している。 – chaotive