characters derive from sets, and sets make use of connections between nodes
to establish membership. So you should be able to use listConnections to
determine if a set has a parent.
Assuming your "main" character means a root level character, and "sub"
characters are simply characters of a character...
c1 = cmds.character()
c2 = cmds.character()
mainChar = cmds.character( c1, c2, n='parentCharacter' )
cmds.listConnections(c1, s=False, d=True, type='character',
exactType=True)
# Result: [u'parentCharacter'] #
I used exactType=True since it could also technically match an objectSet
being a parent, since character derives a set type.
So you could simplify a test like this:
def isSubCharacter(char):
return bool(cmds.listConnections(char, s=False, d=True,
type='character', exactType=True))
print isSubCharacter(c1)
# True
On Tue, Jun 19, 2012 at 3:03 PM, David Alvarez <[email protected]> wrote:
> Hi guys I'm trying to discard subcharacters sets from the a list, I tried
> through listrelatives command but they don't seem to be related to the main
> characters sets, so I don't know if there is an easy way to distinguish
> main characters from the subcharacters.
> I would really appreciate any help...
>
> Thanks in advance.
>
> --
> view archives: http://groups.google.com/group/python_inside_maya
> change your subscription settings:
> http://groups.google.com/group/python_inside_maya/subscribe
>
--
view archives: http://groups.google.com/group/python_inside_maya
change your subscription settings:
http://groups.google.com/group/python_inside_maya/subscribe