def create_comment(self, *args):
     cmds.window('comment_win')
     cmds.columnLayout()
     cmds.text(l='Enter in new comment')
     self.new_comment_field = cmds.scrollField()
     add = cmds.button(l='Add', c=self.add_comment)
     cmds.showWindow('comment_win')
def animTools():
    #create simple button based GUI for now
    if (cmds.window('zbw_animToolsUI', exists=True)):
        cmds.deleteUI('zbw_animToolsUI', window=True)
        cmds.windowPref('zbw_animToolsUI', remove=True)
    window=cmds.window('zbw_animToolsUI', widthHeight=(350,200), title='zbw_animTools')
    cmds.columnLayout(cal='center')
    #cmds.intFieldGrp('zbw_offsetValue', cal=(1,'left'), label='frequency(frames)', value1=5)
    #CREATE FRAME RANGE AREA (WHICH FRAMES ARE WE DOING?)
    #WHEN THAT HAPPENS, WHAT DO WE DO WITH THE FRAMES AFTER THAT? (PROBABLY NOTHING. . . LET USER WORRY ABOUT IT)
    #checkbox for random freq
    #cmds.checkBoxGrp('zbw_animNoiseRandom', cal=(1,'left'), cw=(1, 175),label='random frequency on', value1=0, cc=zbw_animNoiseRandom)
    cmds.text('zbw_offsetAnim')
    cmds.button('zbw_offsetAnimButton', label='offsetAnim', width=75, command=zbw_offsetAnim)
    cmds.text('zbw_pullDownAnimButton')
    cmds.button('zbw_pullDownAnim', label='pullDownAnim', width=75, command=zbw_pullDownAnim)
    cmds.text('zbw_pullUpAnimButton')
    cmds.button('zbw_pullUpAnimButton', label='pullUpAnim', width=75, command=zbw_pullUpAnim)
    cmds.text('zbw_randomizeKeys')
    cmds.button('zbw_randomizeKeysButton', label='randomizeKeys', width=75, command=zbw_randomizeKeys)
    cmds.text('zbw_animNoise')
    cmds.button('zbw_animNoiseButton', label='animNoise', width=75, command=zbw_animNoise)
    cmds.text('zbw_playblast')
    cmds.button('zbw_playblastButton', label='playblast', width=75, command=zbw_playblast)
    cmds.text('zbw_stepAll')
    cmds.button('zbw_stepAllButton', label='stepAll', width=75, command=zbw_stepAll)
    cmds.text('zbw_cleanKeys')
    cmds.button('zbw_cleanKeysButton', label='cleanKeys', width=75, command=zbw_stepAll)
    cmds.text('zbw_changeFrameRate')
    cmds.button('zbw_changeFrameRate', label='frameRate', width=75, command=zbw_changeFrameRate)

    cmds.showWindow(window)
Esempio n. 3
0
def showUI():
    win = 'lsWireOffset_window'
    
    # if window exists, delete
    if mc.window(win, ex=True):
        mc.deleteUI(win, wnd=True)
        
    # delete window prefs... if you want...
    mc.windowPref(win, remove=True)
    
    # create window
    mc.window(win, t='lsWireOffset v0.1', wh=(200,335), mxb=False)
    
    # main column
    mainCol = mc.columnLayout(columnAttach=('both', 5), rowSpacing=10, columnWidth=200)
    
    # creation frame
    createFrm = mc.frameLayout(p=mainCol, cl=False, l='Create New Module')
    createCol = mc.columnLayout(columnAttach=('both', 5), rowSpacing=5, columnWidth=188)
    nameTxtFld = mc.textFieldGrp( label='Name: ', text='', cw2=(40,125), p=createCol)
    mc.text(l='Select edge loop OR \n vertices and...')
    creationBtn = mc.button(l='Create', c="lsWireOffset.ui.createNew('%s')"%nameTxtFld)
    
    # edit frame
    editFrm = mc.frameLayout(p=mainCol, cl=False, l='Edit Existing Modules')
    editCol = mc.columnLayout(columnAttach=('both', 5), rowSpacing=5, columnWidth=188)
    scrollList = mc.textScrollList(win+'_wTSL')
    
    refreshTSL(scrollList)
    
    # popop menu for right click
    mc.popupMenu(win+'_wTSL_MM', p=scrollList, mm=True, button=3, pmc=buildMM)
    
    mc.showWindow(win)
Esempio n. 4
0
def ruMainWindow():
	ruWin = "riggUtils"
	if mc.window(ruWin,q=True,ex=True):
		mc.deleteUI(ruWin)

	mc.window(ruWin,title = "Rigging Utilities")
	mc.scrollLayout(horizontalScrollBarThickness=16)
	ruMainColumn = mc.columnLayout(columnAttach=("both",5),rowSpacing=10,columnWidth=320)
	mc.frameLayout(label="General",bs="etchedOut",w=300,mw=5,cll=1)
	mc.button(label='Show Axis',command='mc.toggle(state=True, localAxis=True)')
	mc.button(label='Hide Axis',command='mc.toggle(state=False, localAxis=True)')
		
	mc.frameLayout(label="Non T-Pose joint placer",bs="etchedOut",w=300,mw=5,cll=1,p=ruMainColumn)
	mc.columnLayout(rs=5,adj=1)
	mc.button(l="Create Helper Locator",c =ruCreateLocator)
	mc.button(l="Create Joint on Helper Locator",c =ruCreateJointLocator)
	mc.floatSliderGrp("ruJointRadius",en=1,label="Joint Radius",field=True,minValue=0,maxValue=5,fieldMinValue=0,fieldMaxValue=5,value=0.5,cw3=(70,30,10),dc=ruJointRadius)
	
	mc.frameLayout(label="Fingers Utils",bs="etchedOut",w=300,mw=5,cll=1,p=ruMainColumn)
	mc.columnLayout(rs=5,adj=1)
	mc.floatSliderGrp("ruJointOrientation",en=1,label="Finger Orient",field=True,minValue=0,maxValue=5,fieldMinValue=0,fieldMaxValue=5,value=0.5,cw3=(70,30,10),dc=ruOrientJoint)
	mc.frameLayout(label="Finger Renaming",bs="etchedOut",w=300,mw=5,cll=1)
	mc.optionMenu('ruFinger',l='Choose finger')
	mc.menuItem(l='Thumb')
	mc.menuItem(l='Index')
	mc.menuItem(l='Middle')
	mc.menuItem(l='Ring')
	mc.menuItem(l='Pinky')
	mc.textFieldButtonGrp( label='Template string', text='', buttonLabel='Rename', bc=ruRenameFinger, cw3=[120,70,70],ct3=['left','left','left'],co3=[2,2,2] )
	
	mc.showWindow(ruWin)
def zbw_offsetAnim(*args):
    """creates offset from first obj sel to last based on the entered offset value"""
    def zbw_runOffsetAnim(*args):
        #get frame range!!!!!!
        #get selection, check that they are tranforms
        sel = cmds.ls(sl=True,type="transform")
        selSize = int(len(sel))
        #for each selection mult the index by the offset value
        for i in range(0,selSize):
            obj = sel[i]
            offsetRaw = cmds.intFieldGrp('zbw_offsetValue', q=True, v=True)
            offset = offsetRaw[0]
            multFactor = i * offset
            #shift the entire anim curve by the offset mult value
            cmds.keyframe(obj, edit=True,relative=True,timeChange=multFactor,time=(1,24))

    #create UI, get offset value, frame range or all anim
    if (cmds.window('zbw_offsetAnimUI', exists=True)):
        cmds.deleteUI('zbw_offsetAnimUI', window=True)
        cmds.windowPref('zbw_offsetAnimUI', remove=True)
    window=cmds.window('zbw_offsetAnimUI', widthHeight=(350,200), title='zbw_offsetAnim')
    cmds.columnLayout(cal='center')
    cmds.intFieldGrp('zbw_offsetValue', cal=(1,'left'), label='frequency(frames)', value1=5)
    #CREATE FRAME RANGE AREA (WHICH FRAMES ARE WE DOING?)
    #WHEN THAT HAPPENS, WHAT DO WE DO WITH THE FRAMES AFTER THAT? (PROBABLY NOTHING. . . LET USER WORRY ABOUT IT)
    #checkbox for random freq (to give a random amount to offset each object)
    #cmds.checkBoxGrp('zbw_animNoiseRandom', cal=(1,'left'), cw=(1, 175),label='random frequency on', value1=0, cc=zbw_animNoiseRandom)
    cmds.button('zbw_offsetAnimGo', label='offset!', width=75, command=zbw_runOffsetAnim)

    cmds.showWindow(window)
Esempio n. 6
0
def locatorParticlesUI():
    """
    """
    # Define window
    locParticleUI = 'locatorParticleWindow'
    if cmds.window(locParticleUI, q=True, ex=True): cmds.deleteUI(locParticleUI)
    locParticleUI = cmds.window(locParticleUI, t='Generate Particles')

    # UI Layout
    cmds.columnLayout(adj=False, cal='left')
    partiTFG = cmds.textFieldGrp('locParticle_particleTFG', label='Particle', text='', cw=[(1, 100)])
    radiusFFG = cmds.floatSliderGrp('locParticle_radiusFSG', label='radius', f=True, min=0.1, max=10.0, fmn=0.01,
                                  fmx=100.0, pre=2, v=1.0, cw=[(1, 100)])
    rotateLocCBG = cmds.checkBoxGrp('locParticle_rotateCBG', label='Add rotatePP', ncb=1, v1=0, cw=[(1, 100)])
    scaleLocCBG = cmds.checkBoxGrp('locParticle_scaleCBG', label='Add scalePP', ncb=1, v1=0, cw=[(1, 100)])
    selfCollideCBG = cmds.checkBoxGrp('locParticle_selfCollideCBG', label='self collide', ncb=1, v1=0, cw=[(1, 100)])

    cmds.button(l='Create Particles', c='glTools.tools.generateParticles.locatorParticlesFromUI()')

    # Popup menu
    cmds.popupMenu(parent=partiTFG)
    for p in cmds.ls(type=['particle', 'nParticle']):
        cmds.menuItem(p, c='cmds.textFieldGrp("' + partiTFG + '",e=True,text="' + p + '")')

    # Show Window
    cmds.showWindow(locParticleUI)
 def create(self):
     """
     Draw the window
     """
     # delete the window if its handle exists
     if cmds.window(self.window, exists=True):
         # deletes window. 'window' flag makes sure that deleted object is a window
         cmds.deleteUI(self.window, window=True)
     # initialize the window
     self.window = cmds.window(title=self.title, widthHeight=self.size, menuBar=True) 
     # main form for the window
     self.mainForm = cmds.formLayout(numberOfDivisions=100)
     # create common menu items items and buttons
     self.commonMenu()
     self.commonButtons()
     # create a tabLayout
     self.optionsBorder = cmds.tabLayout(scrollable=True, tabsVisible=False, height=1)
     # Attach tabLayout to parent formLayout, and to control button
     cmds.formLayout(self.mainForm, edit=True, attachForm=
                     ([self.optionsBorder, 'top', 0],
                     [self.optionsBorder, 'left', 2],
                     [self.optionsBorder, 'right', 2]),
                     attachControl=
                     ([self.optionsBorder, 'bottom', 5, self.applyBtn]))
     # new form to attach controls in displayOptions()
     self.optionForm = cmds.formLayout(numberOfDivisions=100)
     self.displayOptions()
     # Show the window
     cmds.showWindow(self.window)
Esempio n. 8
0
 def doIt( self, arglist ):
  wnd = cmds.window( "kgmEngineWindow_" + str(time.time()), widthHeight = ( 200, 200 ) )
  #cmds.columnLayout( adjustableColumn = True )
  #cmds.button( label = 'Export Map',          command = kgmEngine.exportMap )
  #cmds.button( label = 'Export Mesh',         command = kgmEngine.exportMesh )
  #cmds.button( label = 'Export Skeleton',     command = kgmEngine.exportSkeleton )
  #cmds.button( label = 'Export Animation',    command = kgmEngine.exportAnimation )
  #cmds.button( label = 'Insert Node',         command = kgmEngine.insertNode )
  cmds.columnLayout()
  cmds.rowColumnLayout( numberOfColumns = 2 )
  cmds.checkBox( "Mesh", label="Mesh", value=False, onCommand=kgmEngine.enableMesh, offCommand=kgmEngine.enableMesh )
  cmds.checkBox( "Material", label="Material", value=False, onCommand=kgmEngine.enableMaterial, offCommand=kgmEngine.enableMaterial )
  cmds.checkBox( "Skeleton", label="Skeleton", value=False, onCommand=kgmEngine.enableSkeleton, offCommand=kgmEngine.enableSkeleton )
  cmds.checkBox( "Animation", label="Animation", value=False, onCommand=kgmEngine.enableAnimation, offCommand=kgmEngine.enableAnimation )
  
  cmds.columnLayout()
  cmds.rowColumnLayout( numberOfColumns = 2 )
  cmds.columnLayout( adjustableColumn=True )
  cmds.button( label = 'Export',         command = kgmEngine.export )
  cmds.button( label = 'Insert Node',    command = kgmEngine.insertNode )
  
  cmds.columnLayout()
  cmds.rowColumnLayout( numberOfColumns = 3 )
  cmds.columnLayout( adjustableColumn=True )
  cmds.radioCollection()
  cmds.radioButton( label='Bin', align='left', select=False )
  cmds.radioButton( label='Xml', align='left', select=True  )
  
  #cmds.radioButtonGrp( label='Format',   labelArray3=['Bin', 'Txt', 'Xml'], numberOfRadioButtons=3 )
  #cmds.radioButton( 'Format', label='Bin',   )
  cmds.showWindow( wnd )
Esempio n. 9
0
def particleLocatorsUI():
    """
    """
    # Get current frame range
    start = cmds.playbackOptions(q=True, min=True)
    end = cmds.playbackOptions(q=True, max=True)

    # Define window
    particleLocatorsUI = 'particleLocatorsWindow'
    if cmds.window(particleLocatorsUI, q=True, ex=True): cmds.deleteUI(particleLocatorsUI)
    particleLocatorsUI = cmds.window(particleLocatorsUI, t='Generate Locators')

    # UI Layout
    cmds.columnLayout(adj=False, cal='left')
    partiTFG = cmds.textFieldGrp('partiLoc_particleTFG', label='Particle', text='', cw=[(1, 120)])
    prefixTFG = cmds.textFieldGrp('partiLoc_prefixTFG', label='Prefix', text='', cw=[(1, 120)])
    bakeAnicmdsBG = cmds.checkBoxGrp('partiLoc_bakeAnicmdsBG', label='Bake Animation', ncb=1, v1=0, cw=[(1, 120)])
    startEndIFG = cmds.intFieldGrp('partiLoc_startEndISG', nf=2, label='Frame Range', v1=start, v2=end, cw=[(1, 120)])

    rotateLocCBG = cmds.checkBoxGrp('partiLoc_rotateCBG', label='Rotate (rotatePP)', ncb=1, v1=0, cw=[(1, 120)])
    scaleLocCBG = cmds.checkBoxGrp('partiLoc_scaleCBG', label='Scale (scalePP)', ncb=1, v1=0, cw=[(1, 120)])

    cmds.button(l='Create Locators', c='glTools.tools.generateParticles.particleLocatorsFromUI()')

    # Popup menu
    cmds.popupMenu(parent=partiTFG)
    for p in cmds.ls(type=['particle', 'nParticle']):
        cmds.menuItem(p, c='cmds.textFieldGrp("' + partiTFG + '",e=True,text="' + p + '")')

    # Show Window
    cmds.showWindow(particleLocatorsUI)
Esempio n. 10
0
def setAttributeVectorUI():
    global tfXIn, tfXOut, tfYIn, tfYOut, tfZIn, tfZOut, tslVectorList, tfXAdd, tfYAdd, tfZAdd, vectorUI
    vectorUI = 'vectorUI'
    closeUI(vectorUI)
    cmds.window(vectorUI, title = 'vectorUI')
    cmds.columnLayout(columnAttach = ['both', 5], rowSpacing = 5, columnWidth = 210)
    cmds.text('..: random range :..', backgroundColor = [0.15, 0.15, 0.0])
    cmds.gridLayout(numberOfColumns = 6, cellWidthHeight = (33, 20))
    tfXIn = cmds.textField(text = '0.0', backgroundColor = [0.15, 0.1, 0.0])
    tfXOut = cmds.textField(text = '1.0', backgroundColor = [0.15, 0.1, 0.0])
    tfYIn = cmds.textField(text = '0.0', backgroundColor = [0.0, 0.15, 0.1])
    tfYOut = cmds.textField(text = '1.0', backgroundColor = [0.0, 0.15, 0.1])
    tfZIn = cmds.textField(text = '0.0', backgroundColor = [0.0, 0.1, 0.15])
    tfZOut = cmds.textField(text = '1.0', backgroundColor = [0.0, 0.1, 0.15])
    cmds.setParent('..')
    cmds.button('ok', command = 'setAttributeVectorRandom()')
    cmds.separator(style = 'out')
    cmds.text('..: vector list :..', backgroundColor = [0.0, 0.15, 0.15])
    tslVectorList = cmds.textScrollList(allowMultiSelection = True)
    cmds.button('remove', command = 'removeScrollListVector()')
    cmds.gridLayout(numberOfColumns = 4, cellWidthHeight = (50, 20))
    tfXAdd = cmds.textField(text = '0.0', backgroundColor = [0.15, 0.1, 0.0])
    tfYAdd = cmds.textField(text = '0.0', backgroundColor = [0.0, 0.15, 0.1])
    tfZAdd = cmds.textField(text = '0.0', backgroundColor = [0.0, 0.1, 0.15])
    cmds.button('add..', command = 'addScrollListVector()')
    cmds.setParent('..')
    cmds.button('random', command = 'setAttributeListVectorRandom()')
    cmds.button('increment %', command = 'setAttributeListVectorInc()')
    cmds.setParent('..')
    cmds.showWindow()
Esempio n. 11
0
    def __init__(s):
        with report.Report():
            tracker = JointTracker()
            winName = "Orient_Joints"
            if cmds.window(winName, ex=True):
                cmds.deleteUI(winName)
            s.win = cmds.window(rtf=True, w=300, t="Orient Joints")
            cmds.columnLayout(adj=True)
            cmds.button(
                l="Attach Marker",
                h=50,
                c=Callback(tracker.addMarker),
                ann="""
Attach a Marker to the selected Joint.
Rotate the marker into the desired joint rotation.
"""
            )
            cmds.button(
                l="Update Joints",
                h=50,
                c=Callback(tracker.orientJoints),
                ann="""
Rotate all joints that have markers to their respective rotations.
"""
            )
            cmds.showWindow(s.win)
            cmds.scriptJob(uid=[s.win, tracker.removeMarkers])
Esempio n. 12
0
    def __init__(self):
        winName = "Size set"
        global typeMenu
        winTitle = winName
        if cmds.window(winName, exists=True):
                cmds.deleteUI(winName)

#         self.window = cmds.window(self.winName, title=self.winTitle, tbm=1, w=150, h=100 )
        window = cmds.window(winName, title=winTitle, tbm=1, w=250, h=100 )

        cmds.menuBarLayout(h=30)
        cmds.rowColumnLayout  (' selectArrayRow ', nr=1, w=250)

        cmds.frameLayout('LrRow', label='', lv=0, nch=1, borderStyle='out', bv=1, p='selectArrayRow')
        
        cmds.rowLayout  (' rMainRow ', w=300, numberOfColumns=6, p='selectArrayRow')
        cmds.columnLayout ('selectArrayColumn', parent = 'rMainRow')
        cmds.setParent ('selectArrayColumn')
        cmds.separator(h=10, p='selectArrayColumn')
        cmds.gridLayout('listBuildButtonLayout', p='selectArrayColumn', numberOfColumns=2, cellWidthHeight=(100, 20))
        typeMenu=cmds.optionMenu( label='ctrl size')
        cmds.menuItem( label="Large" )
        cmds.menuItem( label="Med" )
        cmds.menuItem( label="Small" )           
        cmds.button (label='Change Selection', p='listBuildButtonLayout', command = lambda *args:self.controllerSize())
        cmds.showWindow(window)    
Esempio n. 13
0
 def enterTimecodeUI(self, buttonlabel='set', buttonfunc=None):
     '''
     generic UI to enter timecode
     
     :param buttonlabel' = label to add to the button
     :param buttonfunc' = function to bind to the button on exit
     '''
     self.win='Timecode_UI'
     if cmds.window(self.win, exists=True):
         cmds.deleteUI(self.win, window=True)
     cmds.window(self.win, title=self.win)
     cmds.columnLayout(adjustableColumn=True)
     cmds.text(label='Timecode Reference')
     cmds.separator(h=10, style='in')
     cmds.rowColumnLayout(nc=8)
     cmds.text(label='  smpte :  ')
     cmds.textField('tchrs', tx='00', w=40, cc=lambda x:self.__uicb_checkfield('tchrs'))
     cmds.text(label=' : ')
     cmds.textField('tcmins', tx='00', w=40, cc=lambda x:self.__uicb_checkfield('tcmins'))
     cmds.text(label=' : ')
     cmds.textField('tcsecs', tx='00', w=40, cc=lambda x:self.__uicb_checkfield('tcsecs'))
     cmds.text(label=' : ')
     cmds.textField('tcfrms', tx='00', w=40, cc=lambda x:self.__uicb_checkfield('tcfrms'))
     cmds.setParent('..')
     cmds.button(label=buttonlabel, command=lambda x:self.__uicb_gatherTimecode(buttonfunc))
     cmds.showWindow(self.win)
    def create(self):
        
        if cmds.window( WinA_Global.winName, ex=1 ):
            cmds.deleteUI( WinA_Global.winName, wnd=1 )
        cmds.window( WinA_Global.winName, title= WinA_Global.title, titleBarMenu = WinA_Global.titleBarMenu )

        form = cmds.formLayout()
        importPathForm     = self.uiImportPath.create()
        importByMatrixForm = self.importByMatrix.create()
        buttonForm         = self.uiButton.create()
        cmds.setParent( '..' )
        
        cmds.formLayout( form, e=1,
                         af=[(importPathForm, 'top', 8), (importPathForm, 'left', 0), (importPathForm, 'right', 0),
                             (importByMatrixForm, 'left', 120 ), (importByMatrixForm, 'right', 0 ),
                             (buttonForm,     'left', 0 ), (buttonForm,    'right', 0 )],
                         ac=[(importByMatrixForm, 'top', 8, importPathForm),
                             (buttonForm, 'top', 8, importByMatrixForm)] )
        
        cmds.window( WinA_Global.winName, e=1, w= WinA_Global.width, h= WinA_Global.height, rtf=1 )
        cmds.showWindow( WinA_Global.winName )
    
        WinA_uiCmd.setUiDefault()
        WinA_uiCmd.loadInfo()
        WinA_uiCmd.setUiCommand()
Esempio n. 15
0
    def create(self):
        
        if cmds.window( Win_Global.winName, q=1, ex=1 ):
            cmds.deleteUI( Win_Global.winName )
        
        cmds.window( Win_Global.winName, title= Win_Global.title )
        
        formOuter = cmds.formLayout()
        stdForm = self.stdArea.create()
        rigForm = self.rigArea.create()
        followForm = self.followArea.create()
        addRigForm = self.addRigArea.create()
        cmds.setParent( '..' )

        cmds.formLayout( formOuter, e=1, 
                         af = [ (stdForm, 'left', 5), (stdForm, 'right', 5), (stdForm, 'top', 5),
                                (rigForm, 'left', 5), (rigForm, 'right', 5),
                                (followForm, 'left', 5), (followForm, 'right', 5),
                                (addRigForm, 'left', 5), (addRigForm, 'right', 5), (addRigForm, 'bottom', 5) ],
                         ac = [ (rigForm, 'top', 5, stdForm ),
                                (followForm, 'top', 5, rigForm ),
                                (addRigForm, 'top', 5, followForm )] )
        
        cmds.window( Win_Global.winName, e=1, width = Win_Global.width, height= Win_Global.height )
        cmds.showWindow( Win_Global.winName )
        
        Win_Global.loadInfo()
Esempio n. 16
0
def UI():
    if cmds.window("TressFXExporterUI", exists = True):
        cmds.deleteUI("TressFXExporterUI")

    windowTitle = 'TressFX Exporter' + ' ' + 'v' + tressfx_exporter_version
    window = cmds.window("TressFXExporterUI", title = windowTitle, w=280, h = 260, mnb=False, sizeable=False)
    mainLayout = cmds.columnLayout(w=280, h=260)

    cmds.separator(h=8, style='in')
    cmds.text(label='Number of vertices per strand (4, 8, 16, 32 or 64):', align='left')
    cmds.intField("numVerticesPerStrand", w=30, minValue=4, maxValue=64, value=16 )
    cmds.separator(h=8, style='in')
    cmds.checkBox("bothEndsImmovable", label='Both ends immovable')
    cmds.checkBox("InvertZ", label='Invert Z', value = True)
    cmds.checkBox("exportSkinCheckBox", label='Export skin data', value = False)
    cmds.checkBox("randomStrandCheckBox", label='Randomize strands for LOD', value = True)
    
    cmds.separator(h=15)
    
    cmds.button(label="Set the base mesh", w=170, h=30, command=SetBaseMesh)
    cmds.textField("MeshNameLabel", w=170, editable=False)
    
    cmds.separator(height=10, style='none')
    cmds.button(label="Export as binary (*.tfx)", w=170, h=30, command=ExportBinary)
    
    cmds.separator(h=15)
    
    version_text = 'v' + tressfx_exporter_version
    cmds.text(label=version_text, align='left')
    
    global selected_mesh_shape_name
    selected_mesh_shape_name = ''
    
    cmds.showWindow(window)
Esempio n. 17
0
def addMultiAttr():
    #Create a variable for the window name
    winName = 'blend'
    winTitle = 'rh_addMultiAttr'
    #Delete the window if it exists
    if cmds.window(winName, exists=True):
        cmds.deleteUI(winName, window=True)
    #Build the main window
    cmds.window(winName, title=winTitle, sizeable=True)
    cmds.textFieldButtonGrp('Obj',label='Object :', text='', ed = False,buttonLabel='Load Sel',bc = 'sel()')
    cmds.columnLayout(adjustableColumn=True)    
    cmds.textFieldGrp('Attr',l='Attribute:',text='')   

    cmds.columnLayout(adjustableColumn=True)  
    cmds.floatFieldGrp('minAttr', numberOfFields=1, label='Min Value', value1=0) 
       
    cmds.columnLayout(adjustableColumn=True) 
    cmds.floatFieldGrp('maxAttr', numberOfFields=1, label='Max Value', value1=0)
    
    cmds.columnLayout(adjustableColumn=True)        
    cmds.button(label='Contact', command='Connect()')
    cmds.columnLayout(adjustableColumn=True)
    #Show the window
    cmds.showWindow(winName)
    cmds.window(winName, edit=True, width=300, height=120)
Esempio n. 18
0
    def create(self):
        
        if cmds.window( Win_Global.winName, q=1, ex=1 ):
            cmds.deleteUI( Win_Global.winName )
        cmds.window( Win_Global.winName, title=Win_Global.title )
        
        form  = cmds.formLayout()
        text   = cmds.text( l= "Select joint tops", al='center', h=30, bgc=[.5,.5,.5] )
        check = cmds.checkBox( l='Add Pin Control' )
        controllerName = self.ui_controllerName.create()
        colorIndex = self.ui_colorIndex.create()
        controllerSize = self.ui_controllerSize.create()
        button = self.ui_buttons.create()
        cmds.setParent( '..' )

        cmds.formLayout( form, e=1, af=[ (text, 'top', 0 ), (text, 'left', 0 ), (text, 'right', 0 ),
                                         (check, 'top', 5 ), (check, 'left', 10 ), (check, 'right', 0 ),
                                         (controllerName, 'left', 10 ), (controllerName, 'right', 5 ),
                                         (colorIndex, 'left', 10 ), (colorIndex, 'right', 5 ),
                                         (controllerSize, 'left', 10 ), (controllerSize, 'right', 5 ),
                                         (button, 'left', 0 ), (button, 'right', 0 ), (button, 'bottom', 0 )],
                                    ac=[ (check, 'top', 5, text),
                                         (controllerName, 'top', 5, check),
                                         (colorIndex, 'top', 5, controllerName), 
                                         (controllerSize, 'top', 5, colorIndex), 
                                         (button, 'top', 5, controllerSize) ] )
        
        cmds.window( Win_Global.winName, e=1,
                     width = Win_Global.width, height = Win_Global.height,
                     rtf=1 )
        cmds.showWindow( Win_Global.winName )
        
        Win_Global.checkBox = check
Esempio n. 19
0
	def __init__(self) :
		# get the currently selected objects and make sure we have only one object
		selected = OM.MSelectionList()
		OM.MGlobal.getActiveSelectionList(selected)
		self.selectedObjects = []
		selected.getSelectionStrings(self.selectedObjects)
		if len(self.selectedObjects) == 0 :
			cmds.confirmDialog( title='No objects Selected', message='Select a Mesh Object', button=['Ok'], defaultButton='Ok', cancelButton='Ok', dismissString='Ok' )
		elif len(self.selectedObjects) > 1 :
			cmds.confirmDialog( title='Select One Object', message='Only One Mesh mat be exported at a time', button=['Ok'], defaultButton='Ok', cancelButton='Ok', dismissString='Ok' )
		# now we have the correct criteria we can proceed with the export
		else :
			# get the start and end values for our UI sliders
			anim=OMA.MAnimControl()
			minTime=anim.minTime()
			maxTime=anim.maxTime()
			self.m_start=int(minTime.value())
			self.m_end=int(maxTime.value())
			# now we create a window ready to populate the components
			self.m_window = cmds.window( title='NCCA Pointbake Export' )
			# create a layout
			cmds.columnLayout()
			# create two sliders for start and end we also attach methods to be called when the slider
			# changes
			self.m_startSlider=cmds.intSliderGrp( changeCommand=self.startChanged,field=True, label='Start Frame', minValue=self.m_start, maxValue=self.m_end, fieldMinValue=self.m_start, fieldMaxValue=self.m_end, value=self.m_start )
			self.m_endSlider=cmds.intSliderGrp( changeCommand=self.endChanged ,field=True, label='End Frame', minValue=self.m_start, maxValue=self.m_end, fieldMinValue=self.m_end, fieldMaxValue=self.m_end, value=self.m_end )
			# create a button and add the method called when pressed
			cmds.button( label='Export', command=self.export )
			# finally show the window
			cmds.showWindow( self.m_window )
 def create(self):
     
     if cmds.window( self.winName, ex=1 ):
         cmds.deleteUI( self.winName, wnd=1 )
     cmds.window( self.winName, title= self.title )
     
     form = cmds.formLayout()
     field_meshForm = self.field_mesh.create()
     field_uvForm   = self.field_uv.create()
     checkForm      = self.check.create()
     buttons_form   = self.buttons.create()
     cmds.setParent( '..' )
     
     cmds.formLayout( form, e=1,
                      af=[(field_meshForm, 'top', 0 ), ( field_meshForm, 'left', 0 ), ( field_meshForm, 'right', 0 ),
                          (field_uvForm, 'left', 0 ), ( field_uvForm, 'right', 0 ),
                          (checkForm, 'left', 0 ), (checkForm, 'right', 0 ),
                          (buttons_form, 'left', 0 ), ( buttons_form, 'right', 0 ) ],
                      ac=[(field_uvForm, 'top', 0, field_meshForm ),
                          (checkForm, 'top', 0, field_uvForm),
                          (buttons_form, 'top', 0, checkForm )])
     
     cmds.window( self.winName, e=1, w=self.width, h=self.height )
     cmds.showWindow( self.winName ) 
 
     self.setTextInfomation()
     self.popupSetting()
     self.buttonCommandSetting()
Esempio n. 21
0
def setupRLUI():
    if cmds.window("RLWin", exists=True):
        cmds.deleteUI("RLWin")
    
    widgets["win"] = cmds.window("RLWin", t="zbw_setupRL", w=200, h=400)
    widgets["mainCL"] = cmds.columnLayout(w=200)
    widgets["mainFrame"] = cmds.frameLayout(l="Create Render Layers", w=200, cll=True, bgc=(.2,.2,.2))
    
    widgets["CarKey"] = cmds.checkBox(l="Car_Env", v=True)
    widgets["CarEnv"] = cmds.checkBox(l="Car_Key", v=True)
    widgets["BGKey"] = cmds.checkBox(l="BG_Env", v=True)
    widgets["BGEnv"] = cmds.checkBox(l="BG_Key", v=True)
    widgets["AO"] = cmds.checkBox(l="All_AO", v=True)
    widgets["MatteA"] = cmds.checkBox(l="All_MatteA", v=True)
    widgets["MatteB"] = cmds.checkBox(l="All_MatteB", v=True)
    widgets["MoVec"] = cmds.checkBox(l="All_MoVec", v=True)
    widgets["Shadow"] = cmds.checkBox(l="All_Shadow", v=True)
    
    widgets["createBut"] = cmds.button(l="Create Layers", w=200, h=40, bgc=(.6,.8,.6), c=createRL)
    cmds.text("NOTE: this is setting the overrides for \nthe moVec layer RG's and materials \n(if you have them in scene\n for the AO and Movec layers but \n NO passes are set up")
    cmds.separator(h=20, style = "double")
    #widgets["copyBut"] = cmds.button(l="Copy Selected Layer", w=200, h=40, bgc=(.8,.8,.6), c=copyRL)
    #cmds.separator(h=20, style = "double")
    widgets["importBut"] = cmds.button(l="Import RL Shaders File", w=200, h=40, bgc=(.8,.6,.6), c=importRL)
   
    cmds.showWindow(widgets["win"])
    cmds.window(widgets["win"], e=True, w=200, h=400)
Esempio n. 22
0
 def create( self, *args ):
     
     if cmds.window( self.winName, ex=1 ):
         cmds.deleteUI( self.winName, wnd=1 )
     cmds.window( self.winName, title= self.title, titleBarMenu=0 )
     
     cmds.columnLayout()
     cmds.rowColumnLayout( nc=1, cw=[( 1,self.width-2)] )
     cmds.text( l='Register ID', h=30 )
     idField = cmds.textField( h=25 )
     helpField = cmds.textField( en=0 )
     cmds.setParent( '..' )
     
     firstWidth = (self.width-2)*0.5
     secondWidth = (self.width-2)-firstWidth
     cmds.rowColumnLayout( nc=2, cw=[(1,firstWidth),(2,secondWidth)])
     cmds.button( l='Create', h=25, c=self.cmdCreate )
     cmds.button( l='Cancel', h=25, c=self.cmdCancel )
     cmds.setParent( '..' )
     
     cmds.window( self.winName, e=1,
                  width = self.width,
                  height = self.height )
     cmds.showWindow( self.winName )
     
     self.idField = idField
     self.helpField = helpField
Esempio n. 23
0
def secondaryUI():
    sec_UIname = 'secondary'
    if cmds.window(sec_UIname,exists = True):
        cmds.deleteUI(sec_UIname)
    cmds.window(sec_UIname,title = 'rosa_secondary')
    clmLot = cmds.columnLayout( adjustableColumn=True)
    cmds.textField('ctrl_name',text = 'ctrl_name')
    cmds.button('createctrl',label = 'create ctrl',h = 30,c = 'ctrl()')
    cmds.button('load_model',label = 'load "org" model',c = 'load_org()')
    cmds.textField('org_model',text = '"org" model')
    cmds.button('load_property_obj',label = 'loading property add object',c = 'load_vis()')
    cmds.textField('vis',text = 'Visibility')
    #
    flLot = cmds.flowLayout(columnSpacing = 6)
    cmds.text(label = 'ctrl axial:')
    cmds.radioCollection()
    cmds.radioButton('follic',label = 'follic',select = 0)
    cmds.radioButton('Custom',label = 'Custom',select = 1)
    #
    cmds.setParent( clmLot)
    cmds.button(label = 'Generate',c = 'secondary_add()')
    cmds.button('add_ctrl',label = 'add controller',c = 'add_controller()')
    cmds.button('Add_modelSec',label = 'Add_modelSec',c = 'Add_modelSec()')
    cmds.button(label = 'inverse_connect',c =  'inverse_connect01()')
    #
    cmds.frameLayout( label='modify ctrl:',borderStyle='etchedOut')
    cmds.setParent( clmLot)
    cmds.button(label = 'loding want to modify the controller',c = 'load_ctrl()')
    cmds.textField('sec_ctrl',text = 'secondary_ctrl')
    cmds.button(label = 'modify the controller position',c = 'ctrl_modify()')
    cmds.button(label = 'complete controller modifies',c = 'modify_complete()')
    cmds.showWindow()
Esempio n. 24
0
def smoothEdgeLineUI():
    """
    Smooth Edge Line UI
    """
    # Window
    window = 'smoothEdgesUI'
    if cmds.window(window, q=True, ex=1): cmds.deleteUI(window)
    window = cmds.window(window, t='Smooth Edge Line', s=True)

    # Layout
    CL = cmds.columnLayout()

    # UI Elements
    cmds.intSliderGrp('smoothEdges_smoothISG', label='Smooth', field=True, minValue=1, maxValue=20, fieldMinValue=1,
                    fieldMaxValue=100, value=4)
    cmds.floatSliderGrp('smoothEdges_falloffFSG', label='Falloff Distance', field=True, precision=3, minValue=0.0,
                      maxValue=10.0, fieldMinValue=0.0, fieldMaxValue=100.0, value=0.01)
    cmds.checkBoxGrp('smoothEdges_edgeSpacingCBG', label='Maintain Edge Spacing', numberOfCheckBoxes=1, v1=False)
    cmds.checkBoxGrp('smoothEdges_snapToOrigCBG', label='Maintain Shape', numberOfCheckBoxes=1,
                   v1=False)  # columnWidth2=[100,165]
    cmds.checkBoxGrp('smoothEdges_deleteHistoryCBG', label='Delete History', numberOfCheckBoxes=1, v1=False)
    cmds.button('smoothEdgesB', l='Smooth', w=390, c='glTools.model.straightenVerts.smoothEdgeLineFromUI()')

    # Show Window
    cmds.window(window, e=True, wh=[392, 115])
    cmds.showWindow(window)
Esempio n. 25
0
def evenEdgeSpacingUI():
    """
    Even Edge Spacing UI
    """
    # Window
    window = 'evenEdgeSpacingUI'
    if cmds.window(window, q=True, ex=1): cmds.deleteUI(window)
    window = cmds.window(window, t='Even Edge Spacing', s=True)

    # Layout
    CL = cmds.columnLayout()

    # UI Elements
    cmds.intSliderGrp('evenEdgeSpacing_smoothISG', label='Smooth', field=True, minValue=0, maxValue=20, fieldMinValue=0,
                    fieldMaxValue=100, value=4)
    cmds.floatSliderGrp('evenEdgeSpacing_influenceFSG', label='Influence', field=True, minValue=0.0, maxValue=1.0,
                      fieldMinValue=0.0, fieldMaxValue=1.0, value=1.0)
    cmds.checkBoxGrp('evenEdgeSpacing_snapToOrigCBG', label='Maintain Shape', numberOfCheckBoxes=1,
                   v1=False)  # columnWidth2=[100,165]
    cmds.checkBoxGrp('evenEdgeSpacing_deleteHistoryCBG', label='Delete History', numberOfCheckBoxes=1, v1=False)
    cmds.button('evenEdgeSpacingB', l='Even Edge Spacing', w=390,
              c='glTools.model.straightenVerts.evenEdgeSpacingFromUI()')

    # Show Window
    cmds.window(window, e=True, wh=[392, 99])
    cmds.showWindow(window)
Esempio n. 26
0
def createMayaWindow(title, new, brand="studio.coop", tooltip="introduction to the UI"):
    if cmds.window(title, exists=True):
        if not new:
            cmds.showWindow(title)
            return None, True
        cmds.deleteUI(title, wnd=True)  # delete old window
    mWindow = mayaUI()
    mWindow.setWindowTitle(title)
    mWindow.setObjectName(title)
    mWindow.setWindowFlags(QtCore.Qt.Tool)  # always on top (multiplatform)

    # Default UI elements
    """ Create the widgets for the dialog """
    mWindow.header = QtGui.QLabel(title)
    mWindow.header.setAlignment(QtCore.Qt.AlignHCenter)
    mWindow.header.setFont(fontHeader)
    mWindow.header.setContentsMargins(10, 10, 10, 10)

    mWindow.brand = QtGui.QLabel(brand)
    mWindow.brand.setToolTip(tooltip)
    mWindow.brand.setStyleSheet("background-color: rgb(40,40,40); color: rgb(180,180,180); border:solid black 1px")
    mWindow.brand.setAlignment(QtCore.Qt.AlignHCenter)
    mWindow.brand.setGeometry(10, 10, 20, 20)
    mWindow.brand.setFont(fontFooter)
    print "window successfully created"
    return mWindow, False
Esempio n. 27
0
def windowSHM(*args):
    
    if cmds.window("shdrmnWin", exists = 1):
        cmds.deleteUI("shdrmnWin")
    win = cmds.window("shdrmnWin", title = "Shader manager", w = 500, sizeable = 0)
    
    mainLayout = cmds.columnLayout (w = 500)
    
    cmds.rowColumnLayout(w = 500, nc = 4, parent = mainLayout )
    cmds.textFieldGrp( 'getAiAttrField', text = 'mColor')
    cmds.button(label = "GET TX", w= 83, h = 50, c = getTextureFromShader )
    cmds.button(label = "SHOW TX", w= 83, h = 50, c = assignPREVShader)
    cmds.button(label = "TILE UV", w= 83, h = 50, c = setTileUV)

    
    cmds.rowColumnLayout(w = 500, nc = 1, parent = mainLayout )
    cmds.button(label = "DELETE PREVIEW", w= 500, h = 50, c = deleteShaders, parent = mainLayout )
    cmds.separator(height=10, parent = mainLayout)
    
    cmds.rowColumnLayout(w = 500, nc = 2, parent = mainLayout )
    cmds.button(label = "GET MATERIALS", w= 250, h = 50, c =  getMaterial )
    cmds.button(label = "ASSIGN MATERIALS", w= 250, h = 50, c =  asignMaterial )
       
    
    cmds.showWindow(win)
Esempio n. 28
0
def transfertSelectionToTarget_window():
	"""
	This definition creates the 'Transfert Selection To Target' main window.
	"""

	cmds.windowPref(enableAll=False)

	if (cmds.window("transfertSelectionToTarget_window", exists=True)):
		cmds.deleteUI("transfertSelectionToTarget_window")

	cmds.window("transfertSelectionToTarget_window",
		title="Transfert Selection To Target",
		width=320)

	spacing = 5

	cmds.columnLayout(adjustableColumn=True, rowSpacing=spacing)

	cmds.rowLayout(numberOfColumns=3, columnWidth3=(125, 150, 130), adjustableColumn=2, columnAlign=(2, "left"), columnAttach=[(1, "both", spacing), (2, "both", spacing), (3, "both", spacing)])
	cmds.text(label="Target:")
	sources_textField = cmds.textField("target_textField")
	cmds.button("pickTarget_button", label="Pick Target!", command=pickTarget_button_OnClicked)
	cmds.setParent(topLevel=True)

	cmds.separator(style="single")

	cmds.button("transfertSelection_button", label="Transfert Selection!", command=transfertSelection_button_OnClicked)

	setUnsetContextHotkeys()
	scriptJob = cmds.scriptJob(uiDeleted=("transfertSelectionToTarget_window", setUnsetContextHotkeys), runOnce=True)

	cmds.showWindow("transfertSelectionToTarget_window")

	cmds.windowPref(enableAll=True)
Esempio n. 29
0
def load_ui():

    current_script_path = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
    if (cmds.window('jt_autorig', exists=True)):
        cmds.deleteUI('jt_autorig')
    window = cmds.loadUI(uiFile=os.path.join(current_script_path, 'jt_autorig.ui'))
    cmds.showWindow(window)
Esempio n. 30
0
	def create(self):
		if cmds.window('uvShellAlignWindow', exists = True):
			cmds.deleteUI('uvShellAlignWindow')

		self.window = cmds.window(self.window, title = self.title, widthHeight = self.size)
		self.frameForm = cmds.frameLayout(label = " 1. 基準とする UVShell を選択して登録", bgc = (0.5, 0.3, 0.2), cll = False)
		self.setUVSBtn1 = cmds.button(label = "基準 UVShell を登録"  , command = self.registUVBndBox1, height = 30 )
		cmds.rowLayout( numberOfColumns = 1, adj = True)					

				




		cmds.setParent("..")			
		self.frameForm = cmds.frameLayout(label = " 2. 位置を揃えたい UVShell を選択して実行", bgc = (0.2, 0.3, 0.5), cll = False)
		self.distDcheckBox = cmds.radioButtonGrp('radioBtn', label = "", numberOfRadioButtons = 4 ,
							 sl = 1, cl4 = ['left','left','left','left'] , la4 = [ 'Left', 'Right', 'Bottom', 'Top'], adj = True)

		self.backupPathText = cmds.text("※ 2016/1/5 現在、複数UVを選択した状態での位置揃えには対応していません", font = "smallBoldLabelFont", align = 'left');
		self.setUVSBtn2 = cmds.button(label = "選択した UVShell を揃える" , command = self.registUVBndBox2, height = 30 )
		cmds.setParent("..")	
		
		cmds.separator(width = self.width, style = 'in')
		
		cmds.text("【問い合わせ先】 : TAセクション.村岡", bgc = (0.2, 0.2, 0.2), align = 'left', width = self.width);

		cmds.setParent("..")	
		cmds.showWindow()
Esempio n. 31
0
def repathUI():

    global eloadNameSpace
    global epathShader
    global epathAlembic
    global iloadNameSpace
    global ipathShader
    global ipathAlembic
    global uloadNameSpace
    global upathShader
    global upathAlembic
    global tabs

    wPathUI='EXPORPACO v1.1'
    if cmds.window(wPathUI, exists=True):
        cmds.deleteUI(wPathUI)
        cmds.deleteUI(tabs)
        cmds.deleteUI(tabl)

    wPathUI=cmds.window(wPathUI,title=wPathUI,resizeToFitChildren=True,s=1)
    tabs = cmds.tabLayout(innerMarginWidth=100, innerMarginHeight=5)

    #Creo columna de Export
    ecl1=cmds.columnLayout(parent=tabs,adjustableColumn=True,columnOffset=['both',5],rowSpacing=5 )
    etx1=cmds.text("EXPORT ALEMBIC!!",parent=ecl1,bgc=(1,8,0))
    ecl2=cmds.columnLayout(parent=ecl1)
    efl1=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=ecl2)
    etx0=cmds.text("NAMESPACE->",h=25,parent=efl1)
    eloadNameSpace=cmds.textField(w=250,h=25,parent=efl1)
    efl2=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=ecl2)
    etx2=cmds.text("FILE SHADER->",h=25,parent=efl2)
    epathShader=cmds.textField(w=250,h=25,parent=efl2)
    eloadBtnShd=cmds.button(w=100,label="SELECT FILE",c="PH_EXPORTPACO.selectDir()",parent=efl2)
    efl3=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=ecl2)
    etx3=cmds.text("SAVE ALEMBIC->",h=25,parent=efl3)
    epathAlembic=cmds.textField(w=250,h=25,parent=efl3)
    eloadBtnAbc=cmds.button(w=100,label="SELECT FOLDER ",c="PH_EXPORTPACO.selectDir(F=False)",parent=efl3)
    cmds.setParent( '..' )
    efixit=cmds.button(l="MANUEAL CREATE ALEMBIC", c="PH_EXPORTPACO.alembic()",w=70,h=80,bgc=(0.8,0.6,0),parent=ecl1)
    auto=cmds.button(l="AUTO CREATE ALEMBIC", c="PH_EXPORTPACO.automaticExport()",w=70,h=80,bgc=(0.8,0.6,0),parent=ecl1)
    cmds.setParent( '..' )

    #Creo columna de Import
    icl1=cmds.columnLayout(parent=tabs,adjustableColumn=True,columnOffset=['both',5],rowSpacing=5 )
    itx1=cmds.text("IMPORT ALEMBIC!!",parent=icl1,bgc=(0.5,0.8,1))
    icl2=cmds.columnLayout(parent=icl1)
    ifl1=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=icl2)
    itx0=cmds.text("NAMESPACE->",h=25,parent=ifl1)
    iloadNameSpace=cmds.textField(w=250,h=25,parent=ifl1)
    ifl2=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=icl2)
    itx2=cmds.text("FILE SHADER->",h=25,parent=ifl2)
    ipathShader=cmds.textField(w=250,h=25,parent=ifl2)
    iloadBtnShd=cmds.button(w=100,label="SELECT FILE",c="PH_EXPORTPACO.selectDir(True)",parent=ifl2)
    ifl3=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=icl2)
    itx3=cmds.text("FILE ALEMBIC->",h=25,parent=ifl3)
    ipathAlembic=cmds.textField(w=250,h=25,parent=ifl3)
    iloadBtnAbc=cmds.button(w=100,label="SELECT FILE",c="PH_EXPORTPACO.selectDir(F=False)",parent=ifl3)
    ifixit=cmds.button(l="IMPORT ALEMBIC", c="PH_EXPORTPACO.alembic()",w=70,h=80,bgc=(0.5,0.8,1),parent=icl1)


    #Creo columna de Update
    ucl1=cmds.columnLayout(parent=tabs,adjustableColumn=True,columnOffset=['both',5],rowSpacing=5 )
    utx1=cmds.text("UPDATE ALEMBIC!!",parent=ucl1,bgc=(0.29,0.87,0.35))
    ucl2=cmds.columnLayout(parent=ucl1)
    ufl1=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=ucl2)
    utx0=cmds.text("NAMESPACE->",h=25,parent=ufl1)
    uloadNameSpace=cmds.textField(w=250,h=25,parent=ufl1)
    ufl2=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=ucl2)
    ufl3=cmds.rowLayout(numberOfColumns=3,columnWidth3=[90,100,70],parent=ucl2)
    utx3=cmds.text("FILE ALEMBIC->",h=25,parent=ufl3)
    upathAlembic=cmds.textField(w=250,h=25,parent=ufl3)
    uloadBtnAbc=cmds.button(w=100,label="SELECT FILE ",c="PH_EXPORTPACO.selectDir()",parent=ufl3)

    fixit=cmds.button(l="UPDATE ALEMBIC", c="alembic()",w=70,h=80,bgc=(0.29,0.87,0.35),parent=ucl1)

    #Creo los Tabs
    tabl=cmds.tabLayout( tabs, edit=True, tabLabel=((ecl1, 'CREATE ALEMBIC'),(icl1, 'IMPORT ALEMBIC'),(ucl1, 'UPDATE ALEMBIC')))
    cmds.showWindow(wPathUI)
Esempio n. 32
0
def attachToMeshUI():
	'''
	UI for attachToMesh()
	'''
	# Window
	window = 'attachToMeshUI'
	if mc.window(window,q=True,ex=1): mc.deleteUI(window)
	window = mc.window(window,t='Attach To Mesh')
	# Layout
	FL = mc.formLayout(numberOfDivisions=100)
	# UI Elements
	#---
	# Surface
	meshTFB = mc.textFieldButtonGrp('attachToMeshTFB',label='Target Mesh',text='',buttonLabel='Load Selected')
	# Transform
	transformTFB = mc.textFieldButtonGrp('attachToMeshTransformTFB',label='Transform',text='',buttonLabel='Load Selected')
	# Transform
	prefixTFG = mc.textFieldGrp('attachToMeshPrefixTFG',label='Prefix',text='')
	# Orient
	orientCBG = mc.checkBoxGrp('attachToMeshOrientCBG',label='Orient To Face',ncb=1,v1=False)

	# Orient Frame
	orientFrameL = mc.frameLayout('attachToMeshOriFL',l='Orient Options',cll=0,en=0)
	orientFormL = mc.formLayout(numberOfDivisions=100)
	# OMG
	axList = ['X','Y','Z','-X','-Y','-Z']
	orientNormAxisOMG = mc.optionMenuGrp('attachToMeshNormOMG',label='Normal Axis',en=False)
	for ax in axList: mc.menuItem(label=ax)
	orientTanAxisOMG = mc.optionMenuGrp('attachToMeshTanOMG',label='Tangent Axis',en=False)
	for ax in axList: mc.menuItem(label=ax)
	# Set Default Value
	mc.optionMenuGrp(orientTanAxisOMG,e=True,sl=2)

	mc.setParent('..')
	mc.setParent('..')

	# UI callback commands
	mc.textFieldButtonGrp(meshTFB,e=True,bc='glTools.ui.utils.loadMeshSel("'+meshTFB+'")')
	mc.textFieldButtonGrp(transformTFB,e=True,bc='glTools.ui.utils.loadObjectSel("'+transformTFB+'","'+prefixTFG+'")')
	mc.checkBoxGrp(orientCBG,e=True,cc='glTools.ui.utils.checkBoxToggleLayout("'+orientCBG+'","'+orientFrameL+'")')

	# Buttons
	snapB = mc.button('attachToMeshAttachB',l='Attach',c='glTools.ui.mesh.attachToMeshFromUI(False)')
	snapCloseB = mc.button('attachToMeshAttachCloseB',l='Attach and Close',c='glTools.ui.mesh.attachToMeshFromUI(True)')
	cancelB = mc.button('attachToMeshCancelB',l='Cancel',c='mc.deleteUI("'+window+'")')

	# Form Layout - MAIN
	mc.formLayout(FL,e=True,af=[(meshTFB,'top',5),(meshTFB,'left',5),(meshTFB,'right',5)])
	mc.formLayout(FL,e=True,ac=[(transformTFB,'top',5,meshTFB)])
	mc.formLayout(FL,e=True,af=[(transformTFB,'left',5),(transformTFB,'right',5)])
	mc.formLayout(FL,e=True,ac=[(prefixTFG,'top',5,transformTFB)])
	mc.formLayout(FL,e=True,af=[(prefixTFG,'left',5),(prefixTFG,'right',5)])
	mc.formLayout(FL,e=True,ac=[(orientCBG,'top',5,prefixTFG)])
	mc.formLayout(FL,e=True,af=[(orientCBG,'left',5),(orientCBG,'right',5)])
	mc.formLayout(FL,e=True,ac=[(orientFrameL,'top',5,orientCBG)])
	mc.formLayout(FL,e=True,af=[(orientFrameL,'left',5),(orientFrameL,'right',5)])
	mc.formLayout(FL,e=True,ac=[(orientFrameL,'bottom',5,snapB)])
	mc.formLayout(FL,e=True,ac=[(snapB,'bottom',5,snapCloseB)])
	mc.formLayout(FL,e=True,af=[(snapB,'left',5),(snapB,'right',5)])
	mc.formLayout(FL,e=True,ac=[(snapCloseB,'bottom',5,cancelB)])
	mc.formLayout(FL,e=True,af=[(snapCloseB,'left',5),(snapCloseB,'right',5)])
	mc.formLayout(FL,e=True,af=[(cancelB,'left',5),(cancelB,'right',5),(cancelB,'bottom',5)])

	# Form Layout - Orient
	mc.formLayout(orientFormL,e=True,af=[(orientNormAxisOMG,'top',5),(orientNormAxisOMG,'left',5),(orientNormAxisOMG,'right',5)])
	mc.formLayout(orientFormL,e=True,ac=[(orientTanAxisOMG,'top',5,orientNormAxisOMG)])
	mc.formLayout(orientFormL,e=True,af=[(orientTanAxisOMG,'left',5),(orientTanAxisOMG,'right',5)])

	# Show Window
	mc.showWindow(window)
Esempio n. 33
0
    def __init__(self):
        name = "cmt_orientjoints"
        if cmds.window(name, exists=True):
            cmds.deleteUI(name, window=True)
        if cmds.windowPref(name, exists=True):
            cmds.windowPref(name, remove=True)
        self.window = cmds.window(name,
                                  title="CMT Orient Joints",
                                  widthHeight=(358, 380))
        cmds.columnLayout(adjustableColumn=True)
        margin_width = 4
        cmds.frameLayout(bv=False,
                         label="Operations",
                         collapsable=True,
                         mw=margin_width)
        cmds.rowColumnLayout(numberOfColumns=2, adj=1)

        self.insert_joint_field = cmds.intField(minValue=1, value=1)
        cmds.button(label="Insert Joints", c=self.insert_joints)

        cmds.setParent("..")
        cmds.setParent("..")

        cmds.frameLayout(bv=False,
                         label="Quick Actions",
                         collapsable=True,
                         mw=margin_width)
        cmds.gridLayout(numberOfColumns=2, cellWidthHeight=(175, 65))
        cmds.button(label="Make Planar Orientation", command=self.make_planar)
        cmds.button(label="Project to Planar Position",
                    command=partial(make_position_planar))
        cmds.button(label="Align Up With Child", command=self.align_with_child)
        cmds.button(label="Zero Orient", command=self.zero_orient)
        cmds.button(label="Orient to World", command=self.orient_to_world)
        cmds.rowColumnLayout(numberOfColumns=4)

        height = 20
        label_width = 60
        icon_left = "nudgeLeft.png"
        icon_right = "nudgeRight.png"
        cmds.text(label="Offset X", align="right", width=label_width)
        cmds.iconTextButton(
            style="iconOnly",
            image1=icon_left,
            label="spotlight",
            h=height,
            w=height,
            c=partial(self.offset_orient_x, direction=-1),
        )
        self.offset_x = cmds.floatField(value=90.0)
        cmds.iconTextButton(
            style="iconOnly",
            image1=icon_right,
            label="spotlight",
            h=height,
            w=height,
            c=partial(self.offset_orient_x, direction=1),
        )
        cmds.text(label="Offset Y", align="right", width=label_width)
        cmds.iconTextButton(
            style="iconOnly",
            image1=icon_left,
            label="spotlight",
            h=height,
            w=height,
            c=partial(self.offset_orient_y, direction=-1),
        )
        self.offset_y = cmds.floatField(value=90.0)
        cmds.iconTextButton(
            style="iconOnly",
            image1=icon_right,
            label="spotlight",
            h=height,
            w=height,
            c=partial(self.offset_orient_y, direction=1),
        )
        cmds.text(label="Offset Z", align="right", width=label_width)
        cmds.iconTextButton(
            style="iconOnly",
            image1=icon_left,
            label="spotlight",
            h=height,
            w=height,
            c=partial(self.offset_orient_z, direction=-1),
        )
        self.offset_z = cmds.floatField(value=90.0)
        cmds.iconTextButton(
            style="iconOnly",
            image1=icon_right,
            label="spotlight",
            h=height,
            w=height,
            c=partial(self.offset_orient_z, direction=1),
        )

        cmds.setParent("..")
        cmds.setParent("..")
        cmds.setParent("..")
        cmds.frameLayout(bv=False,
                         label="Manual Orient",
                         collapsable=True,
                         mw=margin_width)
        cmds.columnLayout(adj=True)
        cmds.rowLayout(numberOfColumns=2, cw2=(150, 150))
        self.reorient_children = cmds.checkBox(label="Reorient children",
                                               value=True,
                                               align="left")
        self.reset_orientation = cmds.checkBox(label="Reset orientation",
                                               value=True,
                                               align="left")
        cmds.setParent("..")
        cmds.gridLayout(numberOfColumns=2, cellWidthHeight=(175, 65))
        cmds.button(label="Template Joints",
                    command=partial(self.template_joints))
        cmds.button(label="Rebuild Joints", command=partial(rebuild_joints))
        cmds.setParent("..")
        cmds.setParent("..")
        cmds.setParent("..")
        cmds.showWindow(self.window)
Esempio n. 34
0

import maya.cmds as cmds
# We will use one line of PyMel
import pymel.core as pm


def buttonPressed(name):
    print "pressed %s!" % name


# Using lambda
win = cmds.window(title="My Window")
layout = cmds.columnLayout()
btn = cmds.button( command = lambda *args: buttonPressed('chad') )
cmds.showWindow()


# Callback objects
win = cmds.window(title="My Window")
layout = cmds.columnLayout()
names = [ 'chad', 'robert', 'james' ]
for name in names:
    """ Lambda won't work inside a loop.  We could use Callback if we switch 
    over to PyMel for a moment.  I realize this is a Python class
    but it is neat to get a taste of PyMel. """
    pm.button( label=name, command = Callback( buttonPressed, name ) )
cmds.showWindow()


def tkFollicleAdjustUI(*args):
    ver = 0.1
    colSilverDark = [0.08, 0.09, 0.10]
    colSilverMid = [0.23, 0.23, 0.23]
    colSilverLight = [0.39, 0.46, 0.50]
    colRed = [0.46, 0.39, 0.39]
    colGreen = [0.39, 0.46, 0.39]
    windowStartHeight = 50
    windowStartWidth = 450
    bh1 = 22
    if (cmds.window('win_tkFollicleAdjust', exists=1)):
        cmds.deleteUI('win_tkFollicleAdjust')
    myWindow = cmds.window('win_tkFollicleAdjust',
                           t=('tkFollicleAdjust ' + str(ver)),
                           s=1)

    cmds.columnLayout(adj=1,
                      bgc=(colSilverMid[0], colSilverMid[1], colSilverMid[2]))
    cmds.frameLayout('flFollicleAttributes',
                     l='Follicle Attributes',
                     bgc=(colSilverMid[0], colSilverMid[1], colSilverMid[2]),
                     cll=1,
                     cl=0,
                     cc=partial(cShrinkWin, "win_tkFollicleAdjust"))

    cmds.rowColumnLayout(bgc=(colSilverMid[0], colSilverMid[1],
                              colSilverMid[2]),
                         nc=4,
                         cw=[(1, 60), (2, 180), (3, 60), (4, 60)])

    cmds.button(l='Read All',
                h=bh1,
                c=partial(tkGetAllFolAttrib),
                bgc=(colGreen[0], colGreen[1], colGreen[2]))
    cmds.text(' ')
    cmds.button(l='Default', h=bh1, c=partial(tkDefaultAllFolAttrib))
    cmds.button(l='Set All',
                h=bh1,
                c=partial(tkSetAllFolAttrib),
                bgc=(colRed[0], colRed[1], colRed[2]))

    cmds.setParent('..')
    cmds.separator(bgc=(colSilverDark[0], colSilverDark[1], colSilverDark[2]))
    cmds.rowColumnLayout(bgc=(colSilverMid[0], colSilverMid[1],
                              colSilverMid[2]),
                         nc=4,
                         cw=[(1, 60), (2, 180), (3, 60), (4, 60)])

    cmds.button(l='Read',
                h=bh1,
                c=partial(tkGetFolAttrib, 'overrideDynamics'),
                bgc=(colGreen[0], colGreen[1], colGreen[2]))
    cmds.textField('overrideDynamics', tx='overrideDynamics', ed=0)
    cmds.checkBox('overrideDynamics', l='on')
    cmds.button(l='Set Values',
                h=bh1,
                c=partial(tkSetFolAttrib, 'overrideDynamics'),
                bgc=(colRed[0], colRed[1], colRed[2]))

    cmds.button(l='Read',
                h=bh1,
                c=partial(tkGetFolAttrib, 'stiffness'),
                bgc=(colGreen[0], colGreen[1], colGreen[2]))
    cmds.textField('stiffness', tx='stiffness', ed=0)
    cmds.floatField('stiffness', min=0, max=1, h=bh1, ed=1, bgc=(0, 0, 0))
    cmds.button(l='Set Values',
                h=bh1,
                c=partial(tkSetFolAttrib, 'stiffness'),
                bgc=(colRed[0], colRed[1], colRed[2]))

    cmds.button(l='Read',
                h=bh1,
                c=partial(tkGetFolAttrib, 'damp'),
                bgc=(colGreen[0], colGreen[1], colGreen[2]))
    cmds.textField('damp', tx='damp', ed=0)
    cmds.floatField('damp', min=0, h=bh1, ed=1, bgc=(0, 0, 0))
    cmds.button(l='Set Values',
                h=bh1,
                c=partial(tkSetFolAttrib, 'damp'),
                bgc=(colRed[0], colRed[1], colRed[2]))

    cmds.button(l='Read',
                h=bh1,
                c=partial(tkGetFolAttrib, 'clumpWidth'),
                bgc=(colGreen[0], colGreen[1], colGreen[2]))
    cmds.textField('clumpWidth', tx='clumpWidth', ed=0)
    cmds.floatField('clumpWidth', h=bh1, ed=1, bgc=(0, 0, 0))
    cmds.button(l='Set Values',
                h=bh1,
                c=partial(tkSetFolAttrib, 'clumpWidth'),
                bgc=(colRed[0], colRed[1], colRed[2]))

    cmds.button(l='Read',
                h=bh1,
                c=partial(tkGetFolAttrib, 'clumpWidthMult'),
                bgc=(colGreen[0], colGreen[1], colGreen[2]))
    cmds.textField('clumpWidthMult', tx='clumpWidthMult', ed=0)
    cmds.floatField('clumpWidthMult', h=bh1, ed=1, bgc=(0, 0, 0))
    cmds.button(l='Set Values',
                h=bh1,
                c=partial(tkSetFolAttrib, 'clumpWidthMult'),
                bgc=(colRed[0], colRed[1], colRed[2]))

    cmds.button(l='Read',
                h=bh1,
                c=partial(tkGetFolAttrib, 'densityMult'),
                bgc=(colGreen[0], colGreen[1], colGreen[2]))
    cmds.textField('densityMult', tx='densityMult', ed=0)
    cmds.floatField('densityMult', h=bh1, ed=1, bgc=(0, 0, 0))
    cmds.button(l='Set Values',
                h=bh1,
                c=partial(tkSetFolAttrib, 'densityMult'),
                bgc=(colRed[0], colRed[1], colRed[2]))

    cmds.button(l='Read',
                h=bh1,
                c=partial(tkGetFolAttrib, 'curlMult'),
                bgc=(colGreen[0], colGreen[1], colGreen[2]))
    cmds.textField('curlMult', tx='curlMult', ed=0)
    cmds.floatField('curlMult', h=bh1, ed=1, bgc=(0, 0, 0))
    cmds.button(l='Set Values',
                h=bh1,
                c=partial(tkSetFolAttrib, 'curlMult'),
                bgc=(colRed[0], colRed[1], colRed[2]))

    cmds.setParent('..')

    cmds.showWindow(myWindow)
Esempio n. 36
0
def createWindow():
    if cmds.window('MeshLightSetter',ex=True):
        cmds.deleteUI('MeshLightSetter')

    cmds.window('MeshLightSetter',t='MeshLight Setter',w=600,h=800)
    cmds.rowLayout(nc=2)
    cmds.frameLayout(l='aiTranslatorAttributes',w=450)
    cmds.formLayout('MeshLight_FormLayout')
    f1 = cmds.optionMenu('MeshLight_aiTranslator')
    cmds.menuItem(l='polymesh',p='MeshLight_aiTranslator')
    cmds.menuItem(l='mesh_light',p='MeshLight_aiTranslator')
    cmds.menuItem(l='procedural',p='MeshLight_aiTranslator')
    f2 = cmds.colorSliderGrp('MeshLight_aiColor',l='Color')
    f3 = cmds.floatFieldGrp('MeshLight_aiIntensity',l='Intensity')
    f4 = cmds.floatSliderGrp('MeshLight_aiExposure',l='Exposure',field=True)
    f5 = cmds.checkBox('MeshLight_aiUseTemp',l='Use Temperature')
    f6 = cmds.floatSliderGrp('MeshLight_aiTemperature',l='Temperature',minValue=0.0,maxValue=20000.0,field=True)
    f7 = cmds.checkBox('MeshLight_aiVisible',l='Light Visible')
    f8 = cmds.intFieldGrp('MeshLight_aiSample',l='Sample')
    f9 = cmds.checkBox('MeshLight_aiNormalize',l='Normalize')
    f10 = cmds.checkBox('MeshLight_aiCastShadows',l='Cast Shadows')
    f11 = cmds.floatSliderGrp('MeshLight_aiShadowDensity',l='ShadowDensity',minValue=0.0,maxValue=1.0,field=True)
    f12 = cmds.colorSliderGrp('MeshLight_aiShadowColor',l='Shadow Color')
    f13 = cmds.checkBox('MeshLight_aiCastVolumeShadow',l='Cast Volumeric Shadow')
    f14 = cmds.intFieldGrp('MeshLight_aiVolumeSample',l='Volume Sample')
    f15 = cmds.textFieldGrp('MeshLight_aiAov',l='AOV Group')
    f16 = cmds.rowLayout(nc=2)
    f17 = cmds.button(l='List LightGroup',c=lambda *args:refreshLightGroupMenu(),w=98)
    f18 = cmds.button(l='Set LightGroup',c=lambda *args:setLightGroupFromMenu(),w=98)
    cmds.setParent(u=True)
    f19 = cmds.textScrollList('MeshLight_LightGroupList',w=200,h=372)
    cmds.formLayout('MeshLight_FormLayout',e=True,af = [(f1,'top',0),(f1,'left',140),
                                                        (f2,'top',22),(f2,'left',0),
                                                        (f3,'top',44),(f3,'left',0),
                                                        (f4,'top',66),(f4,'left',0),
                                                        (f5,'top',88),(f5,'left',130),
                                                        (f6,'top',110),(f6,'left',0),
                                                        (f7,'top',132),(f7,'left',130),
                                                        (f8,'top',154),(f8,'left',0),
                                                        (f9,'top',176),(f9,'left',130),
                                                        (f10,'top',198),(f10,'left',130),
                                                        (f11,'top',220),(f11,'left',0),
                                                        (f12,'top',242),(f12,'left',0),
                                                        (f13,'top',264),(f13,'left',130),
                                                        (f14,'top',286),(f14,'left',0),
                                                        (f15,'top',308),(f15,'left',0),
                                                        (f16,'top',333),(f16,'left',130),
                                                        (f19,'top',360),(f19,'left',130)
                                                        ])
    
    
    cmds.setParent(u=True)
    cmds.setParent(u=True)
    cmds.frameLayout(l='Mesh Light List')
    cmds.rowLayout(nc=5)
    cmds.button(l='ALL MESH light',c=lambda *args:lightListRefresh(True))
    cmds.button(l='Sel MESH Light',c=lambda *args:lightListRefresh(False))
    cmds.textFieldGrp('MeshLight_Template',l='Template')
    cmds.button(l='Set Template',c=lambda *args:cmds.textFieldGrp('MeshLight_Template',e=True,tx=cmds.ls(sl=True,dag=True,ni=True,type='mesh')[0]))
    cmds.button(l='Convert!',c=lambda *args:convertMeshToMeshLight())
    cmds.setParent(u=True)
    
    cmds.textScrollList('MeshLightList',w=600,h=700,ams=True)
    cmds.setParent(u=True)

    cmds.popupMenu('MeshLightListMenu',p='MeshLightList')
    cmds.menuItem(l='Select...',p='MeshLightListMenu',c=lambda *args:cmds.select([item for item in cmds.textScrollList('MeshLightList',q=True,si=True)]))

    cmds.showWindow('MeshLightSetter')

    cmds.textScrollList('MeshLightList',e=True,dcc=lambda *args:cmds.select(cmds.textScrollList('MeshLightList',q=True,si=True),r=True))
    cmds.textScrollList('MeshLightList',e=True,sc=lambda *args:getMeshLightAttrsAndShow())
    cmds.textScrollList('MeshLight_LightGroupList',e=True,dcc=lambda *args:selectLightByGroupName())
    cmds.optionMenu(f1,e=True,cc=lambda *args:setMeshLightAttrsAndShow('translator'))
    cmds.colorSliderGrp(f2,e=True,cc=lambda *args:setMeshLightAttrsAndShow('color'))
    cmds.floatFieldGrp(f3,e=True,cc=lambda *args:setMeshLightAttrsAndShow('intensity'))
    cmds.floatSliderGrp(f4,e=True,cc=lambda *args:setMeshLightAttrsAndShow('exposure'))
    cmds.checkBox(f5,e=True,cc=lambda *args:setMeshLightAttrsAndShow('useTemp'))
    cmds.floatSliderGrp(f6,e=True,cc=lambda *args:setMeshLightAttrsAndShow('temp'))
    cmds.checkBox(f7,e=True,cc=lambda *args:setMeshLightAttrsAndShow('visible'))
    cmds.intFieldGrp(f8,e=True,cc=lambda *args:setMeshLightAttrsAndShow('sample'))
    cmds.checkBox(f9,e=True,cc=lambda *args:setMeshLightAttrsAndShow('normalize'))
    cmds.checkBox(f10,e=True,cc=lambda *args:setMeshLightAttrsAndShow('castShadows'))
    cmds.floatSliderGrp(f11,e=True,cc=lambda *args:setMeshLightAttrsAndShow('shadowDensity'))
    cmds.colorSliderGrp(f12,e=True,cc=lambda *args:setMeshLightAttrsAndShow('shadowColor'))
    cmds.checkBox(f13,e=True,cc=lambda *args:setMeshLightAttrsAndShow('castVolumeShadow'))
    cmds.intFieldGrp(f14,e=True,cc=lambda *args:setMeshLightAttrsAndShow('volumeSample'))
    cmds.textFieldGrp(f15,e=True,cc=lambda *args:setMeshLightAttrsAndShow('aiAov'))
Esempio n. 37
0
def snapToMeshUI():
	'''
	UI for snapToMesh()
	'''
	# Window
	window = 'snapToMeshUI'
	if mc.window(window,q=True,ex=1): mc.deleteUI(window)
	window = mc.window(window,t='Snap To Mesh')

	# Layout
	FL = mc.formLayout(numberOfDivisions=100)

	# UI Elements
	#---

	# Mesh
	meshTFB = mc.textFieldButtonGrp('snapToMeshTFB',label='Target Mesh',text='',buttonLabel='Load Selected')

	# Orient
	orientCBG = mc.checkBoxGrp('snapToMeshOrientCBG',label='Orient To Face',ncb=1,v1=False)

	# ----------
	# - Orient -
	# ----------

	# Orient Frame
	orientFrameL = mc.frameLayout('snapToMeshOriFL',l='Orient Options',cll=0,en=0)
	orientFormL = mc.formLayout(numberOfDivisions=100)

	# OptionMenuGrp
	axList = ['X','Y','Z','-X','-Y','-Z']
	orientNormAxisOMG = mc.optionMenuGrp('snapToMeshNormOMG',label='Normal Axis',en=False)
	for ax in axList: mc.menuItem(label=ax)
	orientUpVecAxisOMG = mc.optionMenuGrp('snapToMeshUpVecOMG',label='UpVector Axis',en=False)
	for ax in axList: mc.menuItem(label=ax)
	# Set Default Value
	mc.optionMenuGrp('snapToMeshUpVecOMG',e=True,sl=2)

	# Up Vector
	upVectorFFG = mc.floatFieldGrp('snapToMeshUpVecFFG',label='UpVector',nf=3,v1=0,v2=1,v3=0,en=0)
	upVectorObjectTFB = mc.textFieldButtonGrp('snapToMeshUpVecObjTFG',label='WorldUpObject',text='',buttonLabel='Load Selected',en=0)

	mc.setParent('..')
	mc.setParent('..')

	# UI callback commands
	mc.textFieldButtonGrp(meshTFB,e=True,bc='glTools.ui.utils.loadMeshSel("'+meshTFB+'")')
	mc.checkBoxGrp(orientCBG,e=True,cc='glTools.ui.utils.checkBoxToggleLayout("'+orientCBG+'","'+orientFrameL+'")')
	mc.textFieldButtonGrp(upVectorObjectTFB,e=True,bc='glTools.ui.utils.loadObjectSel("'+upVectorObjectTFB+'")')

	# Buttons
	snapB = mc.button('snapToMeshSnapB',l='Snap!',c='glTools.ui.mesh.snapToMeshFromUI(False)')
	snapCloseB = mc.button('snapToMeshSnapCloseB',l='Snap and Close',c='glTools.ui.mesh.snapToMeshFromUI(True)')
	cancelB = mc.button('snapToMeshCancelB',l='Cancel',c='mc.deleteUI("'+window+'")')

	# Form Layout - MAIN
	mc.formLayout(FL,e=True,af=[(meshTFB,'top',5),(meshTFB,'left',5),(meshTFB,'right',5)])
	mc.formLayout(FL,e=True,ac=[(orientCBG,'top',5,meshTFB)],af=[(orientCBG,'left',5),(orientCBG,'right',5)])
	mc.formLayout(FL,e=True,ac=[(orientFrameL,'top',5,orientCBG),(orientFrameL,'bottom',5,snapB)],af=[(orientFrameL,'left',5),(orientFrameL,'right',5)])
	mc.formLayout(FL,e=True,ac=[(snapB,'bottom',5,snapCloseB)],af=[(snapB,'left',5),(snapB,'right',5)])
	mc.formLayout(FL,e=True,ac=[(snapCloseB,'bottom',5,cancelB)],af=[(snapCloseB,'left',5),(snapCloseB,'right',5)])
	mc.formLayout(FL,e=True,af=[(cancelB,'left',5),(cancelB,'right',5),(cancelB,'bottom',5)])

	# Form Layout - Orient
	mc.formLayout(orientFormL,e=True,af=[(orientNormAxisOMG,'top',5),(orientNormAxisOMG,'left',5),(orientNormAxisOMG,'right',5)])
	mc.formLayout(orientFormL,e=True,ac=[(orientUpVecAxisOMG,'top',5,orientNormAxisOMG)])
	mc.formLayout(orientFormL,e=True,af=[(orientUpVecAxisOMG,'left',5),(orientUpVecAxisOMG,'right',5)])

	mc.formLayout(orientFormL,e=True,ac=[(upVectorFFG,'top',5,orientUpVecAxisOMG)])
	mc.formLayout(orientFormL,e=True,af=[(upVectorFFG,'left',5),(upVectorFFG,'right',5)])

	mc.formLayout(orientFormL,e=True,ac=[(upVectorObjectTFB,'top',5,upVectorFFG)])
	mc.formLayout(orientFormL,e=True,af=[(upVectorObjectTFB,'left',5),(upVectorObjectTFB,'right',5)])

	# Show Window
	mc.showWindow(window)
Esempio n. 38
0
def showUI():
    """Build and show the main installer window.
    """
    deleteExistingWindow(EULA_WIN)
    deleteExistingWindow(INSTALL_WIN)

    cmds.window(INSTALL_WIN,
                title="Install {}".format(MODULE_NAME),
                width=550,
                sizeable=False,
                resizeToFitChildren=True)

    layout = cmds.rowColumnLayout()

    showLogo()

    # ------------------------------------------------------------------
    # paths
    # ------------------------------------------------------------------

    cmds.frameLayout(label="Paths",
                     width=550,
                     collapsable=False,
                     collapse=False,
                     marginWidth=5,
                     marginHeight=5)
    cmds.columnLayout(columnAlign="left", adjustableColumn=True)
    cmds.separator(style="none", height=5)
    cmds.text(INFO_TEXT, label="", align="center")
    cmds.separator(style="none", height=15)
    cmds.textFieldButtonGrp(CONTENT_PATH_FIELD,
                            label="Install Path",
                            buttonLabel="Select",
                            columnAttach3=("left", "both", "right"),
                            columnWidth3=(80, 405, 55),
                            columnOffset3=(5, 0, 5),
                            buttonCommand=selectContentPath)
    addFieldComment(
        "The path where all files of the module{} will be installed.".format(
            multiSuffix()))
    cmds.separator(style="none", height=5)
    cmds.textFieldButtonGrp(MODULE_PATH_FIELD,
                            label="Module Path",
                            buttonLabel="Select",
                            columnAttach3=("left", "both", "right"),
                            columnWidth3=(80, 405, 55),
                            columnOffset3=(5, 0, 5),
                            buttonCommand=selectModulePath)
    addFieldComment("The path where the {}.mod file{} will be saved.".format(
        MODULE_NAME, multiSuffix()))
    cmds.setParent(layout)

    cmds.separator(style="none", height=10)

    # ------------------------------------------------------------------
    # progress
    # ------------------------------------------------------------------

    cmds.frameLayout(label="Progress",
                     width=550,
                     collapsable=False,
                     collapse=False,
                     marginWidth=5,
                     marginHeight=5)
    cmds.columnLayout(columnAlign="left")
    cmds.textScrollList(PROGRESS_LIST, width=537, height=120)
    cmds.setParent(layout)

    cmds.separator(style="none", height=10)

    # ------------------------------------------------------------------
    # buttons
    # ------------------------------------------------------------------

    form = cmds.formLayout(width=550)
    cmds.button(INSTALL_BUTTON,
                label="Install",
                width=150,
                height=30,
                command=performInstallation)
    cmds.button(UNINSTALL_BUTTON,
                label="Uninstall",
                width=150,
                height=30,
                command=performUninstall)
    cmds.button(HELP_BUTTON,
                label="Help",
                width=60,
                height=30,
                command=openHelp,
                enable=helpExists())
    cmds.button(MODULE_BUTTON,
                label="Create .mod file{} only".format(multiSuffix()),
                width=150,
                height=30,
                command=performBuildModuleFiles)
    cmds.formLayout(form,
                    edit=True,
                    attachForm=[(INSTALL_BUTTON, "left", 0),
                                (INSTALL_BUTTON, "bottom", 0),
                                (UNINSTALL_BUTTON, "bottom", 0),
                                (MODULE_BUTTON, "bottom", 0),
                                (HELP_BUTTON, "right", 0),
                                (HELP_BUTTON, "bottom", 0)],
                    attachControl=[
                        (UNINSTALL_BUTTON, "left", 5, INSTALL_BUTTON),
                        (MODULE_BUTTON, "left", 5, UNINSTALL_BUTTON)
                    ],
                    attachNone=[(HELP_BUTTON, "left")])
    cmds.setParent(layout)

    cmds.showWindow(INSTALL_WIN)
Esempio n. 39
0
 def show(self):
     """
     Opens the window.
     """
     mc.showWindow(self.name)
Esempio n. 40
0
def attrUI(*args):
    """UI for the script"""

    if cmds.window("attrWin", exists=True):
        cmds.deleteUI("attrWin")

    widgets["win"] = cmds.window("attrWin",
                                 t="zbw_attributes",
                                 h=370,
                                 w=250,
                                 s=True)
    widgets["tabLO"] = cmds.tabLayout()
    widgets["channelColLO"] = cmds.columnLayout("Object/Attr Controls",
                                                w=250,
                                                bgc=(.8, .8, .8))

    widgets["lockFrLO"] = cmds.frameLayout(l="Lock/Hide",
                                           cll=True,
                                           w=250,
                                           bgc=(.7, .6, .6))
    widgets["lockColLO"] = cmds.columnLayout(bgc=(.8, .8, .8))
    #lock and hide controls

    #switch to Row column layout to break up the channels
    widgets["attrRCLO"] = cmds.rowColumnLayout(nc=2, cw=([1, 100], [2, 150]))
    widgets["transCB"] = cmds.checkBox(l="Translates",
                                       v=0,
                                       cc=partial(enableChannel, "transCB",
                                                  "translateCBG"))
    widgets["translateCBG"] = cmds.checkBoxGrp(w=150,
                                               cw3=(50, 50, 50),
                                               ncb=3,
                                               l1="TX",
                                               l2="TY",
                                               l3="TZ",
                                               l4="Vis",
                                               va3=(0, 0, 0),
                                               bgc=(.5, .5, .5),
                                               en=False)
    widgets["rotCB"] = cmds.checkBox(l="Rotates",
                                     v=0,
                                     cc=partial(enableChannel, "rotCB",
                                                "rotateCBG"))
    widgets["rotateCBG"] = cmds.checkBoxGrp(w=150,
                                            cw3=(50, 50, 50),
                                            ncb=3,
                                            l1="RX",
                                            l2="RY",
                                            l3="RZ",
                                            l4="Vis",
                                            va3=(0, 0, 0),
                                            bgc=(.5, .5, .5),
                                            en=False)
    widgets["scaleCB"] = cmds.checkBox(l="Scales",
                                       v=1,
                                       cc=partial(enableChannel, "scaleCB",
                                                  "scaleCBG"))
    widgets["scaleCBG"] = cmds.checkBoxGrp(w=150,
                                           cw3=(50, 50, 50),
                                           ncb=3,
                                           l1="SX",
                                           l2="SY",
                                           l3="SZ",
                                           l4="Vis",
                                           va3=(1, 1, 1),
                                           bgc=(.5, .5, .5),
                                           en=True)
    widgets["visCB"] = cmds.checkBox(l="Visibility", v=1)

    #back to frame layout
    cmds.setParent(widgets["lockFrLO"])
    widgets["lockRBG"] = cmds.radioButtonGrp(nrb=2,
                                             l1="Unlock",
                                             l2="Lock",
                                             sl=2)
    widgets["hideRBG"] = cmds.radioButtonGrp(nrb=2, l1="Show", l2="Hide", sl=2)
    widgets["channelsBut"] = cmds.button(l="Lock/Hide Channels",
                                         w=150,
                                         h=30,
                                         bgc=(.5, .5, .5),
                                         rs=True,
                                         c=channelLockHide)
    cmds.separator(h=5, st="none")

    #back to columnLayout
    cmds.setParent(widgets["channelColLO"])
    widgets["colorFrLO"] = cmds.frameLayout(l="Object Color",
                                            cll=True,
                                            w=250,
                                            bgc=(.7, .6, .6))
    widgets["colorRCLO"] = cmds.rowColumnLayout(nr=4, bgc=(.8, .8, .8))

    #color controls (red, green, blue, yellow, other)
    cmds.canvas(w=50,
                h=20,
                rgb=(1, 0, 0),
                pc=partial(changeColor, colors["red"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.5, .1, .1),
                pc=partial(changeColor, colors["darkRed"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.659, .275, .449),
                pc=partial(changeColor, colors["lightRed"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(1, .8, .965),
                pc=partial(changeColor, colors["pink"]))

    cmds.canvas(w=50,
                h=20,
                rgb=(0, 1, 0),
                pc=partial(changeColor, colors["green"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(0, .35, 0),
                pc=partial(changeColor, colors["darkGreen"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(0, .55, .335),
                pc=partial(changeColor, colors["medGreen"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.35, .635, .15),
                pc=partial(changeColor, colors["yellowGreen"]))

    cmds.canvas(w=50,
                h=20,
                rgb=(0, 0, 1),
                pc=partial(changeColor, colors["blue"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(0, 0, .35),
                pc=partial(changeColor, colors["darkBlue"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(0, .2, .6),
                pc=partial(changeColor, colors["medBlue"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.65, .8, 1),
                pc=partial(changeColor, colors["lightBlue"]))

    cmds.canvas(w=50,
                h=20,
                rgb=(1, 1, 0),
                pc=partial(changeColor, colors["yellow"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.225, .1, 0),
                pc=partial(changeColor, colors["darkBrown"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.5, .275, 0),
                pc=partial(changeColor, colors["brown"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.922, .707, .526),
                pc=partial(changeColor, colors["darkYellow"]))

    cmds.canvas(w=50,
                h=20,
                rgb=(.33, 0, .33),
                pc=partial(changeColor, colors["purple"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.2, 0, .25),
                pc=partial(changeColor, colors["darkPurple"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(.0, 0, .0),
                pc=partial(changeColor, colors["black"]))
    cmds.canvas(w=50,
                h=20,
                rgb=(1, 1, 1),
                pc=partial(changeColor, colors["white"]))

    #TO-DO----------------figure out breaking connections(to delete or not?), call add attr win
    # cmds.setParent(widgets["channelColLO"])
    # widgets["channelFrLO"] = cmds.frameLayout(l="Channels", cll=True, w=250, bgc=(1,1,1))
    # widgets["channelRCLO"] = cmds.columnLayout(bgc=(.8,.8,.8))
    # widgets["breakAllBut"] = cmds.button(l="Break All Connections", w=150, h=30, bgc=(.5,.5,.5))
    # widgets["breakSelBut"] = cmds.button(l="Break Selected Connections", w=150, h=30, bgc=(.5,.5,.5))
    # cmds.separator(h=10, st="none")
    # widgets["addAttBut"] = cmds.button(l="Show 'Add Attribute' win", w=150, h=30, bgc=(.5,.5,.5))

    cmds.setParent(widgets["tabLO"])
    widgets["connectColLO"] = cmds.columnLayout("Connections",
                                                w=250,
                                                bgc=(.8, .8, .8))
    widgets["connectFrame"] = cmds.frameLayout(l="Make General Connections",
                                               cll=True,
                                               bgc=(.6, .8, .6))
    widgets["connectionColLO"] = cmds.columnLayout(bgc=(.8, .8, .8))

    #connection stuff
    cmds.text("Select a source object and a channel:")
    widgets["connector"] = cmds.textFieldButtonGrp(
        l="Connector",
        w=250,
        bl="<<<",
        cal=[(1, "left"), (2, "left"), (3, "left")],
        cw3=[60, 140, 30],
        bc=partial(getChannel, "connector"))
    cmds.separator(h=5, st="none")
    cmds.text("Select a target object and channel:")
    widgets["connectee"] = cmds.textFieldButtonGrp(
        l="Connectee",
        w=250,
        bl="<<<",
        cal=[(1, "left"), (2, "left"), (3, "left")],
        cw3=[60, 140, 30],
        bc=partial(getChannel, "connectee"))
    cmds.separator(h=10, st="none")
    widgets["connectBut"] = cmds.button(l="Connect Two Channels",
                                        w=240,
                                        h=30,
                                        bgc=(.5, .5, .5),
                                        c=connectChannels)
    cmds.separator(h=5, st="none")

    cmds.setParent(widgets["connectColLO"])
    widgets["shapeFrame"] = cmds.frameLayout(l="Connect to Shape Visibility",
                                             cll=True,
                                             bgc=(.6, .8, .6))
    widgets["shapeColLO"] = cmds.columnLayout(bgc=(.8, .8, .8))

    widgets["toShapeVis"] = cmds.textFieldButtonGrp(l="Vis Driver",
                                                    w=250,
                                                    bl="<<<",
                                                    cal=[(1, "left"),
                                                         (2, "left"),
                                                         (3, "left")],
                                                    cw3=[60, 140, 30],
                                                    bc=partial(
                                                        getChannel,
                                                        "toShapeVis"))
    cmds.separator(h=5, st="none")
    cmds.text("Now select the objs to drive:")
    widgets["shapeBut"] = cmds.button(l="Connect to Shapes' vis",
                                      w=240,
                                      h=30,
                                      bgc=(.5, .5, .5),
                                      c=connectShapeVis)
    cmds.separator(h=5, st="none")

    cmds.setParent(widgets["connectColLO"])
    widgets["inoutFrame"] = cmds.frameLayout(
        l="Select Connections (and print)", cll=True, bgc=(.6, .8, .6))
    widgets["inOutColLO"] = cmds.columnLayout(bgc=(.8, .8, .8))

    widgets["conversionCB"] = cmds.checkBox(l="Skip 'conversion' nodes?", v=1)
    cmds.text("Select an attribute in the channel box:")
    widgets["getInputBut"] = cmds.button(l="Select inConnection object",
                                         w=240,
                                         h=30,
                                         bgc=(.5, .5, .5),
                                         c=getInput)
    widgets["getOutputBut"] = cmds.button(l="Select outConnection objects",
                                          w=240,
                                          h=30,
                                          bgc=(.5, .5, .5),
                                          c=getOutput)

    #show window
    cmds.showWindow(widgets["win"])
    cmds.window(widgets["win"], e=True, w=250, h=370)
Esempio n. 41
0
# Format with a seperator
cmds.separator(style='none', height=20)

# Asset options
cmds.text( label='Animation Options', align='left' )

# Format with a seperator
cmds.separator(style='in', height=15)

# Make a row for the animation frame settings
cmds.rowLayout(nc=2, columnAlign2=("left", "left"))
cmds.text( label='Start Frame            ', align='left' )
cmds.text( label='End Frame', align='left' )
cmds.setParent("..")

cmds.rowLayout(nc=2, columnAlign2=("left", "left"))
cmds.textField('startFrame')
cmds.textField('endFrame')
cmds.setParent("..")

# Format with a seperator
cmds.separator(style='in', height=20)

# Make a row for the export and cancel buttons
cmds.rowLayout(nc=2, columnAlign2=("right", "right"))
cmds.button(label="Export", width=100, backgroundColor=(.2,.4,.2), command=export)
cmds.button(label="Cancel", width=100, backgroundColor=(.4,.2,.2), command=('cmds.deleteUI(\"' + window + '\", window=True)') )
cmds.setParent("..")

cmds.showWindow( window )
Esempio n. 42
0
 def create(self, verbose=False):
     if cmds.window(self.window, exists=True):
         cmds.deleteUI(self.window)
     self.window = cmds.loadUI(uiFile=self.uiFile, verbose=verbose)
     cmds.showWindow(self.window)
Esempio n. 43
0
def parentListUI():
    '''
	UI for parentList()
	'''
    # Window
    window = 'parentListUI'
    if mc.window(window, q=True, ex=1): mc.deleteUI(window)
    window = mc.window(window, t='Parent List')

    # Layout
    fl = mc.formLayout(numberOfDivisions=100)

    # UI Elements
    childTXT = mc.text(l='Child List:', al='left')
    childTSL = mc.textScrollList('parentList_childListTSL',
                                 allowMultiSelection=True)

    parentTXT = mc.text(l='Parent List:', al='left')
    parentTSL = mc.textScrollList('parentList_parentListTSL',
                                  allowMultiSelection=True)

    parentB = mc.button(label='Parent', c='glTools.ui.base.parentListFromUI()')
    cancelB = mc.button(label='Cancel', c='mc.deleteUI("' + window + '")')

    # Layout
    mc.formLayout(fl,
                  e=True,
                  af=[(childTXT, 'left', 5), (childTXT, 'top', 5)],
                  ap=[(childTXT, 'right', 5, 50)])
    mc.formLayout(fl,
                  e=True,
                  af=[(childTSL, 'left', 5)],
                  ap=[(childTSL, 'right', 5, 50)],
                  ac=[(childTSL, 'top', 5, childTXT),
                      (childTSL, 'bottom', 5, parentB)])

    mc.formLayout(fl,
                  e=True,
                  af=[(parentTXT, 'right', 5), (parentTXT, 'top', 5)],
                  ap=[(parentTXT, 'left', 5, 50)])
    mc.formLayout(fl,
                  e=True,
                  af=[(parentTSL, 'right', 5)],
                  ap=[(parentTSL, 'left', 5, 50)],
                  ac=[(parentTSL, 'top', 5, parentTXT),
                      (parentTSL, 'bottom', 5, cancelB)])

    mc.formLayout(fl,
                  e=True,
                  af=[(parentB, 'left', 5), (parentB, 'bottom', 5)],
                  ap=[(parentB, 'right', 5, 50)])
    mc.formLayout(fl,
                  e=True,
                  af=[(cancelB, 'right', 5), (cancelB, 'bottom', 5)],
                  ap=[(cancelB, 'left', 5, 50)])

    # UI Callbacks

    mc.textScrollList(childTSL,
                      e=True,
                      dcc='glTools.ui.utils.selectFromTSL("' + childTSL + '")')
    mc.textScrollList(childTSL,
                      e=True,
                      dkc='glTools.ui.utils.removeFromTSL("' + childTSL + '")')

    mc.textScrollList(parentTSL,
                      e=True,
                      dcc='glTools.ui.utils.selectFromTSL("' + parentTSL +
                      '")')
    mc.textScrollList(parentTSL,
                      e=True,
                      dkc='glTools.ui.utils.removeFromTSL("' + parentTSL +
                      '")')

    # Popup menu

    childPUM = mc.popupMenu(parent=childTSL)
    mc.menuItem(l='Add Selected',
                c='glTools.ui.utils.addToTSL("' + childTSL + '")')
    mc.menuItem(l='Remove Selected',
                c='glTools.ui.utils.removeFromTSL("' + childTSL + '")')
    mc.menuItem(l='Clear List',
                c='mc.textScrollList("' + childTSL + '",e=True,ra=True)')
    mc.menuItem(l='Select Hilited',
                c='glTools.ui.utils.selectFromTSL("' + childTSL + '")')

    parentPUM = mc.popupMenu(parent=parentTSL)
    mc.menuItem(l='Add Selected',
                c='glTools.ui.utils.addToTSL("' + parentTSL + '")')
    mc.menuItem(l='Remove Selected',
                c='glTools.ui.utils.removeFromTSL("' + parentTSL + '")')
    mc.menuItem(l='Clear List',
                c='mc.textScrollList("' + parentTSL + '",e=True,ra=True)')
    mc.menuItem(l='Select Hilited',
                c='glTools.ui.utils.selectFromTSL("' + parentTSL + '")')

    # Display UI
    mc.showWindow(window)