Пример #1
0
		def __init__(self, name, **kwargs):
				classArgs = {"UIFile":"default.py","rerigUI":True}
				#classArgs =  dict(classArgs.items() + kwargs.items())
				classArgs =	 Util.defaultArgs( classArgs,  kwargs)
				self.Modules = {}
				self.connections = {}
				self.name = name
				self.UIFile =  classArgs["UIFile"]
				if classArgs["rerigUI"]:
					self.UI = self.initialiseUI()
Пример #2
0
    def loadModules(self,args,**kwargs):
        """ 
            Load text in list for each module available
        """
        defaultArgs = {"key": "rigList",
                        "parent": "rigScroll"}
        functArgs =  Util.defaultArgs( defaultArgs, args)
        selectCommand = ("NWRig" + ".UI.updateRigAttributes({})")
        rootContainer = ""
        iconTextScroll = ""
        moduleList = []
        
        # Overwrite select command
        kwargs["sc"] = selectCommand
        
        if self.rigInstance.rootExists():
            self.rigInstance.refreshModuleList()
            rootContainer = self.rigInstance.Modules["root"].name
        else:
            if self.elementExists(functArgs["key"]):
                return self.windowElements[functArgs["key"].fullPath]
            else:
                cmds.warning("No modules found in scene")
                return None

        # File list of modules in scene indent children
        moduleList = self.recursiveGetModules( (rootContainer + "_CNT") )
        
        # Add module list to funct args
        functArgs =  Util.defaultArgs( functArgs, {"append": moduleList} )
        
        if self.elementExists(functArgs["key"]):
            combinedArgs = Util.defaultArgs( functArgs, kwargs)
            combinedArgs.pop("key")
            iconTextScroll = self.editElement(functArgs["key"], ra= True)
            iconTextScroll = self.editElement(functArgs["key"], **combinedArgs)
        else:
            iconTextScroll = self.iconTextScrollList(functArgs, **kwargs)
        
        self.inputs[functArgs["key"]] = self.windowElements[functArgs["key"]]
        return iconTextScroll
Пример #3
0
 def updateBlueprintAttributes(self,args):
     """
         Gets selected module and lists attributes
     """
     functArgs = Util.defaultArgs({}, args )
     # Check blueprintIconScroll element exists
     if self.windowElements.has_key("blueprintAttributeframe"):
         # Load selected objects attributes
         self.loadAttributes('blueprint',args["module"])
         self.editElement("blueprintTextField",tx = args["module"])
     else:
         pass
Пример #4
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
Пример #5
0
		def refreshModuleList(self):
			"""
				Clears and refreshes module instances
			"""
			rootCnt = (self.name + "_CNT")
			rootModule = {}
			# check if module list is empty
			if len(self.Modules) == 0:
				# Find root and find it's children
				if self.rootExists():
					# populate module list
					rootModule["root"] = self.reloadModule(rootCnt)
					childModules = self.getContainerChildren(rootCnt)
					self.Modules = Util.defaultArgs( rootModule,  childModules)
				else:
					smds.error("Root containter not found for refresh")
Пример #6
0
		def rigModule(self,args):
			"""
				Run rig method for module
			"""
			# get module name
			defaultArgs = {"name":"default"}
			functArgs =	 Util.defaultArgs( defaultArgs,	 args)
			name = functArgs["name"]
			
			# Check that root is built
			if self.rootExists() == False:
				cmds.error("Root container not found during rig")
			self.refreshModuleList()
			
			# check module exists and rig has not been run
			if Util.moduleExists(name) and self.checkMethod(name, "rig"):
				mod = self.Modules[name]
				mod.rig()
			else:
				print ("Module \"" + name + "\" already built!")