蚱hopper的线框和解构

练习的目的是在三维物体上生成一个复杂的曲面,然后提取该物体的面,将它们对齐并标记。 我还将探索Exoskeleton插件,该插件可让我将线框转换为管状。

我首先生成三个随机值的列表,然后将它们连接到Point组件中。 我获取了这些点列表,并使用Reduce组件随机删除了其中的一些点,直到剩下的数字对我来说很不错。 我使用点列表,然后使用slHull3D组件将其转换为网格结构。

到目前为止,我有一个包含4个面和4个顶点的网格。 我将使用Weavebird的wbStellate组件,该组件将在每个面的顶部添加一个金字塔(kis),从而使我的形状更加复杂。 I指定用于构造新内部顶点的距离。

接下来,我想在每个三角形内创建一个边框。 首先,我使用Explode获得面的列表,然后将其馈入DeMesh中以提取每个面的顶点。 稍后,我将使用Item顺序提取形状三角形的每个点,并将此数据输入到Plane3Pt中,以便为每个面生成一个平面。 我执行所有这些操作,以便能够正确缩放新的内部三角形。 然后,我合并这三个点,并使用插值法绘制内部三角形。 我本可以使用DeMesh的原始顶点,但是这样可以使项目在视觉上更加整洁。

对于每个面,我使用先前计算的平面Area所计算的每个三角形的中心来计算“ 平面原点” 。 我将需要此数据以便解构形状并标记每个面孔。 目前,我缩放内部三角形,并使用它使用边界表面在外部三角形和内部三角形之间生成边界 。 在此阶段,形状如下所示:

下一步是将形状分解为面并标记每个面。

首先,我使用List Length计算我拥有的三角形数量。 我将其输入到一个数字系列生成器中,该生成器将为我提供连续的整数标签,这些标签用于标记形状和解构后的三角形。 为了对齐解构后的三角形,我在X轴上生成了一系列彼此相距100个单位的点,并在每个这些点处构造了一个XY平面 。 我使用这些平面使用Orient在X轴上对齐解构的形状。 向该组件提供原始几何图形,每个面的初始和最终平面。

创建实体管状形状的另一种方法是使用Exoskeleton插件。

我从wbStellate组件中获取数据,使用“ 网格边缘”提取边缘并将此数据发送到ExoWireframe 。 然后,我使用wbLaplace平滑形状(不增加面部数量)。 结果我使用wbLoop更加平滑(通过增加面部数量)。