Here's the code I used to accomplish that task in PM_heatWeight:
def isATypeOf(node, type):
"""Returns true if node is of the given type, or inherits from it."""
if isinstance(node, basestring) and cmds.objExists(node):
return type in cmds.nodeType(node, inherited=True)
else:
return False
def listForNone( res ):
if res is None:
return []
return res
def getSkinClusters(mesh):
"""
Returns a list of skinClusters attached the given mesh.
"""
return [x for x in listForNone(cmds.listHistory(mesh))
if isATypeOf(x, 'skinCluster')]
Obviously, not all api, but the only call that I don't know of any
easy API conversion for is listHistory. I think in order to get an
equivalent result, you have to trace back through connections to
'inMesh' (or equivalent if you're not using a poly mesh), and check
for nodes that have their 'isHistoricallyInteresting' attribute set...
but I'm not positive.
Be interested to hear what others do for this...
- Paul
On Thu, Oct 8, 2009 at 7:57 AM, [email protected]
<[email protected]> wrote:
>
> if there is a way to grab a hold of information relating to mesh such
> as skin clusters using API. I know in python I could simply eval the
> findRelatedSkinCluster or grab all the skinClusters in the scene and
> then work backwards from there. But I'm trying to work exclusively
> through API at the moment and would love to find a way to start with a
> selected mesh and grab information for it. thanks!!
>
> Brandon L. Harris
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/python_inside_maya
-~----------~----~----~----~------~----~------~--~---