Пример #1
0
 def build(self):
     
     self.visGuides[0].v.set(0)
     
     #vis cc
     self.visGuidePos = [x.getTranslation(space = 'world') for x in self.visGuides]
     self.visCtrl = control.Control(self.side,'visibility',self.size) 
     self.visCtrl.visCtrl()
     pm.move(self.visCtrl.controlGrp,self.visGuidePos[0])
     control.addFloatAttr(self.visCtrl.control,
                          ['spine_fk_vis','finger_ctrl_vis','facial_mouth_sec_vis','facial_panel'],0,1)
     pm.setAttr(self.visCtrl.control.spine_fk_vis,e = 1,cb = True)
     pm.setAttr(self.visCtrl.control.finger_ctrl_vis,e = 1,cb = True)
     pm.setAttr(self.visCtrl.control.facial_mouth_sec_vis,e = 1,cb = True)
     pm.setAttr(self.visCtrl.control.facial_panel,e = 1,cb = True)
     
     #build grp
     self.ALL = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'ALL')) 
     self.TRS = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'TRS')) 
     self.PP = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'PP')) 
     self.SKL = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'SKL')) 
     self.CC = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'CC')) 
     self.IK = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'IK')) 
     self.LOC = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'LOC')) 
     self.GEO = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'GEO')) 
     self.XTR = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'XTR')) 
     self.CSG = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'CSG'))
     self.GUD = pm.group(empty = 1,n = nameUtils.getHierachyName(self.characterName,'GUD'))
     
     #set ctrl
     #set cog
     self.cogCtrl = control.Control(side = 'm',baseName = self.characterName ,size = self.size,aimAxis = 'y')
     self.cogCtrl.circleCtrl()
     self.cogCtrl.controlGrp.setParent(self.ALL)        
     
     #set grp 
     self.TRS.setParent(self.cogCtrl.control)
     self.PP.setParent(self.TRS)
     self.CSG.setParent(self.TRS)
     self.SKL.setParent(self.PP)
     self.CC.setParent(self.PP)
     self.IK.setParent(self.PP)
     self.LOC.setParent(self.PP)
     self.GEO.setParent(self.ALL)
     self.XTR.setParent(self.ALL)
     self.GUD.setParent(self.ALL)
     
     #clean up
     self.__cleanUp()
Пример #2
0
    def __bodyCtrl(self):
         
        self.bodyCtrl = control.Control(self.side,self.baseName + 'Main',size = self.bodySize * 1.25,aimAxis = self.ctrlAxis) 
        self.bodyCtrl.circleCtrl()
        
        #move the target object
#         midPos = self.fkGuides[(self.segment - 1) / 2].getTranslation(space = 'world')
#         pm.move(midPos[0],midPos[1],midPos[2] - self.length / 1.5,self.bodyCtrl.controlGrp,a=True)
        
        endPos = self.fkGuides[0].getTranslation(space = 'world')
        pm.move(endPos[0],endPos[1],endPos[2],self.bodyCtrl.controlGrp,a=True)
        
        #lock and hide
        control.lockAndHideAttr(self.bodyCtrl.control,['sx','sy','sz','v'])
        
        #add attr
        control.addFloatAttr(self.bodyCtrl.control,['volume'],0,1)
        control.addFloatAttr(self.bodyCtrl.control,['ik_vis'],0,1)
        self.bodyCtrl.control.ik_vis.set(1)
        
        #bend
        pm.addAttr(self.bodyCtrl.control,ln = '______',at = 'enum',en = '0')
        pm.setAttr(self.bodyCtrl.control + '.______',e = 1,channelBox = 1)
        control.addFloatAttr(self.bodyCtrl.control,
                             ['bend_up','bend_mid','bend_lo'],-3600,3600)

        pm.addAttr(self.bodyCtrl.control,ln = '_______',at = 'enum',en = '0')
        pm.setAttr(self.bodyCtrl.control + '._______',e = 1,channelBox = 1)
        control.addFloatAttr(self.bodyCtrl.control,
                             ['bend_up_rev','bend_mid_rev','bend_lo_rev'],-3600,3600)
        
        #side
        pm.addAttr(self.bodyCtrl.control,ln = '__________',at = 'enum',en = '0')
        pm.setAttr(self.bodyCtrl.control + '.__________',e = 1,channelBox = 1)
        control.addFloatAttr(self.bodyCtrl.control,
                             ['side_up','side_mid','side_lo'],-3600,3600)

        pm.addAttr(self.bodyCtrl.control,ln = '___________',at = 'enum',en = '0')
        pm.setAttr(self.bodyCtrl.control + '.___________',e = 1,channelBox = 1)
        control.addFloatAttr(self.bodyCtrl.control,
                             ['side_up_rev','side_mid_rev','side_lo_rev'],-3600,3600)               
        
        #twist
        pm.addAttr(self.bodyCtrl.control,ln = '________',at = 'enum',en = '0')
        pm.setAttr(self.bodyCtrl.control + '.________',e = 1,channelBox = 1)
        control.addFloatAttr(self.bodyCtrl.control,
                             ['twist_up','twist_mid','twist_lo'],-3600,3600)

        pm.addAttr(self.bodyCtrl.control,ln = '_________',at = 'enum',en = '0')
        pm.setAttr(self.bodyCtrl.control + '._________',e = 1,channelBox = 1)
        control.addFloatAttr(self.bodyCtrl.control,
                             ['twist_up_rev','twist_mid_rev','twist_lo_rev'],-3600,3600)