【Maya开发基础随手记】获取曲线控制顶点的位置并记录为list

如何修改控制顶点

除了手动拖动控制点,我们还可以在属性编辑器里修改
在这里插入图片描述
曲线shape节点有数组型属性"cv[*]"
在这里插入图片描述
在这里插入图片描述

问题引出

如果控制顶点不在删格上的话,数字会很复杂

for cv in cmds.ls("curve1.cv[*]", flatten=True):
    p = cmds.xform(cv,query=True,worldSpace=True,translation=True)
    print p;

在这里插入图片描述
同时,我们还想要以list结构储存,方便再次利用

修改遍历方式

p = []
for cv in cmds.ls("curve1.cv[*]", flatten=True):
    c = cmds.xform(cv,query=True,worldSpace=True,translation=True)
    p.append([round(c[i],3) for i in range(len(c))])

print p

在这里插入图片描述

利用list型数据构建新的曲线

创建曲线的同时,得把shape节点的名称也更改了

def curve_ctrl(point_list, name, degree=1):
    crv = cmds.curve(degree=degree, editPoint=point_list, name=name)
    shp = cmds.listRelatives(crv, shapes=True)[0]
    print(shp)
    # rename shape node
    cmds.rename(shp, crv + 'Shape')
    return crv
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值