Skip to content

Instantly share code, notes, and snippets.

@lapaev
Created January 3, 2016 02:00
Show Gist options
  • Select an option

  • Save lapaev/8f814c9cda14fe51c5ed to your computer and use it in GitHub Desktop.

Select an option

Save lapaev/8f814c9cda14fe51c5ed to your computer and use it in GitHub Desktop.
Camera 2D zoom
import maya.cmds as cmds
cam=cmds.ls(sl=True)
if len(cam)<1:
cmds.confirmDialog(message="select a camera")
else:
camShape=cmds.listRelatives(cam)
def reset():
cmds.panZoom(camShape,abs=True,z=1)
cmds.panZoom(camShape,abs=True,l=0)
cmds.panZoom(camShape,abs=True,d=0)
cmds.floatSliderGrp(valZ, edit=True, value=1)
cmds.floatSliderGrp(valX, edit=True, value=0)
cmds.floatSliderGrp(valY, edit=True, value=0)
def paniZoom():
zoomRate=cmds.floatSliderGrp(valZ, query=True, value=True)
cmds.panZoom(camShape,abs=True,z=zoomRate)
widthRate=cmds.floatSliderGrp(valX, query=True, value=True)
cmds.panZoom(camShape,abs=True,l=widthRate)
depthRate=cmds.floatSliderGrp(valY, query=True, value=True)
cmds.panZoom(camShape,abs=True,d=depthRate)
windowZ=cmds.window(title="Zoom/pan",w=350,h=250)
cmds.columnLayout(w=150,adj=True)
valZ=cmds.floatSliderGrp(label="Zoom", field=True,dc="paniZoom()",value=1,min=-0.001,max=1,pre=3)
valY=cmds.floatSliderGrp(label="Vertical Pan", field=True,dc="paniZoom()",value=0,min=-1,max=1,pre=3)
valX=cmds.floatSliderGrp(label="Horizontal Pan", field=True,dc="paniZoom()",value=0,min=-1,max=1,pre=3)
resetButton=cmds.button(label="reset", c="reset()")
cmds.showWindow(windowZ)
cmds.panZoom(camShape,abs=True,z=10)
reset()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment