Maya python清除命名空间

问题描述:

Maya python清除命名空间_第1张图片
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

你可能感兴趣的:(maya,python,开发语言)