I'm running into a lot of walls here with how Maya handles
manipulators. My goal is to determine the inheritance of each node
loaded by a plugin.
problem 1: `pluginInfo -dependNode` returns Manipulators!
>>> cmds.pluginInfo('shaveNode', query=1, dependNode=1)
[u'shaveHair', u'shaveGlobals', u'shaveShadowNode', u'shaveNode',
u'shaveBackground', u'shaveVertexShader', u'shaveVolumeShader',
u'shaveBrushManip']
the last item, 'shaveBrushManip', is a manipulator, so why is this
returned in the list of dependency nodes?
problem 2: I don't know how to use MEL or API to find out if an
object type is a manipulator prior to creating it
problem 3: `nodeType -inherited` requires a real object, so i have to
create an object to find out it's inheritance.
>>> res = cmds.createNode( u'shaveBrushManip' )
>>> cmds.nodeType(res)
None
>>>cmds.nodeType(res, inherited=1)
None
once i do this, i can see that the inheritance is None, which gives me
a good clue that it's a manipulator, but that leads me to the next
problem.
problem 4: `createNode` allows you to create manipulators but `delete`
won't delete them.
why does create*NODE* allow me to create a manipulator when nothing
else will recognize what has been created? is there a way to delete
manipulators or get any kind of information about them?
>>> res = cmds.createNode( u'shaveBrushManip' )
>>> print res
Manipulator2
>>> cmds.ls(type='shaveBrushManip') # ls won't list it
[]
cmds.delete( res) # delete won't delete it
Traceback (most recent call last):
File "<maya console>", line 1, in <module>
TypeError: Object Manipulator2 is invalid
a solution to any one of these problems would be great. clearly, most
of them are in Autodesk's court, but perhaps there are commands in the
API or MEL that i don't know about for working with and deleting
manipulators?
-chad
--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/python_inside_maya
-~----------~----~----~----~------~----~------~--~---