首页/技术分享

Dynamo节点翻译之内置节点(BuiltIn)(四)

发布于:2019-01-02 15:49:48
4495人 分享

IsHomogeneous(元素类型)

描述

检查指定列表中所有元素的类型是否相同

输入

list: var[]..[](列表:变量)

输出

bool(布尔型变量)

注释

列表中所有元素的类型都相同则输出“true”,只要列表中存在两种或两种以上类型的图元,那么输出将为“false”。

附图

例如,判断图中混合了文本和数字的列表是否所有元素类型都相同,结果是“false”。

IsRectangular(每行索引项数目)

描述

检查多维列表中所有行是否都具有相同数量的元素

输入

list: var[]..[](列表:变量)

输出

bool(布尔型变量)

注释

比较的是列表每一行的索引项,数目相等则输出为“True”,不相等为“False”。

附图

例如,第一行有五个索引项,第二行有四个索引项,因此索引项数量不相等。

IsUniformDepth(均匀深度)

描述

检查列表是否具有均匀深度

输入

list: var[]..[](列表:变量)

输出

bool(布尔型变量)

注释

列表的深度表示列表的层级数量,层级数量相同表示其列表的深度相同。

附图

第一部分比较的两个列表每行的索引项数量不同,但是只有一个维度,于是输出为“true”。

LoopWhile(循环)

描述

通过条件判断进行循环操作

输入

init: var[]..[](开始:变量)

continueWhite: _FunctionObject(条件:函数)

loopBody: _FunctionObject(循环主体:函数)

输出

var[]..[]

注释

相当于“If”函数的反复循环,输入判断的条件直到结果满足条件后,才会停止循环输出结果。

附图

首先判断0.5是否小于9.8,如果成立则按照“loopBody”的函数继续操作,直到得到的结果能够满足“continueWhile”输入的函数即满足大于等于9.8,因此输出结果为10。

Map(映射)

描述

将值映射到输入范围

输入

rangeMin: double(最小范围:双精度)

rangeMax: double(最大范围:双精度)

inputValue: double(输入元素:双精度)

输出

double(双精度)

注释

表示定位到从“inputValue”端输入的数值在最小范围和最大范围之间位置

附图

例如,范围如果是[2,6],并且“inputValue”输入为4,那么由于4位于2和6之间的一半位置,因此输出为0.5。

MapTo(映射到)

描述

将值从一个范围映射到另一个范围

输入

rangeMin: double(最小范围:双精度)

rangeMax: double(最大范围:双精度)

inputValue: double(输入元素:双精度)

targetRangeMin: double(目标的最小范围:双精度)

targetRangeMax: double(目标的最大范围:双精度)

输出

double(双精度)

注释

前三个输入端的作用相当于节点“Map”的功能,后两个输入端作用是定义一个新的范围,然后将前三个输入端的结果在新的范围内找到指定的值。

附图

例如,首先通过前三个输入端,得到3位于范围[2,4]的0.5处,然后将结果0.5应用至新的范围[0,10]中,最后得到范围[0,10]中0.5的值为5。

转载请注明来源本文地址:https://www.tuituisoft/blog/1780.html

上一篇:

Dynamo节点翻译之内置节点(BuiltIn)(三)

下一篇:

Dynamo节点翻译之内置节点(BuiltIn)(五)