相关分类
MAYA入门教程
MAYA建模教程
MAYA材质灯光
MAYA渲染教程
MAYA角色动画教程
MAYA经典教程
MAYA场景教程
MAYA视频教程
飞特网 顶部通栏广告

MAYA表达式动画之Functions

平面算计发布于:2012-3-10 00:18 |原作者: 飞特网络信息采编| |来自:网络收集整理
简介: 本教程向FEVTE的朋友们介绍MAYA表达式动画之Functions,教程比较基础,也很实用,希望对朋友们有所帮助!

  我尽可能的将我所了解的内容告诉大家,有不周全的地方请参考 maya 的联机手册,虽然它是英文的。哎!不学英文怎么活?!

表达式动画之functions
   三 数学函数的用法

   了解这一部分的内容最好能够参考高中教本关于三角函数的章节。
abs 是 absoulte 的缩写意思是取决对值。
   例如:
int abs(int number)
float abs(float number)
vector abs(vector number)
   函数名是 abs, 它将返回 number 的绝对值。绝对值是没有正负数之分的数值。
   本例说明 abs 函数有 3 种格式。每种格式要求一个不同数据类型的参数并返回一个不同数据类型的值。
   第一个格式说明用户可以键入整数类型参数,并且函数返回一个整数。比如, abs(-3) 返回数值 3 。
   第二个格式说明用户可以键入一个浮点类型参数,并且函数返回一个浮点数,比如, abs(-7.54) 返回 7.54 。
   第三个格式说明可以键入一个向量,而且函数返回一个向量。比如, abs(%26lt3, -6.3, -2 返回 %26lt3, 6.3, 2 。

acos
   返回的是一个数值的反余弦弧度值,其范围是 0~ pi 。
float acos(float number)
number 是角的余弦值,其范围是 -1~1 。
   例如:
acos(1)
   返回值是 0 。
acos(-0.5)
   返回的是 2.0944 弧度。

acosd
   返回的是一个数值的反余弦角度值,其范围是 0~180 。
float acosd(float number)
number 是角的余弦值,范围是 -1~1 。
   例如:
acosd(1)
   返回值是 0 度。
acosd(-0.5)
   返回值是 120 度。
asin
   返回值是一个数值的反正弦弧度值,其范围是 -pi/2 到 pi/2 。
f loat asin(float number)
number 是角的正弦值,其范围是 -1~1 。
   例如:
asin(0.5)
   返回值是 0.525 弧度。
asind
   返回的是一个数值的反正弦度数值,其范围是 -90 到 90 。
float asind(float number)
number 是角的正弦值,范围是 -1~1 。
   例如:
asind(0.5)
   返回的是 30 度。
atan
   返回的是一个数值的反正切弧度值,其范围是 -pi/2 到 pi/2 。
float atan(float number)
number 是角的正切值,可为任何值。
   例如:
atan(1)
   返回值是 0.785 。
atand
   返回的是一个数值的反正切角度值,其范围是 -90~90 度。
float atand(float number)
number 是角的正切值,可为任何值。
   例如:
atand(1)
   返回的是 45 度。
atan2
   返回的是一个在 x,y 坐标轴中指定的反正切弧度值。这个角是以 x 轴为一边,另一边是由原点和坐标系
   中一点形成的直线构成。返回的角以弧度为单位,范围是 -pi 到 pi 。
float atan2(float y, float x)
x 是点的 x 坐标。
y 是点的 y 坐标。
   例如:
atan2(1,1)
   返回的是 0.785 弧度。
   今天就写到这,已经很晚了,欢迎与我共同讨论
to be continue

  今天加上 math functions 的最后一部分,来结素这个话题。其他的函数由于他们比较好理解,就不做说明了。毕竟一个人的能力是有限的。有点对不住大家了。
atan2d
   返回的是一个在 x,y 坐标系中指定的反正切角度值。返回的角以度为单位,范围是 -180 到 180 度。
float atan2d(float y, float x)
x 是点的 x 坐标。
y 是点的 y 坐标。
   例如:
atan2d(1,1)
   返回 45 度。
hypot
   返回的是从原点到在 x, y 坐标系点的二维向量值 .

angle
   返回向量间的弧度角 .
float angle(vector vector1, vector vector2)
vector1 是一个向量。
vector2 是另一个向量。
   返回角是两个向量所夹角中的最小角,它通常小于 180 度。
   例如:
angle(%26lt2,-1,1,%26lt1,1,2
   返回 1.0472 弧度,它等于 60 度。
cross
   返回由两个向量定义的叉乘值。
   对于两个向量,叉乘值是由两个向量定义而成的面的法线,
vector cross(vector vector1, vector vector2)
   若叉乘值是 0 ,那么可能是两个向量平行或在同一条直线上。若一个或两个向量是 %26lt0,0,0 ,那么叉乘
   值返回 %26lt0,0,0 。
vector1 是一个向量。
vector2 是另一个向量。
   例如:
cross(%26lt1,2,-2,%26lt3,0,1
   返回值是 %26lt2, -7, -6 。
dot
   返回两个向量的浮点点积。点积把两个向量作为自变量并返回一个标量值。
float dot(vector vector1, vector vector2)
   如果点积返回 0 ,那么两个向量是垂直的。
vector1 是一个向量。
vector2 是另一个向量。
   例如:
dot(%26lt1,2,-2,%26lt3,0,1
   返回 1 ,这个例如的点积是 (1 * 3) + (2*0) + (-2*1), 它等于 1 。
mag
   返回向量的值,它是向量的长度, float mag(vector vector)
vector 是所要得到数值的向量。
mag 函数使用下列公式把向量转换为一个浮点数。
   例如:
mag(%26lt7,8,9
   返回值 13.928 。

rot
   返回一个向量,它代表以指定轴旋转一定弧度后点的位置。
vector rot(vector point, vector axis, float angle)
point 是在世界坐标系中点的位置。
axis 是点围绕之旋转的轴。这个轴是一条经过原点的有指定方向的线。
angle 是点所旋转的弧度。
   例如:
rot(%26lt3,3,0,%26lt1,0,0,0.5)
   返回值为 %26lt3, 2.633, 1.438 。这是一个向量,它是沿 %26lt1,0,0 的轴旋转 0.5 弧度后点的位置在 %26lt3,3,0
   的向量。
   例如:
particleshape1.position = rot(position,%26lt0,1,0,0.1);
   假定在场景中有一个单粒子物体,它的位置是 %26lt4,6,0 ,并为它的粒子形节点写了上面的 runtime 表达
   式。播放动画时,粒子将沿 y 轴旋转成一个圆形图案。
   在每帧中,粒子旋转 0.1 弧度,约为 5.7 度,

unit
   返回一个和向量相应的 unit 向量。
unit 向量具有和指定向量相同的方向,但是它的数量是 1 。
vector unit(vector vector)
vector 是和 unit 向量相应的向量,
   例如:
unit(%26lt1,1,1
   返回 %26lt0.577, 0.577, 0.577 。(完)

FEVTE编注:更多MAYA角色教程讨论交流和MAYA作业提交请进入飞特论坛三维作业板块,地址:https://www.fevte.com/forum-54-1.html

12
7

好评
7

差评

刚表态过的朋友 (14 人)

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

  • 飞特游客

最新评论

您需要登录后才可以评论和提交作业 登录 | 立即注册
本周热点文章
2020 新飞特 从心开始
关于飞特| 广告服务| 付款方式| 版权申明| 网站地图| 联系我们| 加入我们| 举报| 帮助中心| 移动版| 手机版| 飞特网

委托设计