Пример #1
0
def main():
	mc.python('from kmAnimImpExp import *')

	if mc.window( 'AnimImpExpUI', exists=True ):
		mc.deleteUI('AnimImpExpUI')
		
	WinName = mc.window( 
		'AnimImpExpUI', 
		title='Anim Import/Export with select', 
		iconName='AnimImpExpUI', 
		width=100, 
		height=200,
		menuBar=True
	)
	mc.menu( label='Menu', tearOff=False )
	mc.menuItem( label='Reload',command='from kmAnimImpExp import *;main()')
	mc.menuItem( divider=True )
	mc.menuItem( label='Quit' )
	
	mc.columnLayout(adj=True)
	mc.button(label='Import Anim',command='kmAnimImp()')
	mc.button(label='Export Anim',command='kmAnimExp()')
	mc.setParent('..') #columnLayout
		
	mc.showWindow(WinName)
Пример #2
0
def twoPointCurve(node1, node2, degree=1):
    """Creates a degree 3 NURBS curve from two input objects """
    crvCmd = 'cmds.curve(degree=1, p=['
    startEndCtrls = [node1, node2]
    for ctrl in startEndCtrls:
        tfm = cmds.xform(ctrl, query=True, worldSpace=True, translation=True)
        crvCmd += ' ('
        for tfmItem in tfm:
            crvCmd += ' ' + str(tfmItem) + ','
        crvCmd += '),'

    crvCmd += '], k=[0,1])'
    crv = cmds.python(crvCmd)
    if degree > 1:
        cmds.rebuildCurve(crv,
                          ch=0,
                          rpo=1,
                          rt=0,
                          end=1,
                          kr=0,
                          kcp=0,
                          kep=1,
                          kt=0,
                          s=4,
                          d=degree,
                          tol=0.01)
    crv = cmds.rename(crv, "{}_crv".format(node1))
    crvShp = cmds.listRelatives(crv, shapes=True)[0]
    return crv, crvShp
Пример #3
0
    def set_session(self):

        # Grab data
        name, plugin, scene, script = self._get_current_script_data()

        # New scene, force unload
        cmds.file(new=1, f=1)
        cmds.unloadPlugin(os.path.basename(plugin), f=1)

        # Try to clean listener
        try:
            mel.eval('cmdScrollFieldReporter -e -clear $gCommandReporter;')
        except RuntimeError:
            pass

        # Load plugin and scene, set layout
        cmds.loadPlugin(plugin)
        if os.path.isfile(scene):
            cmds.file(scene, open=True, f=True)
        mel.eval('setNamedPanelLayout "Script Editor/Persp"')

        # Run script
        if script:
            cmds.python(script)
Пример #4
0
def main():
	mc.python('from kmExpImpExp import *')
	
	global g_tSL_expNode
	global g_sF_expString
	
	if mc.window( 'ExpImpExpUI', exists=True ):
		mc.deleteUI('ExpImpExpUI')
	WinName = mc.window( 
		'ExpImpExpUI',
		title='Expression Import / Export', 
		iconName='ExpImpExpUI', 
		width=500 , 
		height=300,
		menuBar=True
	)
	mc.menu('ExpImpExpMenu',label='Menu', tearOff=False)
	mc.menuItem(label='Reload', sourceType='python',command='main()' )
	mc.menuItem(label='Quit',sourceType='python',command='mc.deleteUI(\'ExpImpExpUI\')')
	
	form = mc.formLayout(numberOfDivisions=100)
	
	g_tSL_expNode = mc.textScrollList(	allowMultiSelection=True )
	g_sF_expString = mc.scrollField( wordWrap=True, text='',editable=True )
	
	mc.textScrollList( g_tSL_expNode, edit=True, selectCommand=('update_sF_expString()') )
	
	btnImport = mc.button(label='Import',command='importExp()')
	btnExport = mc.button(label='Export',command='exportExp()')
	
	mc.formLayout( 
		form, 
		edit=True, 
		attachForm=[
			(g_tSL_expNode, 'top', 5), 
			(g_tSL_expNode, 'left', 5), 
			(g_tSL_expNode, 'right', 5), 
						
			(g_sF_expString, 'top', 5),
			(g_sF_expString, 'left', 5),
			(g_sF_expString, 'right', 5),
			# (g_sF_expString, 'bottom', 5),
			
			(btnImport, 'left', 5), 
			# (btnImport, 'right', 5), 
			(btnImport, 'bottom', 5), 
			
			# (btnExport, 'left', 5), 
			(btnExport, 'right', 5),
			(btnExport, 'bottom', 5), 

		], 
		attachControl=[
			(g_tSL_expNode, "bottom", 5, btnImport),
			(g_sF_expString, "bottom", 5, btnExport), 
			# (btnImport, "right", 5, btnExport), 
			# (txWarn, 'bottom', 5, None)
		], 
		attachPosition=[
				(g_tSL_expNode,'top', 0,0),
				(g_tSL_expNode, 'right', 5, 30), 
				
				(g_sF_expString, 'top', 0, 0),
				(g_sF_expString, 'left', 0, 30),
				
				# (btnImport,'top', 0,0),
				(btnImport, 'right', 5, 50), 
				
				# (btnExport, 'top', 0, 0),
				(btnExport, 'left', 0, 50),
			
				# (btnImport, 'bottom', 0, 0), 
				# (btnExport, 'bottom', 0, 0),
				
		], 
		# attachNone=[
			# (gL_option, 'top') ,
			# (txWarn, 'top')
		# ]
	)
	
	update_tSL_expNode( g_tSL_expNode )
	
	mc.showWindow( WinName )
Пример #5
0
def main():
    mc.python('from kmExpImpExp import *')

    global g_tSL_expNode
    global g_sF_expString

    if mc.window('ExpImpExpUI', exists=True):
        mc.deleteUI('ExpImpExpUI')
    WinName = mc.window('ExpImpExpUI',
                        title='Expression Import / Export',
                        iconName='ExpImpExpUI',
                        width=500,
                        height=300,
                        menuBar=True)
    mc.menu('ExpImpExpMenu', label='Menu', tearOff=False)
    mc.menuItem(label='Reload', sourceType='python', command='main()')
    mc.menuItem(label='Quit',
                sourceType='python',
                command='mc.deleteUI(\'ExpImpExpUI\')')

    form = mc.formLayout(numberOfDivisions=100)

    g_tSL_expNode = mc.textScrollList(allowMultiSelection=True)
    g_sF_expString = mc.scrollField(wordWrap=True, text='', editable=True)

    mc.textScrollList(g_tSL_expNode,
                      edit=True,
                      selectCommand=('update_sF_expString()'))

    btnImport = mc.button(label='Import', command='importExp()')
    btnExport = mc.button(label='Export', command='exportExp()')

    mc.formLayout(
        form,
        edit=True,
        attachForm=[
            (g_tSL_expNode, 'top', 5),
            (g_tSL_expNode, 'left', 5),
            (g_tSL_expNode, 'right', 5),
            (g_sF_expString, 'top', 5),
            (g_sF_expString, 'left', 5),
            (g_sF_expString, 'right', 5),
            # (g_sF_expString, 'bottom', 5),
            (btnImport, 'left', 5),
            # (btnImport, 'right', 5),
            (btnImport, 'bottom', 5),

            # (btnExport, 'left', 5),
            (btnExport, 'right', 5),
            (btnExport, 'bottom', 5),
        ],
        attachControl=[
            (g_tSL_expNode, "bottom", 5, btnImport),
            (g_sF_expString, "bottom", 5, btnExport),
            # (btnImport, "right", 5, btnExport),
            # (txWarn, 'bottom', 5, None)
        ],
        attachPosition=[
            (g_tSL_expNode, 'top', 0, 0),
            (g_tSL_expNode, 'right', 5, 30),
            (g_sF_expString, 'top', 0, 0),
            (g_sF_expString, 'left', 0, 30),

            # (btnImport,'top', 0,0),
            (btnImport, 'right', 5, 50),

            # (btnExport, 'top', 0, 0),
            (btnExport, 'left', 0, 50),

            # (btnImport, 'bottom', 0, 0),
            # (btnExport, 'bottom', 0, 0),
        ],
        # attachNone=[
        # (gL_option, 'top') ,
        # (txWarn, 'top')
        # ]
    )

    update_tSL_expNode(g_tSL_expNode)

    mc.showWindow(WinName)
Пример #6
0
def main():

    if mc.window("SelectVtxFromSideUI", exists=True):
        mc.deleteUI("SelectVtxFromSideUI")
    WinName = mc.window("SelectVtxFromSideUI", title="Select Vertex From Side", iconName="SelectVtxFromSideUI")

    mc.python("import kmSelectVtxFromSide as SVFS;reload(SVFS)")
    mc.python("import maya.cmds as mc")

    mc.columnLayout(adjustableColumn=True, parent=WinName)

    mc.checkBoxGrp(
        "cBG_plus",
        numberOfCheckBoxes=3,
        label="",
        labelArray3=["+X", "+Y", "+Z"],
        columnWidth=[(1, 60), (2, 60), (3, 60)],
        onCommand1="mc.checkBoxGrp('cBG_minus',edit=True, value1=False)",
        onCommand2="mc.checkBoxGrp('cBG_minus',edit=True, value2=False)",
        onCommand3="mc.checkBoxGrp('cBG_minus',edit=True, value3=False)",
    )
    mc.checkBoxGrp(
        "cBG_minus",
        numberOfCheckBoxes=3,
        label="",
        labelArray3=["-X", "-Y", "-Z"],
        columnWidth=[(1, 60), (2, 60), (3, 60)],
        onCommand1="mc.checkBoxGrp('cBG_plus',edit=True, value1=False)",
        onCommand2="mc.checkBoxGrp('cBG_plus',edit=True, value2=False)",
        onCommand3="mc.checkBoxGrp('cBG_plus',edit=True, value3=False)",
    )

    mc.rowColumnLayout(
        "rCL_Extra",
        visible=False,
        numberOfColumns=2,
        columnWidth=[(1, 20), (2, 300)],
        columnAttach=[(1, "right", 1), (2, "both", 1)],
        rowAttach=[(1, "top", 1), (2, "top", 1)],
        parent=WinName,
    )

    mc.checkBox(
        "cB_Extra",
        label="",
        onCommand="mc.floatFieldGrp('fFG_Extra',edit=True, enable=True);mc.checkBoxGrp('cBG_plus',edit=True,enable=False);mc.checkBoxGrp('cBG_minus',edit=True,enable=False)",
        offCommand="mc.floatFieldGrp('fFG_Extra',edit=True, enable=False);mc.checkBoxGrp('cBG_plus',edit=True,enable=True);mc.checkBoxGrp('cBG_minus',edit=True,enable=True)",
    )
    mc.floatFieldGrp(
        "fFG_Extra",
        enable=False,
        numberOfFields=3,
        label="Position",
        value1=0,
        value2=0,
        value3=0,
        columnWidth=[(1, 60), (2, 60), (3, 60)],
        columnAttach=[(1, "both", 1), (2, "both", 1), (3, "both", 1)],
    )
    mc.setParent("..")  # rowColumnLayout

    mc.button(label="Select", command=("SVFS.getSVFSsetting()"))

    mc.setParent("..")  # columnLayout

    mc.window(WinName, edit=True, width=300, height=60)

    mc.showWindow(WinName)

    return