Grasshopper教程——数据处理方法

19
回复
56759
查看
打印 上一主题 下一主题
  [复制链接]

微信扫一扫 分享朋友圈

签到天数: 457 天

连续签到: 1 天

[LV.9]论坛支柱

1
推荐 发表于 2013-5-9 14:54:38 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
1.Graft tree和Flatten tree
这两个是处理树形数据的最基本运算器。
Graft作用是将数据向下一个层级分组。
Flatten作用是将所有数据拍平成一组。
打个比方,一堆学生在操场上集合,Flatten意思是所有人排成一列,而Graft是按堆分开站。


2.List ItemList Item,他能提取数列中指定序号的一个数或者数组。如图,在一个正圆上,有一圈等分点集,我们从这个点集中,提取一个点与圆心连线。

3.Sub List提取一段数据,需要输入一个区间,如图,提取的区间为(1 to 4,则序号为14的点被撮出来与中心点连线。



4.Split List将一个数列位置分割成两段,注意这里输入的是位置,而不是序号,程序语言序号是从0起的,所以,序号为2的数,是第3个数。下图为以第三个数后的位置分割成两段,分别以不同的半径作圆。

5.Shift list它可以将一个数列按指定单位数量偏移,W输入布尔值,True为将前面偏移掉的数按原来的先后顺序接在后面,False为弃掉偏移掉的数。打个比方,FusioN给大家发棒棒糖,同学们排成了一列,FusioN说前面的三个小男孩不乖,不给糖,直接移到第四个小女孩开始发糖,而当W输入端为False时,即前面三个小男孩永远得不到糖,若W为True,前面的三个小男孩可以按原来的先后顺序接在队伍后面等待发糖。下图1为未偏移的两个等分点集连线,图2为其中一个点集偏移1个单位的连线,W为True

6.Length list和Reverse listLng用于计算数列的长度,即个数。Reverse用于倒置数列。这两个好理解,不图示。Length list使用频率很高。 7.Sort list按序号重排数据,我认为这个是同类运算器中使用方法最复杂的。 输入端:K为分派给每个数据的编号,A为输入数列输出端:K为按编号从小到大的顺序重排后的编号,A输出数列和K的重排相对应。 打个比方,去医院挂号看病,候诊室中随意坐着许多挂过号等待的病人,而他们是按照挂号的顺序排队先后进去看医生的。(除非你不遵守公共秩序)如下图,为四段不等长直线,顶部为原始顺序编号,底部为重排后的顺序编号。测量出每一条线的长度,作为他的顺序编号,重排后,则直线按从短到长的顺序排列。
在继续Sort list探讨前,插播另一个运算器,Cull Pattern(位置:Set/Sequence/Cull Pattern)它可以按照输入的布尔值序列来删除数据。True为保留,False为剔除。当输入的布尔值数量小于输入数据量时,布尔值将按照输入的值重复下去。例如,当输入的布尔值为(True,false),则自动重复为(True,false)(True,false)(True,false)(True,false)(True,false)…………….因此你可以输入任意个数的布尔值组合。来提取需要的数据。下图有两列数据,A按(true,false)提取数据,B按(false,true)撮数据,绿色点为提取结果。
回到Sort list的讨论,接着上面Cull Pattern的运算结果,若我们要将A和B两个数列中的绿点,按X坐标从小到大合并成一列(即从左到右),用曲线穿起来,应该怎么做呢?
先将得到的两组点,合并成一个数列,这里我使用的是(位置set/tree/merge),它能将输入的数列,按顺序合并,即B组接在A组之后。
然后构建一个数列,用于对上面合并后的点集逐个编序号。我们需要的结果是:A组的四个点序号为0,2,4,6B组三个点的序号为1,3,5请读者参考图示好好领会。
要达到上面的效果,还有更简单的方法,数据编织。Weave运算器,可以设定多组数据的排列方式来编织成一个数列。P端为排列方式,右击运算器可以添加更多的输入端。例如有如下两个数列Stream_A:5,0,4Stream_B:2,7,8P端输入的编排方式为:0,1(这里与之前介绍的CullPattern的布尔值设定同理)编织后的结果:5,2,0,7,4,8

8.Flip Matrix(位置set/tree/flip matrix)它的作用是将各数组中相同编号的数据弄成一组。如图所以,三个正圆被各被等分为六段,得到三组数据,每组里有该圆上的七个等分点。如果我们需要将三个圆上,对应的三个点弄成一组,这时可以用Flip Matrix

9,最后介绍一个简单实用的运算器Duplicate Data(位置:Set/Sequence/Duplicate)它的作用是按数量重复数据 PS:以上介绍的都是数据处理的大部分常运算器,数据处理的方式有:分类,拍平,分支,提取,编织,重复,优化,重排,偏移等等很多,这里主要是让大家认识各种运算器。而不是教大家最简单的方法,以后的实例在会对各种思路的优越性进行比较。

本教程转自http://blog.sina.com.cn/s/blog_7cc7a7f20100r1m7.html
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏
收藏5
支持
支持0
反对
反对0
订阅 Rhino 最新资讯
回复

使用道具 举报

签到天数: 239 天

连续签到: 1 天

[LV.7]亲友会员

2
发表于 2013-5-10 06:23:32 | 只看该作者
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

签到天数: 94 天

连续签到: 1 天

[LV.6]常住会员

3
发表于 2013-5-13 19:13:11 | 只看该作者
激动人心,无法言表!
回复 支持 反对

使用道具 举报

签到天数: 20 天

连续签到: 2 天

[LV.4]三不五时

4
发表于 2013-5-14 14:16:54 | 只看该作者
F大的
回复 支持 反对

使用道具 举报

签到天数: 21 天

连续签到: 1 天

[LV.4]三不五时

5
发表于 2013-8-6 17:11:57 | 只看该作者
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

签到天数: 97 天

连续签到: 2 天

[LV.6]常住会员

6
发表于 2013-8-9 15:54:19 | 只看该作者
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

签到天数: 97 天

连续签到: 2 天

[LV.6]常住会员

7
发表于 2013-8-9 16:15:22 | 只看该作者
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

签到天数: 97 天

连续签到: 2 天

[LV.6]常住会员

8
发表于 2013-8-9 16:17:13 | 只看该作者
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

签到天数: 4 天

连续签到: 1 天

[LV.2]故地重游

9
发表于 2013-9-3 10:06:45 | 只看该作者
值得一用一下。谢谢楼主
回复 支持 反对

使用道具 举报

签到天数: 97 天

连续签到: 2 天

[LV.6]常住会员

10
发表于 2013-9-3 10:28:15 | 只看该作者
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

签到天数: 2 天

连续签到: 1 天

[LV.1]到此一游

11
发表于 2013-9-3 18:27:02 | 只看该作者
3q for sharing
回复 支持 反对

使用道具 举报

签到天数: 1830 天

连续签到: 64 天

[LV.Master]开坛元老

12
发表于 2016-11-3 19:57:46 | 只看该作者
1111111111111111111111
回复 支持 反对

使用道具 举报

签到天数: 51 天

连续签到: 1 天

[LV.5]经常光顾

13
发表于 2016-11-4 13:52:20 | 只看该作者
很不错,讲的倍详细,学到了不少!
回复 支持 反对

使用道具 举报

签到天数: 6 天

连续签到: 2 天

[LV.2]故地重游

14
发表于 2016-12-29 11:01:20 | 只看该作者
言简意赅  支持楼主
回复 支持 反对

使用道具 举报

签到天数: 11 天

连续签到: 1 天

[LV.3]三顾茅庐

15
发表于 2017-1-30 15:19:46 | 只看该作者

很不错,讲的倍详细,学到了不少!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

15927211580

周一至周五 9:30-18:00

武汉市武昌区中山路380号201

  • 关注微信公众号

  • 微信咨询客服号

QQ- Archiver- 鄂ICP备12016959号   充值M币 |勋章中心 | ( 鄂ICP备12016959号 )

Powered by Discuz!X3.2© 2001-2013 Comsenz Inc.

金融信息行业协会理事单位 | 信息服务业行业协会会员单位 | 网络信贷服务业企业联盟单位