mayapython递增按钮,递增值

Mayapython Incremental button that increment value

我是Python的新手。我尝试在maya中制作一个按钮来增加折痕边的值。每次单击它,我都要使折痕值为+1。

我试过这个:

1
2
3
4
5
def crease(ignore):
    value=+1
    newvalue = value
    for i in value(int(newvalue)+1):
        maya.cmds.polyCrease(i)

但它不起作用。如果有人能帮忙我非常感谢你能提供的帮助


嵌套值是一个问题,当您的值在def下时,它不会存储在全局范围内。

1
2
3
4
5
6
7
8
counter = 0

def crease(ignore):
    value = counter+1
    maya.cmds.polyCrease(v=i)
    return value

counter = crease(0)

如果要跟踪计数器,可以创建一个全局:无法从python中的函数递增全局变量

词典:python修改方法内的字典

甚至是一个班级。


碰巧的是,cmds.polyCrease包含一个标志,它可以满足您的需要:

1
cmds.polyCrease(rv=1)

将当前选定组件上的折痕值增加1;负值将使其减少。全局计数器从编程的角度工作,但如果您在场景中的不同对象之间跳跃,它可能会有令人惊讶的结果。