import maya.cmds as mc
  
#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():
    #mc.delete('wGrp') 
    b = mc.ls('wGrp')
    print b
    a = mc.select(b)
    if a < 1:
        mc.delete(a)
    
        #nothing#
    #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]
    startFrm = 1
    endFrm = 100
    mc.pathAnimation( volumeFName,stu=startFrm,etu=endFrm, fa='x', ua='y', worldUpVector=(0,1,0), bank=True, c=path )
    createDupFields = dupAlongCurve(volumeFName,startFrm,endFrm)
    listAll =mc.select(listVol())
    mc.group(name='wGrp')
  
fMasterEXE()