| 首页 | IT动态 | 硬件 | 应用 | 互联网 | 网络 | 网站 | 黑客 | 编程 | 数码 | 视频教程 | 游戏 | 休闲 | 软件 | 视频 | IT认证 | 动漫图片 | IT杂谈 | 论坛 | 
Google
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
  • Maya4.0界面介绍(1)

  • 自定义Maya4.0界面

  • Maya4.0的新增功能

  • Maya简介

  • Maya4.0常用功能-标记菜单

  • Maya4.0常用功能-热键箱

  • Maya4.0界面介绍(2)

  • Maya4.0常用功能-工具架(2)

  • Maya4.0常用功能-快捷键

  • Maya4.0常用功能-层的运用

  • 广 告 位 置
    广告位置
    Q
    您现在的位置: 无忧IT人 >> 应用 >> 多媒体 >> Maya >> 教程正文
    MayaMel基础教程(7)           
    MayaMel基础教程(7)
    作者:51iter 文章来源:www.51iter.com 点击数: 更新时间:2007-10-13
    [ 字体:缩小 正常 放大 | 双击自动滚屏 ]
    请选择合适的字体颜色:
    MayaMel基础教程
    定义数据本章描述MEL的数据类型它们之间的转换:
    1、变量;
    2、常数;
    3、数据类型转换;
    4、限制。

    1、变量

    所有变量名以$开始。变量名不包括空格和特殊字符。你可以使用下划线和数字作为变量名但开头不能是数字。
    识别大小写,如$temp不同于$Temp。

    例:

    int$radical7Mark;//有效
    intHEYchief;//ERROR:开头缺"$"
    int$nine;//ERROR:开头不是"$"
    int$_VAL_ID___AIT_;//有效
    int$howdyYa`ll;//ERROR:含有无效字符
    int$1Bill;//ERROR:开头不能是数字

    有以下五种变量类型:

    类型意义例子
    int整数(...-2,-1,0,1,2...)10,-5,和0
    float小数392.6,7.0,and-2.667
    string一个或更多的字符"What'sup,chief?"
    vector三个浮点数<<3,?7.7,?9.1>>
    matrix浮点数阵列<<1.1,2,3;6.7,5,4.9>>

    以上类型除matrix外,都可以是一个阵列。如,一个三元素的整数阵列是一个跟一个的三个整数。

    声明和标注变量

    声明一个变量是说明变量的名字和类型;标注一个变量是给已生命的变量一个专有的值。下例是将声明和标注合为一步:

    int$temp=3;
    float$Temp=222.222;
    string$tEmp="Heyakid.";
    vector$teMp=<<1,2.7,3.2>>;
    matrix$temP[2][3]=<<4.5,1,0.2;-13,9911,0.007>>;

    当生命矩阵变量时,必须包括二维阵列的尺寸。

    下例说明对整型、浮点、字符串和矢量阵列型变量阵列的声明和标注:

    int$TEmp[5]={100,1000,-70,2,9822};
    float$TeMp[4]={43.3,-10.7,0,82.5};
    string$TemP[3]={"Lord","Flies","coolbrownfox2."};<p>

    vector$tEMp[2]={<<0,0,0>>,<<0.01,-2,16>>};

    如果一个变量被声明但未被标注,它的所有的值是0;字串变量则?quot;"。

    float$teMP;//赋值:0;
    string$TEMp[3];//赋值:{"","",""};
    vector$TEmP[2];//赋值:{<<0,0,0>>,<<0,0,0>>};
    matrix$TeMP[3][2];//赋值:<<0,0;0,0;0,0>>;

    如果一个变量被声明或者被使用而没有定义它的类型,它被隐含声明为将要赋值给它的那种类型。

    $tEMP=0.0;//浮点数
    string$TEMP[];//零元素字符串阵列
    $trip="heyaBuddy";//字符串
    $rip={1,2,3,4};//四元素整型阵列
    $lip=<<1,2.1;3,4>>;//2X2矩阵
    $flixp=$TEMP;//零元素字符串阵列

    注意值0.0是一个浮点数,而一个0值是一个整型数。这决定了在隐含声明时是产生一个浮点数还是产生一个整型数。
    不建议使用隐含声明,因为它不象变量的隐含声明那样的清楚。

    保留字

    MEL的保留字可以是一个变量类型、控制逻辑或是表达一个值。以下是MEL的保留字:

    breakcasecontinuedefaultdoelse
    falsefloatforglobalifin
    intmatrixnooffonproc
    returnstringswitchtruevectorwhile
    yes

    数据类型关键字

    intfloatvectorstringmatrix

    布尔常数关键字

    yesnoonofftruefalse

    流动控制关键字

    ifelseforwhiledoinbreakcontinuedefaultswitchcase

    其他关键字

    globalreturnsourcecatchaliasproc

    保留字也区分大小写。所以int是整型,Int不是。实际上alias、source、catch也是保留字,但它们起指令作用,
    因此没有被包括在上述表内。

    字符串

    字符串可用" "运算连接。

    string$what="Whale";
    string$title="Great" "White" $what;

    这将使title变量的内容为GreatWhiteWhale。

    矢量

    为寻址一个vector的各个成分,使用"."。

    vector$LOS=<<1,2,7>>;
    float$firstComponent=$LOS.x;//赋值为1
    float$secondComponent=$LOS.y;//赋值为2
    float$thirdComponent=$LOS.z;//赋值为7

    标注矢量的成分:

    vector$LOCK=<<7,-4,9>>;
    $LOCK=<<$LOCK.x,$LOCK.y,3>>;//Assigned<<7,-4,3>>

    但不能直接给一个成分标数字:

    $LOCK.z=3000;//错误

    但是通常当访问一个矢量成分时,你应该象下面例子那样围绕它使用括号:

    例子:
    print$LOCK.x;//错误
    print($LOCK.x);
    setAttrpersp.scaleX$LOS.x;//错误
    setAttrpersp.scaleX($LOS.x);

    [1]

    教程录入:51iter    责任编辑:51iter 
  • 上一篇教程:

  • 下一篇教程:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 关于我们 | 友情链接 | 版权申明 |