def build_all(): networks = libSerialization.getNetworksByClass('RigRoot') for network in networks: rigroot = libSerialization.import_network(network) if rigroot.build(): pymel.delete(network) libSerialization.export_network(rigroot)
def unbuild_all(): networks = libSerialization.getNetworksByClass('RigRoot') for network in networks: rigroot = libSerialization.import_network(network) rigroot.unbuild() pymel.delete(network) # Write changes to scene network = libSerialization.export_network(rigroot) pymel.select(network)
def get_spaceswitch_targets(jnt): from omtk.libs import libSerialization # Return true if x is a network of type 'RigPart' and it's networks = libSerialization.getConnectedNetworksByHierarchy(jnt, key=is_network_pinnable) targets = [] for network in networks: val = libSerialization.import_network(network) targets.extend(val.getPinTargets()) return targets
def CallFnOnNetworkByClass(_sFn, _sCls): fnFilter = lambda x: libSerialization.isNetworkInstanceOfClass(x, _sCls) networks = libSerialization.getConnectedNetworks(pymel.selected(), key=fnFilter) for network in networks: rigPart = libSerialization.import_network(network) if not hasattr(rigPart, _sFn): logging.warning("Can't find attribute {0} in {1}".format(_sFn, network)); continue try: getattr(rigPart, _sFn)() except Exception, e: print str(e)
def find(): networks = libSerialization.getNetworksByClass('RigRoot') return [libSerialization.import_network(network) for network in networks]
def updateData(self): networks = libSerialization.getNetworksByClass('RigRoot') self.roots = [libSerialization.import_network(network) for network in networks]