Пример #1
0
 def connectOutputToInput(self):
     """
         Gets input and outputs from GUI and will connect them
     """
     type = "trans"
     connectInputIconTextScroll = "connectInputIconTextScroll"
     connectOutputIconTextScroll = "connectOutputIconTextScroll"
     connectionKey = ""
     # get Input
     inputKey = Util.getFirst(self.queryInput(connectInputIconTextScroll))
     # get Output
     outputKey = Util.getFirst(self.queryInput(connectOutputIconTextScroll))
     
     connectionKey = (outputKey + "_" + inputKey)
     
     # get Modules
     inputModule = self.queryElement("connectInputButton")
     outputModule = self.queryElement("connectOutputButton")
     
     # get input / output objects
     inputObj = self.rigInstance.getInput(inputModule, inputKey)
     outputObj = self.rigInstance.getOutput(outputModule, outputKey)
     
     inputPlug = (inputModule + "." + inputKey)
     outputPlug = (outputModule + "." + outputKey)
     
     # perform connection based on type
     self.rigInstance.Modules[inputModule].storeConnection(connectionKey, inputPlug, outputPlug , type)
     self.rigInstance.createConnection( inputModule , connectionKey )
Пример #2
0
 def updateInputOutputs(self):
     """
         finds attributes on module with "input_" & "output_" prefix then populates dicts
     """
     
     # Get input attrs
     inputsAttrs = cmds.listAttr( self.container, st='input_*')
     # Get output attrs
     outputsAttrs = cmds.listAttr( self.container, st='output_*')
     
     if inputsAttrs:
         for attr in inputsAttrs:
             # get attr key
             key = Util.getSuffix(attr)
             if key != "data":
                 # get connected obj
                 objs = Util.getConnectedObjects( (self.container + "." + attr) )
                 # store obj
                 self.inputs[key] = Util.getFirst(objs)
                     
     if outputsAttrs:
         for attr in outputsAttrs:
             # get attr key
             key = Util.getSuffix(attr)
             if key != "data":
                 # get connected obj
                 objs = Util.getConnectedObjects( (self.container + "." + attr) )
                 # store obj
                 self.outputs[key] = Util.getFirst(objs)
Пример #3
0
 def deleteModule(self):
     """
         Deletes module
     """
     if self.elementExists("rigList") == False:
         cmds.warning("No modules found in scene")
         return None
     
     selectedModule = Util.getFirst(self.queryInput("rigList"))
     selectedModule = String.removeSuffix(selectedModule.strip())
     self.rigInstance.deleteModule(selectedModule)
     self.loadModules({})
Пример #4
0
 def renameModule(self):
     """
         Will rename current module
     """
     if self.elementExists("rigList") == False:
         cmds.warning("No modules found in scene")
         return None
     
     selectedModule = Util.getFirst(self.queryInput("rigList"))
     selectedModule = String.removeSuffix(selectedModule.strip())
     self.createValueWindow("Enter new module name", "default","NWRig.renameModule(\""+selectedModule+"\", %)")
     self.loadModules({})
Пример #5
0
 def mirrorBlueprint(self):
     """
         duplciates blueprint
     """
     if self.elementExists("rigList") == False:
         cmds.warning("No modules found in scene")
         return None
         
     selectedModule =self.queryInput("rigList")
     if not selectedModule:
         cmds.error("Select module to duplicate in rig menu.")
     selectedModule = Util.getFirst(selectedModule)
     selectedModule = String.removeSuffix(selectedModule.strip())
     self.createValueWindow("Enter new module name", "default","NWRig.mirrorModule(\""+selectedModule+"\", %, 'x')")
     self.loadModules({})
Пример #6
0
 def updateRigAttributes(self,args):
     """
         Gets selected module and lists attributes
     """
     functArgs = Util.defaultArgs({}, args )
     # Check rigIconScroll element exists
     if self.inputs.has_key("rigList"):
         selectedModule = self.queryInput("rigList")
         if selectedModule:
             # Get selected element
             selectedModule = Util.getFirst(selectedModule)
             # Load selected objects attributes
             self.loadAttributes('rig',selectedModule.strip())
     else:
         pass
Пример #7
0
 def rigModules(self,args):
     """
         Get selected modules and rig them recersively
     """
     moduleList= []
     
     if self.elementExists("rigList") == False:
         cmds.warning("No modules found in scene")
         return None
     
     selectedModule = Util.getFirst(self.queryInput("rigList"))
     selectedModule = selectedModule.strip()
     moduleList = self.recursiveGetModules(selectedModule)
     
     for module in moduleList:
         moduleName = Util.removeSuffix(module)
         moduleName = moduleName.strip()
         self.rigInstance.rigModule({"name": moduleName})
     # Load rig data
     self.rigInstance.loadRigData()