示例#1
0
def define(self):
    _short = self.mNode
    _str_func = '[{0}] define'.format(_short)

    ATTR.set_alias(_short, 'sy', 'blockScale')
    self.setAttrFlags(attrs=['sx', 'sz', 'sz'])
    self.doConnectOut('sy', ['sx', 'sz'])
    ATTR.set_hidden(_short, 'baseSize', True)

    _shapes = self.getShapes()
    if _shapes:
        log.debug("|{0}| >>  Removing old shapes...".format(_str_func))
        mc.delete(_shapes)

    _size = self.atUtils('defineSize_get')

    #_sizeSub = _size / 2.0
    log.debug("|{0}| >>  Size: {1}".format(_str_func, _size))
    _crv = CURVES.create_fromName(name='locatorForm',
                                  direction='z+',
                                  size=_size * 2.0)

    SNAP.go(_crv, self.mNode)
    CORERIG.override_color(_crv, 'white')
    CORERIG.shapeParent_in_place(self.mNode, _crv, False)
    mHandleFactory = self.asHandleFactory()
    self.addAttr('cgmColorLock', True, lock=True, hidden=True)

    if self.cgmName == 'default':
        self.cgmName = 'eyeLook'
        self.doName()
示例#2
0
    mObj.parent = _p[i]
    
    
#Control shape parent tassels
import cgm.core.cgm_Meta as cgmMeta    
import cgm.core.lib.rigging_utils as RIGGING
import cgm.core.lib.attribute_utils as ATTR
import maya.cmds as mc
ml = cgmMeta.validateObjListArg(mc.ls(sl=1))
for mObj in ml:
    _source = mObj.getMessage('cgmSource')
    RIGGING.shapeParent_in_place(_source[0],mObj.mNode,False)
    mSource = cgmMeta.asMeta(_source[0])
    mSource.doGroup(True)
    mSource.radius = 0
    ATTR.set_hidden(mSource.mNode,'cgmIterator')
    
def reorderUnderParent():
    ml = cgmMeta.validateObjListArg(mc.ls(sl=1))
    for mObj in ml:
        p = mObj.parent
        mObj.parent = False
        mObj.parent = p
        
        
#Face ==============================================================================================================
_d = {'jointList' : [u'tongue_0_jnt',
                     u'tongue_1_jnt',
                     u'tongue_2_jnt',
                     u'tongue_3_jnt',
                     u'tongue_4_jnt',
示例#3
0
def create_uvPickerNetwork(target=None,
                           name='iris',
                           mode=1,
                           enums=None,
                           count=9,
                           split=3):
    _str_func = 'create_uvPickerNetwork'
    log.debug("|{0}| >> ".format(_str_func) + '-' * 80)

    if count / split != split:
        raise ValueError, "{0} || Split must divide evently to count. count: {1} | split: {2}".format(
            _str_func, count, split)

    if not target:
        target = mc.group(em=True, name='uvPickerDefault')

    if mode == 2:
        log.debug(cgmGen.logString_msg(_str_func, '2 Attr mode'))

        if not enums:
            enums = ['{0}_{1}'.format(name, i) for i in range(2)]

        for a in enums:
            ATTR.add(target,
                     a,
                     'enum',
                     enumOptions=[str(i) for i in range(split)])

        for a in 'U', 'V':
            _a = 'res_{0}{1}'.format(name, a)
            ATTR.add(target, _a, 'float', keyable=False, hidden=False)
            ATTR.set_hidden(target, _a, False)

        mMD = cgmMeta.cgmNode(name="{0}_picker_md".format(name),
                              nodeType='multiplyDivide')
        mMD.operation = 2
        mMD.input2X = split
        mMD.input2Y = split

        mMD.doConnectIn('input1X', "{0}.{1}".format(target, enums[0]))
        mMD.doConnectIn('input1Y', "{0}.{1}".format(target, enums[1]))

        mMD.doConnectOut('outputX', '{0}.res_{1}U'.format(target, name))
        mMD.doConnectOut('outputY', '{0}.res_{1}V'.format(target, name))
    else:
        log.debug(cgmGen.logString_msg(_str_func, '1 Attr mode'))

        _d_values = {
            9: [
                [.999, .666],
                [.333, .666],
                [.666, .666],
                [.999, .333],
                [.333, .333],
                [.666, .333],
                [.999, .999],
                [.333, .999],
                [.666, .999],
            ]
        }

        l_dat = _d_values.get(count)
        if not l_dat:
            raise ValueError, "{0} | count {1} not supported".format(
                _str_func, count)

        for a in 'U', 'V':
            _a = 'res_{0}{1}'.format(name, a)
            ATTR.add(target, _a, 'float', keyable=False, hidden=False)
            ATTR.set_hidden(target, _a, False)

        mPMA = cgmMeta.cgmNode(name="{0}_picker_pma".format(name),
                               nodeType='plusMinusAverage')
        mPMA.operation = 1

        ATTR.add(target, name, 'enum', enumOptions=[str(i) for i in range(9)])
        mAttr = cgmMeta.cgmAttr(target, name)

        for i, vSet in enumerate(l_dat):
            _iterBase = "{0}_{1}".format(name, i)

            if mc.objExists('%s_condNode' % _iterBase):
                mc.delete('%s_condNode' % _iterBase)

            mNode = cgmMeta.cgmNode(name="{0}_condNode".format(_iterBase),
                                    nodeType='condition')

            mNode.secondTerm = i
            mNode.colorIfTrueR = vSet[0]
            mNode.colorIfTrueG = vSet[1]

            mNode.colorIfFalseR = 0
            mNode.colorIfFalseG = 0

            mAttr.doConnectOut('%s.firstTerm' % mNode.mNode)
            ATTR.connect('%s.outColor' % mNode.mNode,
                         "{0}.input3D[{1}]".format(mPMA.mNode, i))
            #attributes.doConnectAttr('%s.outColorR'%mNode.mNode,'%s.%s'%(c,self.connectToAttr))

        mPMA.doConnectOut('output3Dx', '{0}.res_{1}U'.format(target, name))
        mPMA.doConnectOut('output3Dy', '{0}.res_{1}V'.format(target, name))
示例#4
0
def create_uvPickerNetworkBAK(target=None, name='iris', split=9):
    _str_func = 'create_uvPickerNetwork'
    log.debug("|{0}| >> ".format(_str_func) + '-' * 80)

    _d_values = {
        9: [
            [.999, .666],
            [.333, .666],
            [.666, .666],
            [.999, .333],
            [.333, .333],
            [.666, .333],
            [.999, .999],
            [.333, .999],
            [.666, .999],
        ]
    }

    l_dat = _d_values.get(split)
    if not l_dat:
        raise ValueError, "{0} | split {1} not supported".format(
            _str_func, split)

    if not target:
        target = mc.group(em=True, name='uvPickerDefault')

    md_pmas = {}

    for a in 'U', 'V':
        _a = '{0}{1}'.format(name, a)
        ATTR.add(target, _a, 'float', keyable=False, hidden=False)
        ATTR.set_hidden(target, _a, False)

        #if mc.objExists('%s_pma'%_iterBase):
        #mc.delete('%s_condNode'%_iterBase)

        mPMA = cgmMeta.cgmNode(name="{0}_pma".format(_iterBase),
                               nodeType='plusMinusAverage')
        mPMA.operation = 1
        md_pmas[a] = mPMA

    ATTR.add(target, name, 'enum', enumOptions=[str(i) for i in range(9)])
    mAttr = cgmMeta.cgmAttr(target, name)

    #Pma nodes -------------------------------------------------
    #Condition loop ----------------------------------------
    #place 2d texture = number of rolls
    for i, vSet in enumerate(l_dat):
        _iterBase = "{0}_{1}".format(name, i)

        if mc.objExists('%s_condNode' % _iterBase):
            mc.delete('%s_condNode' % _iterBase)

        mNode = cgmMeta.cgmNode(name="{0}_condNode".format(_iterBase),
                                nodeType='condition')

        mNode.secondTerm = i
        mNode.colorIfTrueR = vSet[0]
        mNode.colorIfTrueR = vSet[1]

        mNode.colorIfFalseR = 0
        mNode.colorIfFalseG = 0

        #attributes.doSetAttr(i_node.mNode,'colorIfTrueR',1)
        #attributes.doSetAttr(i_node.mNode,'colorIfFalseR',0)
        #i_node.colorIfTrueR = 1
        #i_node.colorIfTrueR = 0

        mAttr.doConnectOut('%s.firstTerm' % i_node.mNode)
        attributes.doConnectAttr('%s.outColorR' % i_node.mNode,
                                 '%s.%s' % (c, self.connectToAttr))