首页 > 解决方案 > 对于 Maya,我如何在另一个函数中调用一个函数

问题描述

试图使这项工作

import maya.cmds as mc


def firstFace():
    FaceToSel = 'first' def allFace():
    FaceToSel = 'all'


def execute():
        if FaceToSel == 'first':
            print Yes
        elif FaceToSel == 'all':
            print No


def ui():
    if mc.window('face_Select', exists = True):
        mc.deleteUI('face_Select')
    FaceWin = mc.window('face_Select', mxb = False)
    mc.columnLayout( adjustableColumn = True )

    mc.intFieldGrp( 'numberOfFaces', label = 'Number Of Facess', value1 = 10 )

    ButtonOne = mc.radioButtonGrp( label='Type', labelArray3=['TopFaces', 'Allfaces'], numberOfRadioButtons = 2, onCommand1 = 'firstFace()', onCommand2 = 'lastFace()')
    mc.button( label = 'Select faces', command = 'execute()',  align = 'center', aop = True)

    mc.showWindow('face_Select')
     ui()

标签: pythonpython-2.7maya

解决方案


先问一个问题。然后提供一个带有缩进的代码,用逗号输入 Yes 和 No,检查你的函数是否有一个 def 存在,命令标志是否有正确的数据,这样会让你更容易回答.....

所以这是一个工作代码,如果你想要更多解释,请查看我已经回答的关于 ui 的问题

如何在计算中使用滑块值?

import maya.cmds as mc
from functools import partial


def execute(FaceToSel, *args):
    option = mc.radioButtonGrp(FaceToSel, q=True, select=True)
    if option == 1:
        print True
    elif option == 2:
        print False

def ui():
    if mc.window('face_Select', exists = True):
        mc.deleteUI('face_Select')
    FaceWin = mc.window('face_Select', mxb = False)
    mc.columnLayout( adjustableColumn = True )

    mc.intFieldGrp( 'numberOfFaces', label = 'Number Of Facess', value1 = 10 )

    ButtonOne = mc.radioButtonGrp( label='Type', labelArray2=['TopFaces', 'Allfaces'], numberOfRadioButtons = 2, select=1)
    mc.button( label = 'Select faces', command = partial(execute, ButtonOne),  align = 'center', aop = True)

    mc.showWindow('face_Select')
ui()

推荐阅读