Max:数据测量

Data Scaling
Data Scaling

1. 新物件iter:点击消息框后看Max窗口就很清楚了,它能将输入其的信息列转为一组数据流,信息列中的各个数据被打散,每个一行。

2. 新物件trough和peak:自己一试便知,trough捕捉并输出目前为止最小的输入,peak捕捉并输出目前为止最大的输入。注意这里的“目前为止”四个字,这两个物件的工作并不是以每一次的动作为基础,而是以全程为基础,比如你一开始将例子中的数字框从1拖到12,那么这两个物件就会认为1是最小,12是最大,即使你今后又在1~12的范围内改变了无数次数字框的值,但是trough和peak的输出永远都是1和12。因为他们并不以每一次的操作为基础,而是以全程作为基础判断最大和最小值。

3. 新物件slide:平滑一组数据的输出。教程唧唧歪歪讲了一大堆,不清不楚。实践出真知:引数为两个值,第一个值决定上升的速度,第二个值决定下降的速度,值越小,速度越快,反之亦然。这里边用到一个除法,具体我认为没必要深究。在拖动的过程中,发现一些很有意思但不好解释的现象,发觉已超越吾之智商所及,或者需要静心冥想,这里就不表了,诸位看官请自便。

4. 大家伙:这是一个基于天气数据的patch。开启程序最上方的toggle,先看右边那一溜:counter从0数到364,代表一年的天数,这个值被输入其下方的coll无建中,双击它,我们可以看到,这是一组以天数限定月输出的数据,比如说,第90天,就是四月的第一天,依此类推,这个coll输出相应天数对应的月份后,进入红框的coll物件,双击它,发现里边包含的是一组四个地区(纽约,巴黎,布宜诺斯艾利斯和东京)月平均气温的值,这四个值被unpack后送入四个浮点(f)物件后转为小数后送入slide。这里slide上行和下行都设为了15,意即一个相同的气温值至多被发送31次(一个月的天数),而这个发送的次数,实际上还是由蓝框coll里的数据决定,比如二月,它就只会被发送28次。slide出来的数字被pack入multislider形成柱状图,multislider左下方的出口输出它的值后送入iter拆解后,每次形成一个个由四个音符组成的合声发送出来。

5. multislider右上方那个写着peakhold…的消息框,是这么个意思,multislider有个属性叫做Peak Hold(教程上写的,但我一直没在物件检查器里照着过…),开启它,就会在柱状图每根柱子顶端放一条横线,到最大值的时候,柱子往下走,而横线还放在那,用于标示每个阶段的最大值。他举这个例子就是告诉我们,我们可以使用这样的方式来对检查器类型的消息进行控制。后边还跟了个peakreset,用于在toggle关闭开启后更新最大值。

6. 现在来看大家伙左边那一溜,它用来设定multislider的范围。一切都很好理解,这里我们可以看到coll搭配iter以及trough和peak的用法、用途。trough和peak这么设初始值(最小值1000,最大值0)的原因是,可以让任何输入他们的新值马上建立起一个新的标准。coll物件的消息框dump的作用是:设置coll物件一次输出一个list。

7. 注意,这里trough和peak出来的最小和最大值32、81进入的不再是pack物件,而是pak(念作pock)。二者的区别教程里没写,这里我copy英文help档原文在这吧,因为我已经很晕了,,而且他写得非常绕,所以懒得翻了:PACK:pack takes separate items and combines them into an output list. PAK:The pak object (pronounced “pock”) offers much of the functionality of its big brother, pack, but works like a combination of the pack and bondo objects–output of the entire stored list occurs whenever input is received in any inlet.

本里内新物件:
iter:将一个list打散为一系列数字
peak:如果一个数字大于之前的数字,输出它
trough:如果一个数字小于之前的数字,输出它
slide:用对数法过滤一个输入值

Be Sociable, Share!

发表评论

电子邮件地址不会被公开。 必填项已用*标注