暂无封面

Objectivism

Objectivism插件为Grasshopper带来了面向对象编程的能力,允许用户将数据封装在具有命名属性的对象中。该插件支持数据的多态性过滤、属性的多样化内容存储、几何图形的Rhino视口预览以及对象的序列化等功能。随着版本的更新,插件不断增加新特性,如原型继承、预览隐藏和属性名称更改等,以提高用户体验和设计效率。

分享

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版本更新

  • 新的“更改属性名称”功能,用于在整个文档中重命名特定属性。
  • 调整“按类型过滤”组件的行为,现在所有数据都在进入时进行嫁接,以获得更好的过滤体验。
  • 移除多个类型的警告,因为我不希望这样阻止人们以这种方式使用组件。
  • “创建对象”和“获取自动属性”总是在胶囊上显示文本(而不是图标),以便用户可以轻松查看和更改类型名称。