美文网首页
Maya坐标归到模型中心底部代码1

Maya坐标归到模型中心底部代码1

作者: Boyce_Lig | 来源:发表于2021-03-03 17:29 被阅读0次

原理:

抓取轴向数据(从右侧属性数据里抓取,并不是坐标所在位置的数据),然后找到模型最低点,把移动放过去。



比如原始坐标数据就在物体中心,他就会在物体中心底部。




比如原始坐标数据为不在模型身上,他就会抓取x和z轴数据,y的数据在模型底部

所以在执行之前最好坐标归位到物体中心,烘焙坐标数据,再执行代码。
如果多选模型,则x、z按照数字数据,y轴所有模型的最低点。

代码:

 string $sel[]= `ls -sl`;

    //$sel[0] != "" to check if the first item is empty, but `size $sel` == 1 already cover that
    if(`size $sel` > 0)
    {
        int $vtxIdx;
        int $vCount[];
        float $lowestY = 2147483647.0;
        float  $crtY = 0.0;
        float $pos[];

        string $item;
        for ($item in $sel)
        {
            $vCount = `polyEvaluate -vertex $item`; //Get vertex count
            for ($vtxIdx = 0; $vtxIdx < $vCount[0]; $vtxIdx++)//Loop through vetex
            {
                $pos = `xform -q -ws -t ($item+".vtx["+$vtxIdx+"]")`;//Get vertex position
                $crtY = $pos[1];
                if($crtY < $lowestY)
                {
                    $lowestY = $crtY;//Get the lowest Y
                }
            }
            $pos = `xform -q -ws -t ($item)`;
            xform -ws -a -piv $pos[0] $lowestY $pos[2] ($item);
            print ($lowestY);
        }

    }

使用方法:

  1. 将代码复制,粘贴到MEL代码窗口



  2. 选中要修改的模型,把坐标归位到物体中心,烘焙坐标数据,直接按蓝色播放键或者小键盘的enter执行代码

  3. 全选代码按住中间拖到工具栏里生成按钮


引用地址1
引用地址2

相关文章

网友评论

      本文标题:Maya坐标归到模型中心底部代码1

      本文链接:https://www.haomeiwen.com/subject/ufxcqltx.html