请问Rhino中能不能实现可变组件功能。

请问Rhino中能不能实现可变组件功能。

比如我画了一个4 x 4的正方形平面,然后把这个平面拉伸了10,形成了一个4 x 4 x 10的长方体。

把这个长方体定义成可变组件,拉伸长度定义成可变参数。这样我在一个场景中引入一次该组件,设置拉伸长度是4,又引入一次组件,设置拉伸长度是20,我会得到一个4 x 4 x 4的正方体和一个4 x 4 x 20的长方体

在实际中,这个起始的4 x 4正方形平面可能是个复杂图形。组件可变参数可能是多个建模步骤的多个参数,例如拉伸长度,旋转角度,圆角半径等。

Block可以你的需求,请参考这里的介绍 Rhino 8 🚀 – 第 14 页 – Shaper3d :point_left:

类似CAD中的动态块?目前不能,只能通过GH的方式来自定义这些可变参数。因为在rhino中,目前同一个名字的组件都是唯一的。等Rhino引入约束功能模块这个目标就能实现了。
我目前的是做成几个块来手动调整:
block
当然也可以做成GH的版本,用GH player,但是不同参数存下来的结果目前是同名的组,不能是同名的组件。如果要变成组件,不同参数,要bake成不同名称的组件。

对做项目来说,当统计组件使用数量的时候,做成不同名称的组件这种方式不太友好。因此我的解决方案是做成组,包含若干个组件,即使组内的组件发生了位置变化,还是同一个组。统计最终数量时,只计算这个组内主要组件的数量。比如,上面那个案例,主要组件命名为12345,两个可动的组件命名为12345ACTOR。统计时忽略Actor的数量即可。

如果在 Grasshopper 中建立基础构件,这样就可以在 Grashopper 中调整参数了

是的,目前这种动态组我做了两个方案,一个就是用户手动摆放调整位置,一个就GH player自动摆放。但是没法bake成同一个名字的组件用于数量统计。


比如这种伸缩件,只能看主要件的数量。

2 个赞

感谢几位大佬提供的思路和方法,我马上去尝试一下。