This is somewhat related to my batch process that I have posted but it is
slightly different. I am trying to reuse some of the incremental saves
script that I once used to have and have it implemented into use within the
treeWidget and pushButton
Initially, I has something like this:
def importAndSave(self):
root = self.ui.treeWidget_migrateAnm.invisibleRootItem()
count = root.childCount()
for i in range(count):
item = root.child(i)
ns = item.text(1)
# For each item in list, it will be saved into each file
# Have to force create a new scene
cmds.file(f=True, new=True)
cmds.file(rename= str(ns))
# Import Rig commands
# ....
cmds.file(f=True, type='mayaAscii', save=True )
However the file saved directory is not what I had wanted, as I wanted it
to be somewhere temporary and have it removed once the publishing fiasco is
over...
I also noticed that in the event if I had multiple of the same items, since
I am using the *ns *for the naming, I thought of adding in some sort of
incremental values and tried changing the code to:
def importAndSave(self):
root = self.ui.treeWidget_migrateAnm.invisibleRootItem()
count = root.childCount()
for i in range(count):
item = root.child(i)
ns = item.text(1)
# Import Rig Commands
# ....
self.tmpSave()
def tmpSave(self):
path = '/user_data/.tmp/anm_tmpFiles'
newName = name + "_0001" + ".ma"
newSaveDir = os.path.abspath(os.path.join(path))
newSavePath = os.path.join(newSaveDir, newName)
if os.path.exists(newSaveDir):
savedFiles = os.listdir(newSaveDir)
print savedFiles
savedFiles.sort()
incFiles = []
for i in savedFiles:
if fileName in i:
incFiles.append(i)
lastFile = incFiles[len(incFiles)-1]
name = lastFile.partition(".")[0]
newFileName = name[:-4]+(str(int(name[-4:])+1).zfill(4))+".ma"
incSaveFilePath = os.path.join(newSaveDir, newFileName)
system.saveAs(incSaveFilePath)
And this time round, I got the following traceback errors:
# Traceback (most recent call last):
# File "/user_data/dev_test/anm/versions/anmTool_v02a.py", line 211, in
test
# self.tmpSave()
# File "/user_data/dev_test/anm/versions/anmTool_v02a.py", line 232, in
tmpSave
# newSavePath = os.path.join(newSaveDir, newName)
# File "/apps/Linux64/aw/maya2014/lib/python2.7/posixpath.py", line 66,
in join
# if b.startswith('/'):
# AttributeError: 'QString' object has no attribute 'startswith'
Or perhaps is there a better way to approach this?
--
You received this message because you are subscribed to the Google Groups
"Python Programming for Autodesk Maya" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/python_inside_maya/0116e3c5-a06d-46cc-8413-a93b82026179%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.