1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| import tween import Gear from maya import cmds class BaseWindow(object): windowName = "BaseWindow" def show(self): if cmds.window(self.windowName, query = True, exists = True): cmds.deleteUI(self.windowName) cmds.window(self.windowName) self.buildUI() cmds.showWindow() def buildUI(self): pass def reset(self,*args): pass def close(self,*args): cmds.deleteUI(self.windowName) class TweenerUI(BaseWindow): windowName = "TweenerWindow" def buildUI(self): column = cmds.colunmLayout() cmds.text(label = "Use this slider to set the tween amout") row = cmds.rowLayout(numberOfColumns = 2) self.slider = cmds.floatSlider(min = 0, max = 100, value = 50,step = 1,changeCommand = tween) cmds.button(labe = "Reset",command = self.reset) cmds.setParent(column) cmds.button(label = "Close", command = self.close) def reset(self,*args): print("resetting UI") cmds.floatSlider(self.slider, edit = True, value = 50) class GearUI(BaseWindow): windowName = "GearWindow" def __init__(self): self.gear = None def buildUI(self): column = cmds.columnLayout() cmds.text(label = "Use the silider to modify the gear") cmds.rowLayout(numberOfColumns = 4) self.label = cmds.text(label = "10") self.slider = cmds.intSlider(min = 5, max = 30, value = 10,step = 1, dragCommand = self.modifyGear) cmds.button(label = "Make Gear", command = self.makeGear) cmds.button(label = "Reset",command = self.reset) cmds.setParent(column) cmds.button(label = "Close",command = self.close) def makeGear(self,*args): teeth = cmds.intSlider(self.slider,query = True, value = True) self.gear = Gear() self.gear.createGear(teeth = teeth) def modifyGear(self,teeth): if self.gear: self.gear.changeTeeth(teeth = teeth) cmds.text(self.label,edit = True, label = teeth def reset(self,*args): self.gear = None cmds.intSlider(self.slider,edit = True,value = 10) cmds.text(self.label,eidt = True,label = '10') GearUI().show()
|