You'll get an exception if the filter doesn't turn up anything.  Since
they're aren't any smooth nodes in the scene, the MItDependencyGraph
constructor throws an exception.  It'll only work if there are actual nodes
that match your filter.

Chad

On Tue, Oct 5, 2010 at 2:31 PM, JP <[email protected]> wrote:

> Hey all,
>
> I'm pretty new to working with the API, and I'm having some trouble
> getting an MItDependencyGraph node.   I keep getting the good old
> "(kFailure): Unexpected Internal Failure", and I've been scratching my
> head for quite a while over it.  Was hoping someone here can publicly
> point and laugh at whatever I'm doing wrong here.
>
> This is going to be part of a function that traverses upstream from
> all meshes under nodes passed to the function and looks for polySmooth
> nodes
>
> WARNING - this will create a new empty scene!
>
> Thanks in advance for the help!!
>
> import maya.OpenMaya as OM
> import maya.cmds as MC
>
> MC.file(new=True, force=True)
> group = MC.group(em=True, name= "grp")
> for i in range(3):
>    sphere = MC.polySphere(name='sphere%i' % i)
>    MC.parent(sphere, group)
>
> #get an MItSelectionList object with all meshes parented under "grp"
> funcArgs = ["grp"]
> MC.select(MC.listRelatives(funcArgs, pa=1, ad=1, type='mesh'))
> sel = OM.MSelectionList()
> OM.MGlobal.getActiveSelectionList(sel)
> selIt = OM.MItSelectionList(sel, OM.MFn.kMesh)
>
> #would normally start itering here, but for testing just grab the
> first item in the selection list
> meshNode = OM.MObject()
> selIt.getDependNode(meshNode)
>
> typeFilter = OM.MFn.kPolySmooth
> direction = OM.MItDependencyGraph.kUpstream
>
> dgIt = OM.MItDependencyGraph (meshNode, typeFilter, direction)
>
> --
> http://groups.google.com/group/python_inside_maya

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

Reply via email to