下载此文档

Maya螺旋曲线MEL.doc


文档分类:IT计算机 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
MayaMEL教程之mel打造螺旋曲线了解Maya的人都知道Maya本身不可以创建螺旋曲线,这给我们在建模电话线、弹簧等具有螺旋结构的模型时带来了很多不便。那么怎样解决这个问题呢?就目前来看,主流的解决方法是采用外部插件,但由于需要到国外网站上下载,普通中国用户很难发掘到;而通过手动创建螺旋曲线的方法不仅方法笨拙,效率低下,而且在很多时候也很难满足我们的工作要求。今天小编就通过一个简单MEL程序来达到我们的要求,也希望借此抛砖引玉。熟悉Maya的人都知道,Maya的任何一条命令都是一个MEL口令,例如我们在Maya中创建一条样条曲线,在Maya的脚本编辑器中就会显示这样的一条MEL口令:“curve-d3-p0-p0-p0-p0-p0-k0-k0-k0-k1-k2-k2-k2;”而我们创建螺旋曲线的思路也正基于此。首先看代码:mand="curve-d3";for($i=1;$i<=100;$i++){float$x=5*sin($i);float$z=5*cos($i);float$y=$i;$command+="-p"+$x+""+$y+""+$z;};mand; 解释: 第一行——Maya的mel语言规定,变量前必须添加符号$。curve是mel命令,即创建曲线;-d定义曲线精度为3;该行的含义就是定义字符串变量“$command”。第二行——执行for循环语句。定义整数$i,自增100次,其实就是表示有100个CV点。第四行——定义实数$x,并将5*sin($i)赋值给$x。而第五行、第六行的语法与第四行相同。在本例中,第四行、第五行、第六行是程序关键,其实这三行就是螺旋线的数学方程式。第七行——将字符串合并,也就是获得一个创建曲线的完整表达方式,类似于:curve-d3-p0-p0-p0... 第九行——eval命令是求函数返回值,也就是将我们的程序计算结果输出。这一步很重要,如果没有这一步,用户可能看不到你所创建的曲线。总结: 该mel程序的扩张性很强,用户可通过修改螺旋线的参数,进而获得其他形式的曲线。例如,当将螺旋线的半径5修改为$i,则可以获得圆锥螺旋线。为方便大家以后的建模,现附上经过修改后的第三方插件,源代码:globalprocinthelix_startSequence(){float$h,$t,$r1,$r2,$a,$k,$t0;int$prec,$encs,$encr,$encp,$helpVar;string$nm,$NM;$nm=`textField-q-textname`;$NM=$nm+helix_checkName($nm);$h=`floatSliderGrp-q-valueheight`;$t=`floatSliderGrp-q-valueturns`;$r1=`floatSliderGrp-q-valuer1`;$r2=`floatSliderGrp-q-valuer2`;$prec=`intSliderGrp-q-valueprec`;$helpVar=`radioButtonGrp-q-slradioButtons`;if(`textField-q-enA`){$a=`textField-q-textA`;$k=`textField-q-textK`;$t0=`textField-q-textT`;}

Maya螺旋曲线MEL 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人读书之乐
  • 文件大小87 KB
  • 时间2020-02-12
最近更新