- Substance 3D home
- Home
- Command Line Tools
- Command Line overview
- sbsbaker
- sbscooker
- sbsmtools
- sbsmutator
- sbsrender
- sbsupdater
- Command Line overview
- Pysbs - Python API
- Pysbs - Python API overview
- Getting started
- General topics
- Examples
- API Content
- API Content overview
- Substance definitions
- Common interfaces
- compnode
- context projectmgr
- graph
- mdl
- modelgraphindex
- modelannotationnames
- modelgraph
- modelgraphgenerator
- modelgraphimplementation
- modelnodenames
- modeloperand
- modulegraphindex
- moduleannotation
- moduleconnection
- modulegraph
- modulegraphgenerator
- modulegraphimplementation
- modulegraphlibrary
- modulegraphregister
- modulenode
- modulenodeimplementation
- modulenodeinstance
- moduleoperand
- moduleoutputbridging
- moduleparaminput
- params
- projectmgrdoc
- sbsarchive
- sbscommon
- sbspreset
- sbsproject
- substance
- Libraries
- sbsenum
- sbslibrary
- sbsbakerslibrary
- Helpers
- Execution context
- API Change log
- Samples
- Setup and Getting Started
- Integrations
- Substance Maya toolset
- Changelog overview
mdloperand
Module mdloperand provides the definition of the classes related to the operand structure as in .sbs format:
class mdl.mdloperand.MDLOperand(aName='', aType='', aMetaData=None)
Bases: pysbs.common_interfaces.sbsobject.SBSObject
Base class for:
- Members:
- mName (string): name of the operand
- mType (string): type of the operand (its type’s MDL path)
- mMetaData (
MDLOperandMetaData
, optional): various meta-data
acceptConnection()
Check if this operand accepts a connection (a pin is visible and active for this parameter)
Returns: | True if the operand accepts connection, False otherwise |
---|
equals(other)
Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.
static getSBSTag()
getType()
Get the type of the operand
Returns: | The operand type as a string |
---|
getUidIsUsed(aUID)
Check if the given uid is already used in the context of this SBSObject.
Parameters: | aUID (str) – UID to check |
---|---|
Returns: | True if the uid is already used, False otherwise |
Raise: | AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject |
getValue()
Get the value of the operand
Returns: | The operand value, as a string or a MDLOperands object |
---|
isDefaultValue()
Check if the value of this operand is the default one
Returns: | True if the value of the operand is the default one, False otherwise |
---|
parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
setConnectionAccepted(aValue)
Defines if the connection are accepted or not
Parameters: | aValue (bool) – The value to set. |
---|
setIsDefaultValue(isDefaultValue)
Defines if the operand has the default value or not
Parameters: | isDefaultValue (bool) – The value to set. |
---|
write(aSBSWriter, aXmlNode)
Write recursively the content of the SBSObject into the given xml node.
Parameters: |
|
---|
class mdl.mdloperand.MDLOperandArray(aName='', aType='', aItems=None, aMetaData=None)
Bases: mdl.mdloperand.MDLOperand
Class MDLOperandArray: An array operand
- Members:
- mName (string): name of the operand
- mType (string): type of the operand (its type’s MDL path)
- mItems (
MDLOperands
): the list of operands - mMetaData (
MDLOperandMetaData
, optional): various meta-data
acceptConnection()
Check if this operand accepts a connection (a pin is visible and active for this parameter)
Returns: | True if the operand accepts connection, False otherwise |
---|
addItem(aValue, aIndex = -1)
Add an item with the given value to the array, at the given index if it is provided, or at the end.
Parameters: |
|
---|---|
Returns: | The added item as a |
Raise: |
|
equals(other)
Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.
getItem(aIndex)
Get the item at the given index
Parameters: | aIndex (positive integer) – the index of the item to get |
---|---|
Returns: | The MDLOperand at the given index if it possible, None otherwise |
getItems()
Get the array of items on this operand array
Returns: | The items as a list of MDLOperand |
---|
static getSBSTag()
getSize()
Get the size of the array
Returns: | The array size as a positive integer |
---|
getType()
Get the type of the operand
Returns: | The operand type as a string |
---|
getUidIsUsed(aUID)
Check if the given uid is already used in the context of this SBSObject.
Parameters: | aUID (str) – UID to check |
---|---|
Returns: | True if the uid is already used, False otherwise |
Raise: | AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject |
getValue()
Get the value of this operand
Returns: | The value of the operand, as a MDLOperands |
---|
isDefaultValue()
Check if the value of this operand is the default one
Returns: | True if the value of the operand is the default one, False otherwise |
---|
parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
setConnectionAccepted(aValue)
Defines if the connection are accepted or not
Parameters: | aValue (bool) – The value to set. |
---|
setIsDefaultValue(isDefaultValue)
Defines if the operand has the default value or not
Parameters: | isDefaultValue (bool) – The value to set. |
---|
setValue(aValue)
Set the value of this operand
Parameters: | aValue (MDLOperandArray ) – the value to set |
---|
write(aSBSWriter, aXmlNode)
Write recursively the content of the SBSObject into the given xml node.
Parameters: |
|
---|
class mdl.mdloperand.MDLOperandMetaData(aAcceptConnection=None, aIsDefaultValue=None)
Bases: pysbs.common_interfaces.sbsobject.SBSObject
Class MDLOperandMetaData contains additional information associated to operands.
- Members:
- mAcceptConnection (string, optional): defines if the connections are allowed on this operand. Default to False
- mIsDefaultValue (string, optional): defines if the operand has the default value. Default to False
acceptConnection()
Check if this operand accepts a connection (a pin is visible and active for this parameter)
Returns: | True if the operand accepts connection, False otherwise |
---|
equals(other)
Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.
getUidIsUsed(aUID)
Check if the given uid is already used in the context of this SBSObject.
Parameters: | aUID (str) – UID to check |
---|---|
Returns: | True if the uid is already used, False otherwise |
Raise: | AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject |
isDefaultValue()
Check if the value of this operand is the default one
Returns: | True if the value of the operand is the default one, False otherwise |
---|
isEmpty()
Check if the content of the metadata is empty
Returns: | True if there is no metadata, False otherwise |
---|
parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
setConnectionAccepted(aValue)
Defines if the connection are accepted or not
Parameters: | aValue (bool) – The value to set. |
---|
setIsDefaultValue(isDefaultValue)
Defines if the operand is the default value or not
Parameters: | isDefaultValue (bool) – The value to set. |
---|
write(aSBSWriter, aXmlNode)
Write recursively the content of the SBSObject into the given xml node.
Parameters: |
|
---|
class mdl.mdloperand.MDLOperandStruct(aName='', aType='', aMembers=None, aMetaData=None)
Bases: mdl.mdloperand.MDLOperand
Class MDLOperandStruct: A compound type (struct) operand.
- Members:
- mName (string): name of the operand
- mType (string): type of the operand (its type’s MDL path)
- mMembers (
MDLOperands
): the sub-operands - mMetaData (
MDLOperandMetaData
, optional): various meta-data
acceptConnection()
Check if this operand accepts a connection (a pin is visible and active for this parameter)
Returns: | True if the operand accepts connection, False otherwise |
---|
equals(other)
Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.
getMembers()
Get the list of members on this operand struct
Returns: | The members as a list of MDLOperand |
---|
getOperand(aOperandName)
Get the operand with the given name among the structure members. The name can be: - Simply the name of the operand to get - A set of names separated by ‘/’ to access a sub member of the root member, for instance ‘surface/intensity’ - A name with an operator [] to access a particular item of an operand array, for instance ‘color[2]’
Parameters: | aOperandName (str) – The name of the operand to search |
---|---|
Returns: | The operand as a MDLOperand if found, None otherwise |
static getSBSTag()
getType()
Get the type of the operand
Returns: | The operand type as a string |
---|
getUidIsUsed(aUID)
Check if the given uid is already used in the context of this SBSObject.
Parameters: | aUID (str) – UID to check |
---|---|
Returns: | True if the uid is already used, False otherwise |
Raise: | AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject |
getValue()
Get the value of this operand
Returns: | The value of the operand, as a MDLOperands |
---|
isDefaultValue()
Check if the value of this operand is the default one
Returns: | True if the value of the operand is the default one, False otherwise |
---|
parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
setConnectionAccepted(aValue)
Defines if the connection are accepted or not
Parameters: | aValue (bool) – The value to set. |
---|
setIsDefaultValue(isDefaultValue)
Defines if the operand has the default value or not
Parameters: | isDefaultValue (bool) – The value to set. |
---|
setValue(aValue)
Set the value of this operand
Parameters: | aValue (MDLOperandStruct ) – the value to set |
---|
write(aSBSWriter, aXmlNode)
Write recursively the content of the SBSObject into the given xml node.
Parameters: |
|
---|
class mdl.mdloperand.MDLOperandValue(aName='', aType='', aValue='', aMetaData=None)
Bases: mdl.mdloperand.MDLOperand
Class MDLOperandValue: A simple base-type operand.
- Members:
- mName (string): name of the operand
- mType (string): type of the operand (its type’s MDL path)
- mValue (string): value of the operand
- mMetaData (
MDLOperandMetaData
, optional): various meta-data
acceptConnection()
Check if this operand accepts a connection (a pin is visible and active for this parameter)
Returns: | True if the operand accepts connection, False otherwise |
---|
equals(other)
Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.
static getSBSTag()
getType()
Get the type of the operand
Returns: | The operand type as a string |
---|
getTypedValue()
Get the value of this operand, in the type of the operand
Returns: | The value of the operand, in the type of the operand |
---|
getUidIsUsed(aUID)
Check if the given uid is already used in the context of this SBSObject.
Parameters: | aUID (str) – UID to check |
---|---|
Returns: | True if the uid is already used, False otherwise |
Raise: | AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject |
getValue()
Get the value of this operand
Returns: | The value of the operand, as a string |
---|
isDefaultValue()
Check if the value of this operand is the default one
Returns: | True if the value of the operand is the default one, False otherwise |
---|
parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
setConnectionAccepted(aValue)
Defines if the connection are accepted or not
Parameters: | aValue (bool) – The value to set. |
---|
setIsDefaultValue(isDefaultValue)
Defines if the operand has the default value or not
Parameters: | isDefaultValue (bool) – The value to set. |
---|
setValue(aValue)
Set the value of this operand
Parameters: | aValue (any type) – the value to set |
---|
write(aSBSWriter, aXmlNode)
Write recursively the content of the SBSObject into the given xml node.
Parameters: |
|
---|
class mdl.mdloperand.MDLOperands(aOperands=None)
Bases: pysbs.common_interfaces.sbsobject.SBSObject
Class that contains information on the MDL operands as defined in a .sbs file. A MDLOperands provides the list of parameters of a MDLNode or of a MDLAnnotation, and is constituted of a list of: - MDLOperandValue
- MDLOperandStruct
- MDLOperandArray
- Members:
- mOperands (list of
MDLOperand
, optional): list of parameters available on this node
- mOperands (list of
equals(other)
Check if this SBSObject is equivalent to the other SBSObject. Some members may be excluded from this check, the UIDs or GUILayout for instance.
equalsTo(other)
Allows to check if two MDLOperands are identical.
Parameters: | other (MDLOperands ) – the MDLOperands to compare with |
---|---|
Returns: | True if the two MDLOperands has the same parameters, False otherwise |
getAllOperands()
Get the all the operands.
Returns: | A list of MDLOperand |
---|
getAllOperandsValue()
Get all the operand values
Returns: | A list of string and MDLOperand objects |
---|
getNbOperands()
Returns: | The number of operands |
---|
getOperand(aOperandName)
Get the operand with the given name. The name can be: - Simply the name of the operand to get - A set of names separated by ‘/’ to access a sub member of the root member, for instance ‘surface/intensity’ - A name with an operator [] to access a particular item of an operand array, for instance ‘color[2]’
Parameters: | aOperandName (str) – The name of the operand to search |
---|---|
Returns: | The operand as a MDLOperand if found, None otherwise |
getOperandByIndex(aIndex)
Get the operand at the given index
Parameters: |
|
---|---|
Returns: | The operand as a |
getOperandValue(aOperandName)
Get the value of the operand with the given name.
Parameters: |
|
---|---|
Returns: | The operand value as a string (for a MDLOperandValue) or a list of |
getOperandValueByIndex(aIndex)
Get the value of the operand at the given index
Parameters: |
|
---|---|
Returns: | The operand value as a string (for a MDLOperandValue) or a list of |
getUidIsUsed(aUID)
Check if the given uid is already used in the context of this SBSObject.
Parameters: | aUID (str) – UID to check |
---|---|
Returns: | True if the uid is already used, False otherwise |
Raise: | AttributeError if the function getUidIsUsed in not properly overloaded on this SBSObject |
parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
write(aSBSWriter, aXmlNode)
Write recursively the content of the SBSObject into the given xml node.
Parameters: |
|
---|