Ejemplo n.º 1
0
def importSkinWeights(debug=False, *args):
	filepath = xfer.mayaFileBrowse(label='Import Skin Weights', fileMode=1, okCaption='Import',
	                               fileFilter="*.json")

	if filepath:
		importer = Import(filepath=filepath, debug=debug)

		if debug:
			t1 = time.time()
			print 'Skin Import: Debug Mode {}\n\n'.format('-' * 100)
			print importer, '\n\n'
			print importer.debugInfo(), '\n\n'
			print 'Skin Import Debug Mode: Completed in {} seconds. {}'.format(time.time() - t1, '-' * 100)
			return
		else:
			try:
				t1 = time.time()
				importer.processWeights()
				print 'Skin imported successfully in {} seconds.'.format(time.time() - t1)
				return
			except:
				cmds.error('Skin Import Failed: View Script Editor for details.')
				return
	else:
		print 'Skin Import: Canceled.',
		return
Ejemplo n.º 2
0
def exportTemplate(debug=False, *args):
	selected = getSelected()
	if selected:
		selected = selected[0]
		root = getJointRoot(selected)

		if cmds.objectType(root) != 'joint':
			cmds.warning('Skeleton Template Export Failed: Must select a joint hierarchy.')
			return
		else:
			data = buildSkeletonTree(root)
			if data:
				if debug:
					t1 = time.time()
					print 'Skeleton Template Export: Debug Mode {}\n'.format('-' * 100)
					print json.dumps(data, indent=1) if data else 'Data: None'
					print '\nSkeleton Template Export: Completed in {} seconds. {}'.format(time.time() - t1, '-' * 100)
					return
				else:
					filepath = xfer.mayaFileBrowse(label='Export Skeleton Template',
					                               fileMode=0,
					                               okCaption='Export',
					                               fileFilter="*.json",
					                               )

					if filepath:
						xfer.Export(filepath, data=data, isDebug=False)
					else:
						print 'Skeleton Template Export: Canceled.',
			return
Ejemplo n.º 3
0
def importTemplate(debug=False, *args):
	filepath = xfer.mayaFileBrowse(label='Import Skeleton Template',
	                               fileMode=1,
	                               okCaption='Import',
	                               fileFilter="*.json",
	                               )

	if filepath:
		importer = xfer.Import(filepath, isDebug=False)
		data = importer.getData()

		if debug:
			t1 = time.time()
			print 'Skeleton Template Import: Debug Mode {}\n\n'.format('-' * 100)
			print importer.getDebugInfo(), '\n\n'
			print json.dumps(data, indent=1)
			print 'Skeleton Template Import: Completed in {} seconds. {}'.format(time.time() - t1, '-' * 100)
			return
		else:
			createSkeletonFromImport(data)
			return

	else:
		print 'Skeleton Template Export: Canceled.'
		return
Ejemplo n.º 4
0
def exportSkeletonCallback(debug=False, *args, **kwargs):
	selected = getSingleSelected()
	skeleton = Skeleton(root=selected)

	if debug:
		print skeleton
		return
	else:
		filepath = xfer.mayaFileBrowse(label='Export Skeleton Template',
		                               fileMode=0,
		                               okCaption='Export',
		                               fileFilter="*.xml",
		                               )

		if filepath:
			skeleton.write(filepath=filepath)
	return
Ejemplo n.º 5
0
def importSkeletonCallback(debug=False, *args, **kwargs):
	filepath = xfer.mayaFileBrowse(label='Import Skeleton Template',
	                               fileMode=1,
	                               okCaption='Import',
	                               fileFilter="*.xml",
	                               )

	if filepath:
		skeleton = Skeleton(filepath=filepath)
		skeleton.read()

		if debug:
			print skeleton
			return
		else:
			skeleton.buildSkeletonFromXML()
			print 'Skeleton Imported Successfully.'

	return
Ejemplo n.º 6
0
def exportSkinWeights(debug=False, *args):
	selected = getSelected()

	if selected:
		if len(selected) > 1:
			cmds.warning('Skin Export Failed: Select only a single mesh.')
			return
		else:
			mesh = selected[0]

			if not getMeshShapeNode(mesh):
				cmds.warning('Skin Export Failed: Select a mesh.')
				return

			elif not getMeshSkinCluster(mesh):
				cmds.warning('''Skin Export Failed: Mesh doesn't have a skin cluster.''')
				return

			else:
				exporter = Export(mesh=mesh, debug=debug)

				if debug:
					t1 = time.time()
					print 'Skin Export: Debug Mode {}\n\n'.format('-' * 100)
					print exporter, '\n\n'
					print exporter.debugInfo(), '\n\n'
					print 'Skin Export Debug Mode: Completed in {} seconds. {}'.format(time.time() - t1, '-' * 100)
					return
				else:
					filepath = xfer.mayaFileBrowse(label='Export Skin Weights', fileMode=0, okCaption='Export',
					                               fileFilter="*.json")

					if filepath:
						exporter.setFilepath(filepath)
						exporter.saveToFile()
					else:
						print 'Skin Export: Canceled.',
					return
	else:
		cmds.warning('Skin Export Failed: No mesh was selected.')
		return