• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
Maya
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
Maya Mel基础教程(8)
软件发布 Maya Mel基础教程(8)
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 文章首页 >> 多媒体类 >> Maya >> Maya Mel基础教程(8)

Maya Mel基础教程(8)

添加时间: 2007-7-8 5:43:25  作者: 第九软件网  阅读次数:35   来源: http://www.d9soft.com

             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属性的全名。

路径

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

pathnameobjectname

其中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 GroupAdoughnutHole.scaleY 3.3;
setAttr doughnutHole.scaleY 0.3;

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

group -name GroupB GroupA;

setAttr GroupBGroupAdoughnutHole.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 Mel基础教程(4) 下一篇文章: MAYA节点连接问题(1)

相关文章:

  • PS教程:神奇 用Photoshop让美女走出画框
  • PS教程:看看如何用Photoshop把照片演变成水墨画
  • Photoshop教程:教你如何创出发丝的炫彩莹亮效果
  • 彻底DIY Vista主题制作教程(上)
  • 详解VLAN+路由器典型配置实例教程

相关软件:

  • DigiMode Maya V2.2.0
  • Amaya V8.8.1 For Win9x/Me
  • Amaya V9.2.2 Snapshot for Windows NT/2000/XP
  • Amaya V9.2.2.1-1 for Linux
  • 轻松自考助学系列-法律基础与思想道德修养 1.30
  • Maya V4.0 Personal Learning Edition

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

多媒体类分类导航

  • 3ds Max
  • Authorware
  • Director
  • Maya
  • 多媒体其他

本类经典文章推荐

  • Maya 头发设定建模(2)
  • 用MAYA表达式制作钟表的动画
  • Maya 头发设定建模(3)
  • Maya 分析衰减深度帖图阴影(2)
  • Maya 头发设定建模(1)
  • Maya 分析衰减深度帖图阴影(1)
  • Maya 交叉伸缩器教程
  • Maya 硬件渲染粒子与软件渲染元素...
  • Maya制作《湖南新闻联播》片头(2...
  • Maya 设置腿部骨骼控制系统

Maya阅读排行

  • maya 一个做石头的插件Rock Gen
  • MAYA人体皮肤质感插件
  • Maya 头发设定建模(2)
  • Maya 眼睛的制作(2)
  • maya教你给mm穿衣服(1)
  • 不同版本之间的Maya文件的转换
  • Maya 设置腿部骨骼控制系统
  • MAYA面部动画插件
  • Maya PaintEffects 制作头发(3)
  • Maya 头发设定建模(1)

多媒体类阅读总排行

  • 3DS MAX教程:相机分类及设定
  • 3Dmax中角色动画初步之角色建模
  • 3DS MAX教程:贴图制作
  • 3DSMAX实例:制作特殊灯光特效
  • 3DS MAX教程三:提高兴趣篇
  • 3DS MAX系统配置及安装
  • 3DS MAX教程:对象布尔运算
  • 3DSMAX应用技巧之一口气一个足球
  • 认识3DS MAX界面
  • 3DS MAX教程:高级材质生成

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有