import maya.cmds as mc
#querying column
#list curves and volumesAxis
def selectCurve():
curveSelect = mc.select('curve1', add=True)
return curveSelect
def listCurve():
curveList = mc.ls(type='curveShape')
curveTrans = [mc.listRelatives(x, parent=True, type='transform')[0] for x in curveList]
return curveTrans
print curveTrans
def listVol():
volList = mc.ls(type='volumeAxisField')
return volList
#VolumeAxis duplicate along curve
def dupAlongCurve(volumeFName, startFrm, endFrm):
for eachFrame in range (startFrm,(endFrm+1)):
mc.currentTime(eachFrame)
#mc.select('volumeFName')
mc.duplicate(volumeFName)
def fMasterEXE(startFrm,endFrm):
#ask user to create curve.
volAxis = mc.volumeAxis( pos=(0, 0, 0), afc=0, afx=0, arx=0, alx=0, drs=0.5 )
volumeFName = listVol()[0]
#volume_Name = mc.select(listVol()[0])
path = listCurve()[0]
frmBegin = mc.intField(startFrm, query=True, value=True)
frmEnd = mc.intField(endFrm, query=True, value=True)
mc.pathAnimation( volumeFName, stu=frmBegin, etu=frmEnd, fa='x', ua='y', worldUpVector=(0,1,0), bank=True, c=path )
createDupFields = dupAlongCurve(volumeFName,frmBegin,frmEnd)
listAll =mc.select(listVol())
mc.group(name='wGrp')
def deleteVolume(*args):
a = mc.ls(type='volumeAxisField')
mc.delete(a)
#UI Window
window = mc.window(title='WireGenerationTool', iconName='WGT', widthHeight=(200,55), rtf=True )
mc.columnLayout( adjustableColumn=True )
mc.text( label= 'Please Create Your Desired Curve')
stFrm = mc.intField(value=1)
etFrm = mc.intField(value=10)
mc.button( label= 'delete', actOnPress=True, command=deleteVolume)
mc.button( label= 'Generate Fields', actOnPress=True, command=lambda x: fMasterEXE( stFrm, etFrm) )
mc.showWindow( window )