内容摘要:Maya mel语初解
也可以给数组的成员赋值,例如:
$objects[1] = "pBox1";
// 此时数组$objects的值为{"pSphere1", "pBox1", "pCone1"}

要想遍历数组中的每个成员,可以用for语句,有两种方法。
// 方法一
string $objects[] = `ls -sl`;
for ($i = 0; $i < size($objects); $i++)
{
string $obj = $objects[$i];
// do something ...
}
// 方法二
string $objects[] = `ls -sl`;
for ($obj in $objects)
{
// do something ...
}[注] mel的for...in语句和JavaScript有所不同,$obj是字符串,指的是
当前的数组成员,等同于"string $obj = $objects[$i];"
再复习一下函数(Function):
如果你编写比较复杂的程序,就会发现有很多经常用到的语句,这些语句经常以相同的组合出现。这样的语句编写起来有些麻烦,看起来也不太直观。为了提高工作效率,增加可读性,我们可以使用函数把它们封装起来。下面举例说明。
还记得前面讲过的filterExpand获取多边形面的方法吧?
string $faces[] = `filterExpand -ex 1 -sm 34`;
对初学者来说,看到"-sm 34"后,总是很难联想到多边形的面。当然你可以用maya的全局变量$gSelectMeshFaces来替代34,不过这样做有些麻烦。我们编一个新的函数来做与上面代码同样的事情。
proc string[] getSelFaces()
{
return `filterExpand -ex true -sm 34`;
}
// [注] Sel为Selected的缩写有了这个函数,我们以后再获取多边形的面时,就可以这样写:string $faces[] = `getSelFaces`;
责编:豆豆技术应用
正在加载评论...
- 不用置换来做地毯V-Ray教程
- 详解Maya皮肤材质
- MAYA材质教程:皮肤的制作方法
- 3dmax9.0打造诱人甜筒
- maya置换贴图的控制
- MAYA透明贴图制作教程
- 如何自动设置MAYA灯光亮度
- maya快速动画秘诀
- Maya Mel中脚本的运用
- Maya 4.0 渲染基础-建立摄影机
- BodyStudio for Maya v2.6.0.8 (骨骼角色模型插件)
- Blast Code v1.5 for Maya 7.0.-.8.0 and 8.5 (独特爆炸特效插件
- Real Flow(maya插件)
- nderMan for Maya v2.0 (Maya7.0~8.5插件)
- RenderMan for Maya v1.1 (Maya7.0~8.5插件)
- SyFlex 3.6 for Maya (最强衣服插件)
- REALFLOW(maya插件)
- Final Rig Pro v2.0 for Maya 7.0 (MAYA角色插件)
- Tomcat cartoon shader
- Kolektiv Stroika v3.05 for Maya 7 8 8.5 (Maya功能增强插件)