I think part of the problem here is that the "types" recognized in the
command engine (e.g. listConnections) are somewhat arbitrary. I mean those
are just sort of "nice names" for some API type, right? One possibility
would be to write a script that just creates a node of each type and uses
the nodeType command to populate a "static" dictionary in some module with
niceName:apiType pairs, assuming you want the same types represented by nice
names in the command engine. In the case of custom node types (e.g., apiType
= kPluginDependNode), I think you'd just need to rely on the MTypeID to
distinguish one from another. I've only ever had to filter custom node types
in associated custom commands, in which case I just validate the argdata
using the MTypeID of the object.

On Fri, Dec 3, 2010 at 6:22 PM, Chad Dombrova <[email protected]> wrote:

>
> hi all,
> i'm trying to write a function using the maya API that reproduces the
> behavior of listConnections, and i'm getting tripped up on the type filter.
>  All of the MIt classes take an MFn::type as a filter, but there seems to be
> no way lookup an MFn::type given a maya node type name, e.g. "transform" -->
> kTransform.   worse still, there is not an MFn::type for every node type, so
> how do i go about searching for a specific custom node?  for example, if
> someone passes in "myCustomNode" as the type i would imagine i would have to
> first determine that the MFn::type is kPluginDependNode.  since filtering
> on kPluginDependNode will include all custom dependency nodes, i would then
> have to do a post-filter to test the actual node type.  so on top of needing
> to know how to lookup MFn::types from node types, i also need to maintain a
> list of all the MFn::types like kPluginDependNode and kPluginDeformNode that
> will need additional post-filtering.  please tell me there is a better way.
>
> -chad
>
>
>
>
>
>  --
> http://groups.google.com/group/python_inside_maya
>

-- 
http://groups.google.com/group/python_inside_maya

Reply via email to