Last active
August 29, 2015 14:10
-
-
Save boredstiff/043d2ffc799d2335bb77 to your computer and use it in GitHub Desktop.
AwAddAttributes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
""" | |
""" | |
import maya.cmds as cmds | |
import pymel.core as pmc | |
w=150 | |
class awAttributeAdder(): | |
def __init__(self): | |
if cmds.window('awFaceAttrs', exists=True): | |
cmds.deleteUI('awFaceAttrs') | |
self.uiElements = {} | |
self.uiElements["window"] = cmds.window('awFaceAttrs', w=300, h=500, sizeable=True, resizeToFitChildren=True) | |
self.uiElements["mainColumnLO"] = cmds.columnLayout() | |
self.uiElements["Regulars"] = cmds.frameLayout('Regulars', borderStyle='etchedIn', w=300, collapsable=True, collapse=False, p=self.uiElements["mainColumnLO"]) | |
cmds.rowColumnLayout(nc=2, cw=(w, w)) | |
self.uiElements["hideTranslateButton"] = cmds.button('Hide Translate', w=w) | |
self.uiElements["hideRotateButton"] = cmds.button('Hide Rotate', w=w) | |
self.uiElements["hideScaleButton"] = cmds.button('Hide Scale', w=w) | |
self.uiElements["hideAllButton"] = cmds.button('Hide All', w=w) | |
cmds.separator(h=5, style='none') | |
cmds.separator(h=5, style='none') | |
self.uiElements["lockHideTranslateButton"] = cmds.button('Lock/Hide Translate', w=w) | |
self.uiElements["lockHideRotateButton"] = cmds.button('Lock/Hide Rotate', w=w) | |
self.uiElements["lockHideScaleButton"] = cmds.button('Lock/Hide Scale', w=w) | |
self.uiElements["lockHideAllButton"] = cmds.button('Lock/Hide All', w=w) | |
cmds.separator(h=5, style='none') | |
cmds.separator(h=5, style='none') | |
self.uiElements["FaceLO"] = cmds.frameLayout('Face', borderStyle='etchedIn', w=300, collapsable=True, collapse=False, p=self.uiElements["mainColumnLO"]) | |
cmds.rowColumnLayout(nc=2, cw=(w, w)) | |
cmds.separator(h=5, style='none') | |
cmds.separator(h=5, style='none') | |
self.uiElements["eyebrowsButton"] = cmds.button('Eyebrows', w=w, c=self.faceEyeBrows) | |
self.uiElements["eyeLidsButton"] = cmds.button('Eyelids', w=w, c=self.eyeAttrs) | |
self.uiElements["cheeksButton"] = cmds.button('Cheeks', w=w, c=self.cheekAttrs) | |
self.uiElements["noseButton"] = cmds.button('Nose', w=w, c=self.noseAttrs) | |
self.uiElements["lipsButton"] = cmds.button('Lips', w=w, c=self.mouthAttrs) | |
self.uiElements["tongueButton"] = cmds.button('Tongue', w=w) | |
cmds.separator(h=5, style='none') | |
cmds.separator(h=5, style='none') | |
self.uiElements["ArmsLO"] = cmds.frameLayout('Arms', borderStyle='etchedIn', w=300, collapsable=True, collapse=False, p=self.uiElements["mainColumnLO"]) | |
cmds.rowColumnLayout(nc=2, cw=(w, w)) | |
self.uiElements["FKIKBlend"] = cmds.button("IKFKBlend", w=w) | |
self.uiElements["HandsLO"] = cmds.frameLayout('Hands', borderStyle='etchedIn', w=300, collapsable=True, collapse=False, p=self.uiElements["mainColumnLO"]) | |
cmds.rowColumnLayout(nc=2, cw=(w, w)) | |
self.uiElements["LegsLO"] = cmds.frameLayout('Legs', borderStyle='etchedIn', w=300, collapsable=True, collapse=False, p=self.uiElements["mainColumnLO"]) | |
cmds.showWindow('awFaceAttrs') | |
self.uiElements["FeetLO"] = cmds.frameLayout('Feet', borderStyle='etchedIn', w=300, collapsable=True, collapse=False, p=self.uiElements["mainColumnLO"]) | |
cmds.rowColumnLayout(nc=2, cw=(w, w)) | |
self.uiElements["SpaceSwitchingLO"] = cmds.frameLayout('Space Switching', borderStyle='etchedIn', w=300, collapsable=True, collapse=False, p=self.uiElements["mainColumnLO"]) | |
cmds.rowColumnLayout(nc=2, cw=(w, w)) | |
self.uiElements["worldSpace1"] = cmds.checkBoxGrp(numberOfCheckBoxes=3) | |
cmds.separator(h=15, style='none') | |
self.uiElements["worldSpace2"] = cmds.checkBoxGrp(numberOfCheckBoxes=3) | |
self.mouthAttributes = ["jawOpenClose", "mouthUpDown", "mouthSideToSide", "lMouthCornerNarrowWide", "rMouthCornerNarrowWide", "lipPurse", "upperLipPuff", | |
"lowerLipPuff", "upperLip", "upperLipRollInOut", "upperLipUpDown", "upperLipInOut", "lowerLip", "lowerLipRollInOut", "lowerLipUpDown", "lowerLipInOut"] | |
self.midBrowAttrs = ["midBrowUpDown", "midBrowLeftRight", "midFurrow"] | |
self.eyebrowAttrs = ["eyebrowInnerUpDown", "eyebrowMidUpDown", "eyebrowOuterUpDown", "furrowed", "browSqueezeInOut"] | |
self.eyeAttributes = ["topInnerUpDown", "topMidUpDown", "topOuterUpDown", "bottomInnerUpDown", "bottomMidUpDown", "cornerInnerUpDown", "cornerOuterUpDown"] | |
self.noseAttributes = ["upperNoseScrunch", "leftNostrilFlare", "rightNostrilFlare", "leftNostrilWiden", "rightNostrilWiden", "leftSneer", "rightSneer", | |
"leftSmileCheekPuff", "rightSmileCheekPuff", "leftCheekSuckPuff", "rightCheekSuckPuff"] | |
self.cheekAttributes = ["leftCheekPuff", "rightCheekPuff"] | |
self.handAttributes = ["fingerCurl"] | |
self.armAttributes = ["ikFkBlend"] | |
self.footAttributes = ["legTwist", "kneeTwist", "footRoll", "heelOffset", "ballOffset", "toePivotOffset", "heelTwist", "toeTwist", "sideToSide", "toeUpDown"] | |
def addFloatAttr(self, controlName, ctrlAttrs, *args): | |
for attr in [(o, a) for o in controlName for a in ctrlAttrs]: | |
try: pmc.addAttr(attr[0], ln=attr[1], at="float", k=1, min=-10, max=10, w=True) | |
except: pass | |
def faceEyeBrows(self, *args): | |
selectedControl = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControl, self.eyebrowAttrs) | |
def faceMidBrow(self, *args): | |
selectedControl = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControl, self.midBrowAttrs) | |
def eyeAttrs(self, *args): | |
selectedControls = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControls, self.eyeAttributes) | |
def noseAttrs(self, *args): | |
selectedControls = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControls, self.noseAttributes) | |
def mouthAttrs(self, *args): | |
selectedControls = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControls, self.mouthAttributes) | |
def cheekAttrs(self, *args): | |
selectedControls = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControls, self.cheekAttributes) | |
def handAttrs(self, *args): | |
selectedControls = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControls, self.handAttributes) | |
def armAttrs(self, *args): | |
selectedControls = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControls, self.armAttributes) | |
def footAttrs(self, *args): | |
selectedControls = cmds.ls(sl=1) | |
self.addFloatAttr(selectedControls, self.footAttributes) | |
awAttributeAdder() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment