1、maya中的表达式同 C语言中的函数表达式abs 绝对值函数 用来求取一个数的绝对值。结构 float abs(float number) ;ceil 入函数 用来对带小数点的数值进行向上取整。结构 float ceil(float number);floor 舍函数 用来对带小数点的数值进行向下取整数。结构 float floor(float number);clamp 范围函数 用来限定函数的取值范围。结构 float clamp(float min,float max,float parameter)其中 parameter表示需要限定的数值当 par 大于最大值时候函数返回 max 当
2、 par 小于最小值时候函数返回 min当函数大于 min小于 max时候 函数返回本身;min 取小函数 两数或多数比较返回最小数;结构 float min(a,b,c)返回最小数值max 取大函数 两数或多数比较返回最大数;结构 float max(a,b,c)返回最大数值sign 正负零函数 判断数值的正负零结构 float sign(-5)返回-1 float sign(5)返回 1 float(0)返回 0;trunc 取整函数 返回带小数的数值整数部分结构 float trunc(5.3)返回 5.3;exp 指数函数 返回 e的幂指数 其中 e=2.718结构 float exp
3、(float number);log 对数函数 返回 e的自然对数结构 float log(float number);log10 常用对数函数 返回以 10为底的一个数的对数结构 float log10(100)返回值是 2;pow 幂指数函数 返回一个数的幂的值结构 float pow(float basic,float exponent)basic 是底数 exponent 是指数;sqrt 平方根函数 函数返回一个值的平方根结构 float sqrt(4);返回值是 2;三角函数sin 正弦函数 返回一个数值的正弦值结构 float sin(float number);其中正弦等于对边
4、比上斜边;cos 余弦函数 返回一个数值的余弦值结构 float cos(float number);其中余弦等于邻边比上斜边;tan 正切函数 返回一个数值的正切值结构 float tan(float number);其中正切等于对边比邻边;反三角函数asin acos atan 反三角函数 返回数值的弧度值结构 float asin(float number);返回 number数值所对应函数的弧度值;hypot 矢量值函数 返回二维矢量 的长度值结构 float hypot(float x,float y)返回 x 平方与 y平方和的平方根;angle 夹角函数 用与求取两个矢量之间的夹
5、角结构 float angle(vector1,vector2);cross 叉乘函数 用于返回两个矢量确定的平面的法线 结果为零时两矢量平行或在同一直线上;结构 float cross(vector1,vector2);dot 点乘函数用于返回两个函数点乘的结果结果为零时候两矢量垂直;结构 float dot(vector1,vector2);mag 矢量大小函数 返回矢量函数的长度值结构 float mag(vector);rot 旋转函数 返回的是个矢量 (点的位置坐标)结构 vector rot(vector point,vector axis,float angle);其中vecto
6、r axis 代表的旋转半径 float angle 旋转多少度数。unit 函数 返回的是一个矢量的单位矢量 返回的矢量和所求的矢量有相同的方向单位矢量的单位大小是 1结构 vector unit(vector vector)里面的 vector 就是要求的 deg_to_rad 函数 返回的是一个弧度数值结构 float deg_to_rad (float degrees);当为 90返回的是二分之一 rad_to_deg 函数 功能和上面的函数相反hsv_to_rgb 函数 将颜色的 hsv数值 转换为 RGB数值结构 vector hsv_to_rgb(vector hsv);rgb_
7、to_hsv功能和上面相反clear (清空数组)函数 为了清空一个数组中的所有 数据结构 int clear(array array);返回 0 或者 1 成功与不成功gauss函数 高斯函数 返回一个随机的浮点和矢量结构 float gauss(float stddev) stddev 代表的是一个数值 它返回值的规律是一个开口向下的抛物线且 y轴无限接近于 0noise 函数 燥波函数 返回的是一个-1 到 1的随机值结构 float noise (float number)其中 noise的频率设定暂时不知道 貌似和括号的数字有关系dnoise 返回一个矢量 这个矢量里的每个分量包含一
8、个-1 到 1的数值结构同上 只是数据类型不同rand 函数 返回一个随机的浮点和矢量 看输入时候的数据类型float rand(float number) 返回 0到 number或者指定 float rand (float minnuber,float maxnumber)矢量数据类型类似sphrand 返回一个随机的矢量vector sphrand (float raduis)seed函数 任命函数 设置 seed的值有点奇怪的函数不知道很直接赋值有什么区别linstep 函数 返回一个 0到 1直接的数值结构 linstep (float start,float end,float p
9、arameter)返回的是一个比例数值 0到一之间smoothstep 函数返回一个 0到 1之间的函数结构和 linstep 函数的效果差不多 返回的值不同之处一个是线性 另一个是慢进慢出的 线性hermite 函数 自定义控制的一个函数形态 函数学的好的人用 无敌 返回的是矢量或者浮点结构 hermite (start,end,tan1,tan2,float parameter)其中 float parameter的值应该在 0到一之间。其中 start 代表的是 数据的起点数据 或者 矢量的起点 点坐标即空间坐标的起始点 end 代表的是数据的结束点数据 或者矢量的终点坐标 tan1 代
10、表的是起点运动的起始方向 tan2 代表的是终点的指向方向。 float parameter 决定的是从起点到终点的等比值;*表达式的作用:1,使属性与时间建立关系,来产生动画效果。2,建立属性与属性的联系,来达到用一个属性控制另一个属性的目的。/一:MAYA 中的预定义变量(时间)1,“time“是一个变量,单位“ 秒”。2,“frame“ 是一个变量,单位“贞” 。(*注意* 属性的名称一定要写完整,并在写完后加终止符“;” )例如:nurbsSphere1.translateX = time;(*注意* 属性名称是分大小写的,“aa Aa AA “是三个完全不同的名称)(其中“=”相当于
11、赋值操作符,顺序是自右向左先计算等号右侧,再把 结果赋给左侧。)*数学运算符;“+”(加);“-”(减);“*” (乘);“/”(除);“%”(取于 ,相当于一个数被另一个数整除后的余数)二:MAYA 中的自定义变量作用:用来存储表达式中用到的临时结果。类型:1;浮点型变量:(就是带有小数点的变量)声明符为“float”;例如:float $aa = 3.14159;(*注意* a,所有变量名称前必须加“$”。b,变量的名称必须以英文字母开头。c,变量名称中不准许出现特殊符号,例如 “!,#,%,“mag ( )”(求矢量大小,求得的结果是一个浮点数)例如; mag( - ) 3.464102b;“angle ()“ (求得两矢量之间的加角,单位永远是弧度,永远取小的角 度,永远取正数)(以上函数只要知道是干什麽用的即可)