59 lines
2.1 KiB
Python
59 lines
2.1 KiB
Python
'''
|
|
========================================================================================================================
|
|
Author: Alan Camilo
|
|
www.alancamilo.com
|
|
|
|
Requirements: aTools Package
|
|
|
|
------------------------------------------------------------------------------------------------------------------------
|
|
To install aTools, please follow the instructions in the file how_to_install.txt
|
|
|
|
------------------------------------------------------------------------------------------------------------------------
|
|
To unistall aTools, go to menu (the last button on the right), Uninstall
|
|
|
|
========================================================================================================================
|
|
'''
|
|
|
|
from maya import cmds
|
|
from aTools.generalTools.aToolsGlobals import aToolsGlobals as G
|
|
from aTools.commonMods import utilMod
|
|
from aTools.commonMods import animMod
|
|
|
|
|
|
def togglejumpToSelectedKey(onOff):
|
|
utilMod.killScriptJobs("G.jumpToSelectedKeyScriptJobs")
|
|
|
|
if onOff:
|
|
G.jumpToSelectedKeyScriptJobs.append(cmds.scriptJob(runOnce = False, killWithScene = False, event =('SelectionChanged', animMod.jumpToSelectedKey)) )
|
|
|
|
animMod.jumpToSelectedKey()
|
|
|
|
def getMinMax():
|
|
|
|
rangeStart = cmds.playbackOptions(query=True, minTime=True)
|
|
rangeEnd = cmds.playbackOptions(query=True, maxTime=True)
|
|
curvesShown = cmds.animCurveEditor( 'graphEditor1GraphEd', query=True, curvesShown=True)
|
|
keysTimes = []
|
|
keysValues = []
|
|
keysShown = []
|
|
|
|
if curvesShown:
|
|
for aCurve in curvesShown:
|
|
keysTimes.extend(cmds.keyframe(aCurve, query=True, timeChange=True))
|
|
keysValues.extend(cmds.keyframe(aCurve, query=True, valueChange=True))
|
|
for n, key in enumerate(keysTimes):
|
|
if rangeStart <= key <= rangeEnd:
|
|
keysShown.append(keysValues[n])
|
|
|
|
keyMax = max(keysShown)
|
|
keyMin = min(keysShown)
|
|
total = keyMax - keyMin
|
|
if total == 0: total = 1
|
|
border = total * .1
|
|
|
|
return [keyMax+border, keyMin-border]
|
|
else:
|
|
return [0, 100]
|
|
|
|
|