2013-12-17 48 views
0

尝试使用Three.JS和CanvasRenderer创建一些圆形/圆形段。使用THREE.ShapeTHREE.ShapeGeometry这里使用CanvasRenderer创建一个环形/圆形扇区

例子:http://jsfiddle.net/25U8E/1/

的三角看起来我错了,当我试图通过直接修改geometry.vertices [N] .X等THREE.Shape移动的顶点,我使用降级并变得不那么流畅。

有没有更好的方法来创建一个扇区 - 一个允许我修改顶点之后?

+0

尝试'THREE.RingGeometry(150,300,16,2,0,Math.PI/4);'然后解释您的意思“修改顶点“和”不太平滑“。 – WestLangley

+0

对不起,这有点含糊 - 已经很晚了。这个http://i.imgur.com/iI4B6yx.png复合材料屏幕截图显示了我的意思。顶级部门是应用程序启动时的底部,底部是经过几次迭代移动几何体后的各个部分,以改变扇区的大小。移动每个垂直的代码与最初创建它们的代码相同,所以我不认为这是一个数学错误。 一旦创建网格,这可能不是一个有效的事情吗? – speedwell

+0

http://jsfiddle.net/NWJQk/我尝试使用THREE.RingGeometry。如果我没有使用THREE.DoubleSide作为素材,那么该片段无法正确呈现。如果我这样做,有很多z战斗。 还有什么我必须设置? – speedwell

回答

0

不知道这是应该做的#1-Y的事情,但这里有云:

创建一个环段,正如我需要正确的方法是使用RingGeometry类是这样的:

THREE.RingGeometry(150, 300, 16, 2, 0, Math.PI/4);

它确实包含一个错误,这意味着一些vert是错误的 - 在这里说明:http://jsfiddle.net/NWJQk/ - 当它旋转时,你会看到背面是错误的。

那个小提琴引用了最新版本的Three.JS的URL,所以如果它开始工作,这意味着这个bug已经修复并且发布了。

编辑:什么使用线框失败的更清晰的说明:http://jsfiddle.net/NWJQk/3/