赞助商
赞助入驻
jSwan

jSwanJSwan 1.2

JSON Serialization + Deserialization for Grasshopper

更新日期:2020年5月18日分类标签: 语言: 平台:

0 人已下载 手机查看

此插件为官方原版未经修改,如需了解对应#rhino插件#的原版信息,可在页面底部点击跳转官方网站进行查看下载。

哪里可以下载到rhino插件
当然是访问建筑曲奇导航的Rhino插件板块,超全rhino 插件下载请访问: rhino插件大全


 

注意:通过Food4Rhino上的“评论”请求支持可能会被忽略
请在GitHub问题页面讨论论坛(你可以提到@andheum,我会看到的)提交问题。

Grasshopper的JSON序列化 + 反序列化

详见这里:GitHub - jSwan项目页面

# jSwan

Grasshopper 3d的JSON序列化/反序列化

## 什么是jSwan?##

jSwan是一套用于轻松处理JSON格式数据的Grasshopper组件。它旨在与Grasshopper的组件逻辑和数据结构直观地工作。

### 什么是JSON?###

根据W3Schools的定义:

>JSON代表JavaScript Object Notation

>JSON是一种轻量级的数据存储和传输格式

>JSON通常用于服务器向网页发送数据时

>JSON是“自描述的”并且易于理解

这里有一个用JSON描述的示例对象:

{

"name": "John",

"age": 30,

"cars": [

{

"name": "Ford",

"models": [

"Fiesta",

"Focus",

"Mustang"

]

},

{

"name": "BMW",

"models": [

"320",

"X3",

"X5"

]

},

{

"name": "Fiat",

"models": [

"500",

"Panda"

]

}

]

}

## 如何使用jSwan?##

你可以使用`序列化JSON`组件来构建JSON对象。

这些组件与数据树直观地交互,右键选项允许你告诉组件是将数据作为单个项目/对象处理,还是作为数组处理。

反序列化JSON甚至更容易,使用`反序列化JSON`组件即可。

该组件自动为输入数据的每个唯一属性生成一个输出。每个组件实例一次反序列化一层嵌套,因此你最终得到的数据树完美反映了输入数据的结构。

## 我会用这个做什么?##

这取决于你!在Grasshopper中使用JSON格式有很多原因。以下是一些例子:

## 详细特性 ##

### 序列化JSON ###

从你输入的数据创建JSON结构。使用ZUI(可缩放UI)根据需要添加额外属性。你给每个参数的名称将是JSON属性的名称。每个输入将对应一个属性。右键单击每个输入,选择“项目访问”(将输入列表中的每个对象视为单个项目)和“列表访问”(将整个列表视为数组)。请注意,该组件的执行遵循Grasshopper的正常列表匹配行为,所以如果属性值似乎“附加”到错误的对象上,请检查你的树结构。该组件使用默认对象序列化,所以如果你传递简单的类型,如点和向量,它们将自动序列化为具有X、Y和Z属性的对象。

该组件还有一个右键菜单项“锁定结构”,它将强制组件在生成的对象中包含空值和空属性,而不是省略它们。你可以选择“锁定所有序列化组件”来锁定你定义中的所有序列化组件。

### 反序列化JSON ###

从你输入的JSON结构中提取数据。

对于JSON对象的每个顶级属性,它将生成一个输出。具有简单值的属性(数字、字符串、布尔值等)将简单地输出该值;具有对象值的属性将简单地输出JSON格式的内容,因此你可以连接另一个组件来进一步解构。数组属性将自动分解为值或对象的列表。如果最顶层的JSON对象本身是一个数组,它将生成一个名为“array”的单个输出。

输出是根据数据中的唯一属性名称自动生成的。这意味着如果输入数据发生变化,组件本身可能会通过添加/删除输出来改变“形状”。为了防止这种情况发生,右键单击“锁定”组件的结构——这将防止其结构改变,缺失的属性将以空列表或空值输出。你可以选择“锁定所有反序列化组件”来锁定你定义中的所有反序列化组件。

### 序列化键和值 ###

这个组件允许你明确地为JSON对象的键和值提供一组值列表,而不是像常规序列化组件那样编辑参数输入名称。

### 反序列化键和值 ###

这个组件让你将JSON解构为键和值的列表,而不是为每个属性生成一个单独的输出。你还可以提供一个可选的键输入,以仅从对象中选择特定的键。

相关资源

Botcha X Rhino
Simplify the modelling of 3D footwear, allowing users to model in 2D and remapping in 3D with a vast array of efficient tools that makes ever designer
Libra
Libra is a conceptual structural design tool that operates on a topology grammar, inspired by Noam's Chomsky "Syntactic Structures" and many others.
Acapulco
Acapulco by Rhenso is a toolset for geometry creation, analysis and organization. The commands have been proven useful in our daily work at imagine computation.
IAC
Includes general purpose components in math and geometry and fulfills missing necessities in Grasshopper.
LogoViewports
Add a logo to your viewports
CondorShell
CondorShell is a plugging that allows Structural Engineersto create complex foundation models and slab models in Grasshopper and transfer the information to SAFE (Windows Only

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...
登录后可以自定义书签并同步收藏内容哦~
登录 获取素材