Esempio n. 1
0
def gear_Interpose_Execute():

    if not xsi.Selection.Count:
        gear.log("No selection", gear.sev_error)
        return

    out = xsi.Selection(0)

    ref_A = uit.pickSession(c.siGenericObjectFilter, "Pick Reference A", True)
    if not ref_A:
        return

    ref_B = uit.pickSession(c.siGenericObjectFilter, "Pick Reference B", True)
    if not ref_B:
        return

    op = aop.sn_interpose_op(out, ref_A, ref_B)

    xsi.InspectObj(op)
Esempio n. 2
0
def gear_Interpose_Execute():

    if not xsi.Selection.Count:
        gear.log("No selection", gear.sev_error)
        return

    out = xsi.Selection(0)

    ref_A = uit.pickSession(c.siGenericObjectFilter, "Pick Reference A", True)
    if not ref_A:
        return

    ref_B = uit.pickSession(c.siGenericObjectFilter, "Pick Reference B", True)
    if not ref_B:
        return

    op = aop.sn_interpose_op(out, ref_A, ref_B)

    xsi.InspectObj(op)
Esempio n. 3
0
    def addOperators(self):
        
        
    
        #Jaw Operators
        par.addExpression(self.jawRotCenter.Kinematics.Local.Parameters("rotz"), self.jawControl.Kinematics.Local.Parameters("rotz").FullName  )
        par.addExpression(self.jawTrans.Kinematics.Local.Parameters("posz"), self.jawControl.Kinematics.Local.Parameters("posz").FullName + " *" + self.mult_jaw_trans_Z.FullName )
        par.addExpression(self.jawRotBase.Kinematics.Local.Parameters("rotx"), "(" + self.jawControl.Kinematics.Local.Parameters("posy").FullName + " *" + self.mult_jaw_rot_X.FullName + ") * -1")
        par.addExpression(self.jawRotBase.Kinematics.Local.Parameters("roty"),  self.jawControl.Kinematics.Local.Parameters("posx").FullName + " *" + self.mult_jaw_rot_Y.FullName )
        par.addExpression(self.jawRotBase.Kinematics.Local.Parameters("rotz"),  self.jawControl.Kinematics.Local.Parameters("posx").FullName + " *" + self.mult_jaw_rot_Z.FullName )
         
        oAxis = [ "posx", "posy", "posz"]
         
        par.setLimit( self.jawControl, oAxis, -1, 1)
         
         
        #teeth
        self.intePose01 = aop.sn_interpose_op(self.teeth_lvl, self.teethHead, self.teethJaw )
        
        par.addExpression(self.intePose01.Parameters("blend_pos"), "MIN( MAX((" + self.jawControl.Kinematics.Local.Parameters("posy").FullName + "*" + self.upLips_jaw_head_multi.FullName + ")+"  + self.sticky_Lips.FullName + "+" + self.upLips_jaw_head.FullName + "+ abs(" + self.jawControl.Kinematics.Local.Parameters("posx").FullName + " ) , 0 + " + self.upLips_jaw_head.FullName + " + "  + self.sticky_Lips.FullName  + "), 1 )"  )
        par.addExpression(self.intePose01.Parameters("blend_dir"), "MIN( MAX((" + self.jawControl.Kinematics.Local.Parameters("posy").FullName + "*" + self.upLips_jaw_head_multi.FullName + ")+"   + self.sticky_Lips.FullName + "+" + self.upLips_jaw_head.FullName + "+ abs(" + self.jawControl.Kinematics.Local.Parameters("posx").FullName + " ), abs(" + self.jawControl.Kinematics.Local.Parameters("posx").FullName +  ")+" + self.upLips_jaw_head.FullName + "+ "  + self.sticky_Lips.FullName  +" ), 1 )"  )
        par.addExpression(self.intePose01.Parameters("blend_upv"), "MIN( MAX((" + self.jawControl.Kinematics.Local.Parameters("posy").FullName + "*" + self.upLips_jaw_head_multi.FullName + ")+"  + self.sticky_Lips.FullName + "+" + self.upLips_jaw_head.FullName + "+ abs(" + self.jawControl.Kinematics.Local.Parameters("posx").FullName + " ) , 0 + " + self.upLips_jaw_head.FullName + " + "  + self.sticky_Lips.FullName  + "), 1 )"  )
        
        
        
        #lips
                
        self.intePose02 = aop.sn_interpose_op(self.upLips_lvl, self.upLipsHead, self.upLipsJaw )
        
        par.addExpression(self.intePose02.Parameters("blend_pos"), "MIN( MAX((" + self.jawControl.Kinematics.Local.Parameters("posy").FullName + "*" + self.upLips_jaw_head_multi.FullName + ")+"  + self.sticky_Lips.FullName + "+" + self.upLips_jaw_head.FullName + "+ abs(" + self.jawControl.Kinematics.Local.Parameters("posx").FullName + " ) , 0 + " + self.upLips_jaw_head.FullName + " + "  + self.sticky_Lips.FullName  + "), 1 )"  )
        par.addExpression(self.intePose02.Parameters("blend_dir"), "MIN( MAX((" + self.jawControl.Kinematics.Local.Parameters("posy").FullName + "*" + self.upLips_jaw_head_multi.FullName + ")+"   + self.sticky_Lips.FullName + "+" + self.upLips_jaw_head.FullName + "+ abs(" + self.jawControl.Kinematics.Local.Parameters("posx").FullName + " ), abs(" + self.jawControl.Kinematics.Local.Parameters("posx").FullName +  ")+" + self.upLips_jaw_head.FullName + "+ "  + self.sticky_Lips.FullName  +" ), 1 )"  )
        par.addExpression(self.intePose02.Parameters("blend_upv"), "MIN( MAX((" + self.jawControl.Kinematics.Local.Parameters("posy").FullName + "*" + self.upLips_jaw_head_multi.FullName + ")+"  + self.sticky_Lips.FullName + "+" + self.upLips_jaw_head.FullName + "+ abs(" + self.jawControl.Kinematics.Local.Parameters("posx").FullName + " ) , 0 + " + self.upLips_jaw_head.FullName + " + "  + self.sticky_Lips.FullName  + "), 1 )"  )
        
        
        #Lips profile contrains
        self.cnsLower01 = aop.poseCns(self.uLip01_lvl, self.uLip01Lower_ref, True)
        self.cnsUpper01 = aop.poseCns(self.uLip01_lvl, self.uLip01Upper_ref, True)        
        par.addExpression(self.cnsUpper01.Parameters("blendweight"),  self.lip_01.FullName   )
        self.cnsLower01.Parameters("cnsscl").Value = False
        self.cnsUpper01.Parameters("cnsscl").Value = False
        
        self.cnsLower02 = aop.poseCns(self.uLip02_lvl, self.uLip02Lower_ref, True)
        self.cnsUpper02 = aop.poseCns(self.uLip02_lvl, self.uLip02Upper_ref, True)        
        par.addExpression(self.cnsUpper02.Parameters("blendweight"),  self.lip_02.FullName    )
        self.cnsLower02.Parameters("cnsscl").Value = False
        self.cnsUpper02.Parameters("cnsscl").Value = False
        
        self.cnsLower03 = aop.poseCns(self.uLip03_lvl, self.uLip03Lower_ref, True)
        self.cnsUpper03 = aop.poseCns(self.uLip03_lvl, self.uLip03Upper_ref, True)        
        par.addExpression(self.cnsUpper03.Parameters("blendweight"),  self.lip_03.FullName  )
        self.cnsLower03.Parameters("cnsscl").Value = False
        self.cnsUpper03.Parameters("cnsscl").Value = False
        
        self.cnsLower04 = aop.poseCns(self.cLip04_lvl, self.lLip04Lower_ref, True)
        self.cnsUpper04 = aop.poseCns(self.cLip04_lvl, self.lLip04Upper_ref, True)        
        par.addExpression(self.cnsUpper04.Parameters("blendweight"),  self.lip_04.FullName    )
        self.cnsLower04.Parameters("cnsscl").Value = False
        self.cnsUpper04.Parameters("cnsscl").Value = False
        
        self.cnsLower05 = aop.poseCns(self.lLip05_lvl, self.lLip05Lower_ref, True)
        self.cnsUpper05 = aop.poseCns(self.lLip05_lvl, self.lLip05Upper_ref, True)        
        par.addExpression(self.cnsUpper05.Parameters("blendweight"),  self.lip_05.FullName    )
        self.cnsLower05.Parameters("cnsscl").Value = False
        self.cnsUpper05.Parameters("cnsscl").Value = False
        
        self.cnsLower06 = aop.poseCns(self.lLip06_lvl, self.lLip06Lower_ref, True)
        self.cnsUpper06 = aop.poseCns(self.lLip06_lvl, self.lLip06Upper_ref, True)        
        par.addExpression(self.cnsUpper06.Parameters("blendweight"),  self.lip_06.FullName    )
        self.cnsLower06.Parameters("cnsscl").Value = False
        self.cnsUpper06.Parameters("cnsscl").Value = False
        
        self.cnsLower07 = aop.poseCns(self.lLip07_lvl, self.lLip07Lower_ref, True)
        self.cnsUpper07 = aop.poseCns(self.lLip07_lvl, self.lLip07Upper_ref, True)        
        par.addExpression(self.cnsUpper07.Parameters("blendweight"),  self.lip_07.FullName    )
        self.cnsLower07.Parameters("cnsscl").Value = False
        self.cnsUpper07.Parameters("cnsscl").Value = False
        
        self.cnsLower08 = aop.poseCns(self.lLip08_lvl, self.lLip08Lower_ref, True)
        self.cnsUpper08= aop.poseCns(self.lLip08_lvl, self.lLip08Upper_ref, True)        
        par.addExpression(self.cnsUpper08.Parameters("blendweight"),  self.lip_08.FullName    )
        self.cnsLower08.Parameters("cnsscl").Value = False
        self.cnsUpper08.Parameters("cnsscl").Value = False
        
        self.cnsLower09 = aop.poseCns(self.lLip09_lvl, self.lLip09Lower_ref, True)
        self.cnsUpper09 = aop.poseCns(self.lLip09_lvl, self.lLip09Upper_ref, True)        
        par.addExpression(self.cnsUpper09.Parameters("blendweight"),  self.lip_09.FullName    )
        self.cnsLower09.Parameters("cnsscl").Value = False
        self.cnsUpper09.Parameters("cnsscl").Value = False
        
        self.cnsLower10 = aop.poseCns(self.cLip10_lvl, self.lLip10Lower_ref, True)
        self.cnsUpper10 = aop.poseCns(self.cLip10_lvl, self.lLip10Upper_ref, True)        
        par.addExpression(self.cnsUpper10.Parameters("blendweight"),  self.lip_10.FullName    )
        self.cnsLower10.Parameters("cnsscl").Value = False
        self.cnsUpper10.Parameters("cnsscl").Value = False
        
        self.cnsLower11 = aop.poseCns(self.uLip11_lvl, self.uLip11Lower_ref, True)
        self.cnsUpper11 = aop.poseCns(self.uLip11_lvl, self.uLip11Upper_ref, True)        
        par.addExpression(self.cnsUpper11.Parameters("blendweight"),  self.lip_11.FullName    )
        self.cnsLower11.Parameters("cnsscl").Value = False
        self.cnsUpper11.Parameters("cnsscl").Value = False
        
        self.cnsLower12 = aop.poseCns(self.uLip12_lvl, self.uLip12Lower_ref, True)
        self.cnsUpper12 = aop.poseCns(self.uLip12_lvl, self.uLip12Upper_ref, True)        
        par.addExpression(self.cnsUpper12.Parameters("blendweight"),  self.lip_12.FullName    )
        self.cnsLower12.Parameters("cnsscl").Value = False
        self.cnsUpper12.Parameters("cnsscl").Value = False
        
        #mouth compression
        par.addExpression(self.upLips_loc.Kinematics.Local.Parameters("sclx"),  "1-((" + \
            self.jawControl.Kinematics.Local.Parameters("posy").FullName + \
            "*-1)*"+  self.lips_compression.FullName + ")")
            
        par.addExpression(self.lowLipsJaw.Kinematics.Local.Parameters("sclx"),  "1-((" + \
            self.jawControl.Kinematics.Local.Parameters("posy").FullName +"*-1)*"+ \
            self.lips_compression.FullName+ ")")
        
        par.addExpression(self.upLips_loc.Kinematics.Local.Parameters("posz"),  "((MAX("+ \
            self.jawControl.Kinematics.Local.Parameters("posy").FullName + "*-1,0))*" +  \
            self.lips_upperTranslation.FullName + ")+" + self.lips_upperOffset.FullName )
            
        par.addExpression(self.lowLipsJaw.Kinematics.Local.Parameters("posz"),  "((MAX("+ \
            self.jawControl.Kinematics.Local.Parameters("posy").FullName + "*-1,0))*" + \
            self.lips_lowerTranslation.FullName + ") +" + self.lips_lowerOffset.FullName )
         
         
        # # ICE Shapes Controls
        # self.intePose03 = aop.sn_interpose_op(self.mouthICE_lvl, self.upLipsHead, self.upLipsJaw )