Maya命名空间可能存在嵌套。
如上,直接删除 :female_actor02会出现异常。
因此需要先删除子命名空间,再删除父命名空间。
def remove_namespace_node(namespace_name, ns_parent=":"):
"""
"""
cmds.namespace(set=":")
if not cmds.namespace(exists=namespace_name):
print('Namespace {} not Exist'.format(namespace_name))
return
cmds.namespace(set=namespace_name)
child_namespace_lst = cmds.namespaceInfo(listOnlyNamespaces=True) or list()
cmds.namespace(set=":")
for child_nsp in child_namespace_lst:
remove_namespace_node(child_nsp, namespace_name)
cmds.namespace(moveNamespace=[namespace_name, ns_parent], force=1)
cmds.namespace(rm=namespace_name)
return