Objectivism为Grasshopper带来了面向对象编程的能力,使用户能够将数据封装在对象中作为命名属性。
首先 - 我必须将荣誉归功于Objectify插件,作为Objectivism的灵感来源,没有它,Objectivism可能不会存在。
Objectivism具有以下特点:
- Grasshopper中使用的任何数据都可以放入Objectivism对象中,这包括将Objectivism对象放入另一个对象中。
- 对象具有类型,并且可以根据类型进行过滤,支持原始形式的多态性。
- 对象属性可以包含单个项目、项目列表或使用访问修饰符的项目树,就像Grasshopper Python/C#/VB脚本组件一样。
- 当Grasshopper中启用预览时,对象中的任何几何图形都将在Rhino视口中预览。
- 具有几何形状的对象可以使用Grasshopper的变换组件进行变换。
- 对象支持序列化,这意味着对象可以在脚本之间内部化或通过Data Input/Data Output组件传递(注意,并非所有插件都支持序列化,不支持序列化的插件数据将无法在Objectivism对象中成功序列化)。
作为插件的早期版本,可能会存在错误/问题,请在这里或作为Github问题报告它们,以便我可以修复它们。
1.1.0.2版本更新
- 更新更改属性名称表单,使其与新组件一起工作。
1.1.0.0版本更新
- 简单的原型继承。
- 按属性隐藏预览的能力。
- 实施测试
1.0.0.2版本更新
- 新的“更改属性名称”功能,用于在整个文档中重命名特定属性。
- 调整“按类型过滤”组件的行为,现在所有数据都在进入时进行嫁接,以获得更好的过滤体验。
- 移除多个类型的警告,因为我不希望这样阻止人们以这种方式使用组件。
- “创建对象”和“获取自动属性”总是在胶囊上显示文本(而不是图标),以便用户可以轻松查看和更改类型名称。