通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 my小屋
联系我们
设为首页
加入收藏

 

qq,asp,php,jsp,xml,sql,.net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>网络媒体>>maya>>正文 新版上线![旧版]
注:打开慢时请稍等

maya mel基础教程(8)

http://www.iyit.net  日期:2006-5-27 11:23:01  来源:网络转载   点击:
参加讨论】maya mel基础教程
阵列

你可以声明一个int, float, string或vector类型的阵列。阵列的第一个序号为0

string $array[3] = {"first\n", "second\n", "third\n"};
print($array[0]); // 显示 "first\n"
print($array[1]); // 显示 "second\n"
print($array[2]); // 显示 "third\n"

阵列尺寸可以自动地增加。

int $scores[]; // 声明为一个0元素阵列
$scores[150] = 3; // 现在是151元素阵列
$scores[200] = 5; // 现在是201元素阵列 但最好不要声明过大的没用的阵列,因为它要占内存:

int $bigboy[];
$bigboy[123456789] = 2; // 危险

要除去一个阵列的所有元素可使用clear**能。要查看阵列的尺寸可使用size。

string $hats[3] = {"blue", "red", "black"};
print("there were " + size($hats) + " hats.\n");
clear($hats);
print("but now there are " + size($hats) + ".\n");

以上指令的输出是:

there were 3 hats.
but now there are 0.

矩阵

可以把一个矩阵想象为一个浮点阵列的阵列,或是一个浮点数据的二维阵列。矩阵产生后,它的尺寸不能改变。
企图寻址一个矩阵的不存在的元素将会出现错误。在产生矩阵时必须定义它的尺寸。

matrix $a1[][] = <<1; 4>>; // 错误: 没有说明尺寸
matrix $a2[][]; // 错误: 没有说明尺寸
matrix $a3[2][1]; // 有效: 产生 <<0; 0>>;
$a3[0][1] = 7; // 错误: 元素不存在
$a3[1][0] = 9; // 有效

声明而未标注值的矩阵,其所有元素都为0。

matrix $a4[2][4] = <<-3.4, 6, 201, 0.7; 4, 2, 9.3, 1001>>;

如果矩阵表示一个二维阵列,则第一个索引表示列;地二个索引表示行:

matrix $a4[2][4]column 0column 1column 2column 3
row 0-3.462010.7row 1429.31001

如果你把矩阵设想为一个身列的阵列,则第一个索引表示阵列,第二个索引该阵列里的索引:

matrix $a4[2][4]index 0index 1index 2index 3
float array 0-3.462010.7float array 1429.31001

物体属性

属性是场景中的物体的特征或参数。在maya中可以用许多方法建立属性-属性编辑器、mel程序、工具工具或表达式。
你可以设立属性去控制在工作空间中看到的虚拟的事情。
如,一个nurbs球具有属性scalex, scaley, scalez, rotatex, 等等。

物体属性名

物体属性名具有如下格式:

objectname.attributename

其中objectname是物体的名字,attributename是该物体的属性名。属性名中不要使用空格或特殊字符,可以用下划线。

产生一个名字为brawl的球:

sphere -name brawl;

可以获取它的属性的一个值:

float $yscale = `getattr brawl.scaley`;

brawl.scaley是brawl物体的scaley属性的全名。

路径

如果两个物体具有不同的父物体,它们可以有相同的名字。当说明有相同名字的物体时必须使用路径:

pathname|objectname

其中pathname物体的父物体。管道字符(|)用于区分路径。

sphere -name doughnuthole;
group -name groupa;
sphere -p 3 0 0 -name doughnuthole;

现在我们有两个叫做doughnuthole的物体,但一个有父物体groupa,另一个没有父物体。以?*噶畈桓龃砦螅?br /> 因为maya不知道哪个doughnuthole物体要设立scaley属性:

setattr doughnuthole.scaley 3.3; // error: 哪个?

你必须输入属性的路径:

setattr groupa|doughnuthole.scaley 3.3;
setattr |doughnuthole.scaley 0.3;

你可以说明物体的所有路径,用管道符进行区分:

group -name groupb groupa;

setattr |groupb|groupa|doughnuthole.scaley 1;

物体属性的可能的数据类型

每个属性有特定的数据类型。几何体, 粒子物体, maya中的其他项都具有这些数据类型的属性:

数据类型 意义 属性例 数据例

浮点小数 numbers ball.translatex 2.6, 7.0, -9.1int
整数 (...-1, 0, 1, 2...) ballshape.spansu -289, 33, 0
boolean 0或1 ball.visibilityon, off, yes, no, 1, 0, true, false

考虑一个由以?*噶畈慕凶鰂ire的粒子物体:

particle -name fire -position 7 0 7;

它可以具有以下另外的数据类型:

数据类型 意义 属性例 数据例

vector array 矢量阵列 fireshape.position
{<<3.2,?7.7,?9.1>>, <<7,?10,?2.2>>}
double array 浮点阵列 numbersfireshape.lifespan 1.333 1.666

你可以使用getparticleattr和setparticleattr指令设立矢量的元素或一个粒子系统的双阵列。

float $tmp[] =
`getparticleattr -at position fireshape.pt[0]`;
vector $particleposition = <<$tmp[0], $tmp[1], $tmp[2]>>;
(完)

编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:maya nurbs 汽车坐椅建模(5)
下一篇:maya 制作摆动的链子
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
最新更新 热点排行 推荐新闻
maya 4.0 界面介绍(1)
maya 4.0 界面介绍(2)
自定义maya 4.0界面
maya 4.0的新增功能
maya 4.0 常用功能-热键箱
maya 4.0 界面介绍(1)
maya 4.0 界面介绍(2)
自定义maya 4.0界面
maya 4.0的新增功能
maya 4.0 常用功能-热键箱
maya 4.0 常用功能-工具架(1)
maya 4.0 常用功能-工具架(2)
maya 4.0 常用功能-快捷键
maya 4.0 常用功能-层的运用
maya 4.0 常用功能-outliner窗口
maya 4.0 动画的基础知识-时间标尺和范
maya 4.0 界面介绍(2)
maya 4.0 界面介绍(1)
自定义maya 4.0界面
maya 4.0的新增功能
优秀公益广告作品欣赏(8)
java数据类型转换
windows xp专业版iis连接数的更改
新开放qq免费挂级网站
优秀公益广告作品欣赏(7)
免费在qq上看在线电影电视听音乐
office2007简体中文版浮出水面 美图抢
qq珊瑚虫外挂4.0版本发布!
qq最新版下载 2006 beta2 体验新感受 
web服务器配置全攻略(三)
dreamweaver mx 2004从零开始(1)
利用css改善网站可访问性
如何让mm的脸通透可人
msn8.0下载
asp 五大高效提速技巧
如何在win20003中更好的玩游戏
qq收费头像免费使用的方法 
微软将在华推分期付款,充值卡pc 可低价
 amd处理器am2测试 风扇竟运行7分钟
exeplorer.exe错误的问题的总结、解决
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
copyrights © 2004-2006 iyit.net all rights reserved.
网站合作、广告联系qq:147007642、466949678
易特网络技术 点击这里给我发消息