Go to: Synopsis. Return value. Keywords. Related. Flags. Python examples.
attributeQuery([connectable=boolean], [enum=boolean], [exists=boolean], [hidden=boolean], [indexMatters=boolean], [internal=boolean], [internalGet=boolean], [internalSet=boolean], [keyable=boolean], [listChildren=boolean], [listDefault=boolean], [listEnum=boolean], [listParent=boolean], [listSiblings=boolean], [longName=boolean], [maxExists=boolean], [maximum=boolean], [message=boolean], [minExists=boolean], [minimum=boolean], [multi=boolean], [niceName=boolean], [node=name], [numberOfChildren=boolean], [range=boolean], [rangeExists=boolean], [readable=boolean], [shortName=boolean], [softMax=boolean], [softMaxExists=boolean], [softMin=boolean], [softMinExists=boolean], [softRange=boolean], [softRangeExists=boolean], [storable=boolean], [type=string], [typeExact=string], [usedAsColor=boolean], [writable=boolean])
Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.
attributeQuery is NOT undoable, NOT queryable, and NOT editable.
attributeQuery returns information about the configuration of an attribute.
It handles both boolean flags, returning true or false, as well as other return values.
Specifying more than one boolean flag will return the logical "and"
of all the specified boolean flags. You may not specify any two flags when both do not
provide a boolean return type. (eg. "-internal -hidden" is okay but "-range -hidden" or
"-range -softRange" is not.)
float[] | when querying ranges or default values |
boolean | when querying attribute flags |
dg, dependency, graph, attribute, query
getClassification, isConnected, isDirty, nodeType, objExists, objectType
connectable, enum, exists, hidden, indexMatters, internal, internalGet, internalSet, keyable, listChildren, listDefault, listEnum, listParent, listSiblings, longName, maxExists, maximum, message, minExists, minimum, multi, niceName, node, numberOfChildren, range, rangeExists, readable, shortName, softMax, softMaxExists, softMin, softMinExists, softRange, softRangeExists, storable, type, typeExact, usedAsColor, writable
Long name (short name) |
Argument types |
Properties |
type(typ)
|
string
|
|
|
Use static attributes from nodes of type TYPE. Includes attributes inherited from parent class nodes.
|
|
typeExact(tex)
|
string
|
|
|
Use static attributes only from nodes of type TYPE. Does not included inherited attributes.
|
|
node(n)
|
name
|
|
|
Use all attributes from node named NAME
|
|
exists(ex)
|
boolean
|
|
|
Return true if the attribute exists
|
|
internal(i)
|
boolean
|
|
|
Return true if the attribute is either internalSet or internalGet
|
|
internalSet(internalSet)
|
boolean
|
|
|
Return true if the attribute must be set through setCachedValue
|
|
internalGet(ig)
|
boolean
|
|
|
Return true if the attribute come from getCachedValue
|
|
keyable(k)
|
boolean
|
|
|
Return the keyable status of the attribute
|
|
connectable(c)
|
boolean
|
|
|
Return the connectable status of the attribute
|
|
message(msg)
|
boolean
|
|
|
Return true if the attribute is a message attribute
|
|
enum(e)
|
boolean
|
|
|
Return true if the attribute is a enum attribute
|
|
hidden(h)
|
boolean
|
|
|
Return the hidden status of the attribute
|
|
indexMatters(im)
|
boolean
|
|
|
Return the indexMatters status of the attribute
|
|
readable(rd)
|
boolean
|
|
|
Return the readable status of the attribute
|
|
storable(st)
|
boolean
|
|
|
Return true if the attribute is storable
|
|
writable(w)
|
boolean
|
|
|
Return the writable status of the attribute
|
|
multi(m)
|
boolean
|
|
|
Return true if the attribute is a multi-attribute
|
|
minimum(min)
|
boolean
|
|
|
Return the hard minimum of the attribute's value
|
|
maximum(max)
|
boolean
|
|
|
Return the hard maximum of the attribute's value
|
|
range(r)
|
boolean
|
|
|
Return the hard range of the attribute's value
|
|
usedAsColor(uac)
|
boolean
|
|
|
Return true if the attribute should bring up a color picker
|
|
softRange(s)
|
boolean
|
|
|
Return the soft range (slider range) of the attribute's value
|
|
softMin(smn)
|
boolean
|
|
|
Return the soft min (slider range) of the attribute's value
|
|
softMax(smx)
|
boolean
|
|
|
Return the soft max (slider range) of the attribute's value
|
|
numberOfChildren(nc)
|
boolean
|
|
|
Return the number of children the attribute has
|
|
listSiblings(ls)
|
boolean
|
|
|
Return the list of sibling attributes of the given attribute.
|
|
listChildren(lc)
|
boolean
|
|
|
Return the list of children attributes of the given attribute.
|
|
listParent(lp)
|
boolean
|
|
|
Return the parent of the given attribute.
|
|
listEnum(le)
|
boolean
|
|
|
Return the list of enum strings for the given attribute.
|
|
listDefault(ld)
|
boolean
|
|
|
Return the default values of numeric and compound numeric attributes.
|
|
minExists(mne)
|
boolean
|
|
|
Return true if the attribute has a hard minimum. A max does not have to be present.
|
|
maxExists(mxe)
|
boolean
|
|
|
Return true if the attribute has a hard maximum. A min does not have to be present.
|
|
rangeExists(re)
|
boolean
|
|
|
Return true if the attribute has a hard range. Both min and max must be present.
|
|
softMinExists(sme)
|
boolean
|
|
|
Return true if the attribute has a soft minimum. A max does not have to be present.
|
|
softMaxExists(sxe)
|
boolean
|
|
|
Return true if the attribute has a soft maximum. A min does not have to be present.
|
|
softRangeExists(se)
|
boolean
|
|
|
Return true if the attribute has a soft range. Both min and max must be present.
|
|
longName(ln)
|
boolean
|
|
|
Return the long name of the attribute.
|
|
shortName(sn)
|
boolean
|
|
|
Return the short name of the attribute.
|
|
niceName(nn)
|
boolean
|
|
|
Return the nice name (or "UI name") of the attribute.
|
|
Flag can appear in Create mode of command
|
Flag can appear in Edit mode of command
|
Flag can appear in Query mode of command
|
Flag can have multiple arguments, passed either as a tuple or a list.
|
import maya.cmds as cmds
# Determine the hidden status of the "selector" attribute on choice nodes.
#
cmds.attributeQuery( 'selector', typ='choice', h=True )
# Result: 0
# Determine the hidden status of the "selector" attribute on this choice node.
# (Usually the same but you can do this for dynamic attributes too.)
#
cmds.createNode( 'choice', n='whoIsIt' )
# Result: choice1
cmds.attributeQuery( 'selector', n='whoIsIt', h=True )
# Result: 0
# Determine the range of the selector value on choice nodes.
# In this case there is no range.
# Note, if there is only a minimum or only a maximum range will not set.
#
cmds.attributeQuery( 'selector', typ='choice', range=True )
# For the next several examples create a poly cube and add extra attributes.
cmds.polyCube( cuv=4, ch=1, w=1, h=1, d=1, sx=1, sy=1, sz=1, ax=(0, 1, 0) )
cmds.addAttr( '|pCube1', ln='egRange', at='long', min=0, max=5, dv=2 )
cmds.setAttr( '|pCube1.egRange', e=True, keyable=False )
# Determine if an attribute is keyable
#
cmds.attributeQuery( 'egRange', node='pCube1', k=True )
# Result: 0
# Determine the minimum and maximum values of the added attribute egRange
#
cmds.attributeQuery( 'egRange', node='pCube1', range=True )
# Result: [0.0, 5.0]
# Determine if there is a minimum for the attribute.
# Note, having a minimum or maximum value does not imply the attribute has a range.
cmds.addAttr( '|pCube1', ln='egMin', at='long', min=2 )
cmds.attributeQuery( 'egMin', node='pCube1', minExists=True )
# Result: 1
cmds.attributeQuery( 'egMin', node='pCube1', maxExists=True )
# Result: 0
cmds.attributeQuery( 'egMin', node='pCube1', min=True )
# Result: [2.0]
# Determine if an attribute is an enum
# List the enum strings. This will use ':' as a separator like the attr is written in
# an .ma file.
cmds.addAttr( '|pCube1', ln='myEnum', at='enum', en='chicken:turkey:duck:' )
cmds.attributeQuery( 'myEnum', node='pCube1', listEnum=True )
# Result: [u'chicken:turkey:duck'] #