Houdini常用函数的介绍
Houdini常用函数的介绍
1、取整函数:
ceil()
ceil()取整函数,将小数部分省略,取整数值大一的值。
floor()取整函数,将小数部分省略,只取整数部分。
int()取整函数,将小数部分省略,只取整数部分。
trunc()取整函数,将小数部分省略,只取整数部分。
rint()取整函数,遵循四舍五入的取值原则。 rint(6.5)=7 or rint(6.1)=6;
round()取整函数,遵循四舍五入的取值原则。 round(6.5)=7 or round(6.1)=6;
取整函数大致分为这三种类型:
2)、floor()、int()、trunc()取整函数,将小数部分省略,只取整数部分。
取整函数还有一种是sign()函数
变量取值为正数时,则取值为1。她的取值空间就是-1,0,1。这个函数只能取三个状态值。
2、wrap()周期函数:
wrap()函数:可以做一个周期效果,产生周期性的分布效果,与求余有一样的效果。
它的取值空间在1-20之间,当变量值大于20时,进入下一个周期,从1开始继续取值。
注意下wrap()函数和clamp()函数的函数曲线。唯一的区别在于wrap()函数拥有周期性的特点。
http://s8/middle/90efaa95tb057ae389a67&690
3、fit()函数,适配函数:
1)、fit01()函数
案例说明下
fit01()函数针对的事原有变量是0-1的范围才可以是fit01()这个函数进行映射,按变量值在范围值内均匀取值。
2)、fit10(),fit01(),fit11()的映射取值的方式
fit10()函数的取值与fit01()函数的取值范围正好相反。
http://s10/middle/90efaa95tb057b0b54ed9&690
fit11()函数是从-1-1的取值范围进行取值。
这些fit()函数相对比较麻烦。现在用fit()函数代替以上几种fit()函数的形式
fit()函数的格式:fit(变量,原有的范围最小值,原有的范围最大值,新的范围最小值,新的范围最大值)
eg:
4、distance()
distance()函数的格式:
我们这里通过前面的案例说明下distance()函数的使用:在font节点的text属性中写入distance(),将测量的距离结果打印出来。
表达式:
`distance(point("../add1",0,"P",0),point("../add1",0,"P",1),point("../add1",0,"P",2),point("../add1",1,"P",0),point("../add1",1,"P",1),point("../add1",1,"P",2))`
5、length()函数用于求线段的长度值或者向量的值。
value:length($VX,$VY,$VZ)使用lenght()函数计算。
创建sphere小球,通过copy节点,将小球拷贝到解算的线段上。在copy节点的Uniform
scale的属性上调用前面新添加的属性:$SPEED/30
让小球根据lenght()函数计算出来的结果,对小球进行整体的缩放。
6、Normalize()函数的使用(标准化函数)
http://s1/middle/90efaa95tb057b5d9f5b0&690
name:(新属性的名称)normalvel ;type:(新属性的数据类型)vector创建一个向量类型;
value:(变量的数值)vector3($VX,$VY,$VZ);这里将分量写在vector3()的函数内,将三个分量合为一个向量,整体的表述出来。
http://s4/middle/90efaa95t7808c5aaaa33&690
7、mindist()或者 pointdist()两个函数等价。都是求点到面的距离。
pointdist()函数的基本格式:

加载中…