2012-03-21 93 views
9

是否可以删除或切掉three.js中的几何形状?是否有可能在three.js中切割几何形状的几何形状?

例如,如果我制作了一个CylinderGeometry,并且想要将它的正面“刮”掉,那么前面是平坦的,背面是弯曲的,就像一个半圆柱体。这可能吗?

我需要能够将它做到一个圆柱体的正面和背面,所以只是两侧是弯曲的。

回答

19

这是可能的。你可以自己处理三角形,或者使用类似Constructive Solid Geometry这样的库的布尔运算来进行网格减法。

CSG three.js

有涉及操纵几何一些建议,看看herehere

还有其他algorithms to slice a mesh可以移植,但它取决于你需要这个东西是多么简单或复杂。

+0

谢谢,这正是我一直在寻找的。干杯@George – mcclennon19 2012-03-22 11:32:26

+0

@George你可以举一个例子,如果我想直接处理三角形,怎么看? – schlenger 2014-08-30 09:37:12

+0

three.js中的网格具有[Geometry](http://threejs.org/docs/#Reference/Core/Geometry),它允许您直接访问“顶点”(三维点)和“面”(三角形连接这些3d点)。在这个阶段,你可以移动顶点,你可以添加/删除面,并因此以任何你喜欢的方式修改你的网格。 [GeometryUtils](http://threejs.org/docs/#Reference/Extras/GeometryUtils)可能派上用场。你想如何操作网格的几何? – 2014-08-30 14:25:58