- 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
content
Module content provides the definition of the classes SBSGroup
and SBSContent
class substance.content.SBSContent(aGroups=None, aGraphs=None, aResources=None, aResourcesScene=None, aFunctions=None, aMDLGraphs=None, aModelGraphs=None)
Bases: pysbs.common_interfaces.sbsobject.SBSObject
Class that contains information on the content node as defined in a .sbs file. The content is a tree structure of these elements:
- Members:
- mGraphs (list of
SBSGraph
): Graphs in this content - mGroups (list of
SBSGroup
): Folders in this content - mResources (list of
SBSResource
): Resources in this content - mResourcesScene (list of
SBSResourceScene
): Scene resources in this content - mFunctions (list of
SBSFunction
): Functions in this content
- mGraphs (list of
computeUniqueIdentifier(aIdentifier, aSuffixId = 0)
Check if the given identifier is already used and generate a unique identifier if necessary
Returns: | A unique identifier, which is either the given one or a new one with a suffix: identifier_id |
---|
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.
getMDLGraph(aGraphIdentifier, aRecursive = True)
Get the MDL Graph object with the given identifier
Parameters: |
|
---|---|
Returns: | A |
getMDLGraphList(aRecursive = True)
Get the list of MDL graphs defined in this content, including sub-folders or not.
Returns: | A list of MDLGraph objects |
---|
getModelGraph(aGraphIdentifier, aRecursive = True)
Get the Model Graph object with the given identifier
Parameters: |
|
---|---|
Returns: | A |
getModelGraphList(aRecursive=True)
getMDLGraphList(aRecursive = True) Get the list of MDL graphs defined in this content, including sub-folders or not.
Returns: | A list of MDLGraph objects |
---|
getObject(aIdentifier)
Get the object with the given identifier in the content directly under this content.
Parameters: | aIdentifier (str) – the identifier (not uid) of the object to find |
---|---|
Returns: | A SBSObject if found, None otherwise |
getObjectFromUID(aUID, aRecursive=True)
Parse the Groups, Graphs, Resources and Functions to find the object with the given uid
Parameters: |
|
---|---|
Returns: | The |
getObjectInternalPath(aUID, aObjectClass=None, aPath = '')
Get the path of the given object relatively to the current content. Only objects that are directly under a Content node can be found: SBSGroup
SBSGraph
MDLGraph
SBSResource
SBSFunction
Parameters: |
|
---|---|
Returns: | A string containing the relative path from the current content to the given object if found, None otherwise |
getSBSFunction(aFunctionIdentifier, aRecursive = True)
Get the Function object with the given identifier
Parameters: |
|
---|---|
Returns: | A |
getSBSFunctionList(aRecursive = True)
Get the list of functions defined in this content, including sub-folders or not.
Parameters: | aRecursive (bool) – True to parse sub folders, False to search only inside the current Content |
---|---|
Returns: | A list of SBSFunction objects |
getSBSGraph(aGraphIdentifier, aRecursive = True)
Get the Graph object with the given identifier
Parameters: |
|
---|---|
Returns: | A |
getSBSGraphList(aRecursive = True)
Get the list of graphs defined in this content, including sub-folders or not.
Returns: | A list of SBSGraph objects |
---|
getSBSGroup(aGroupIdentifier, aRecursive = True)
Get the Group object with the given identifier
Parameters: |
|
---|---|
Returns: | A |
getSBSGroupInternalPath(aGroupIdentifier, aPath = '')
Get the path of the given group relatively to the current content
Returns: | A string containing the relative path from the current content to the given group, None otherwise |
---|
getSBSGroupList(aRecursive = True)
Get the list of groups defined in this content, including sub-folders or not.
Returns: | A list of SBSGroup objects |
---|
getSBSResource(self, aResourceIdentifier, aRecursive = True)
Get the Resource object with the given identifier
Parameters: |
|
---|---|
Returns: | A |
getSBSResourceList(aRecursive = True, aIncludeSceneResources = True)
Get the list of the resources defined in this content, including sub-folders or not.
Parameters: |
|
---|---|
Returns: | A list of |
getUidIsUsed(aUID)
Parse the Groups, Graphs, Resources and Functions to find a SBSObject with the given uid
Returns: | True if a compnode has this uid |
---|
static isContentChildType(aObject)
Check if the type of given object is one of the types accepted under a SBSContent object
Parameters: | aObject – The object to check |
---|---|
Returns: | True if the type of the given object can be included in a SBSContent |
parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
removeObject(aObject)
Remove the given object from this content
Parameters: | aObject (SBSObject or UID) – The object (group, graph, function, resource) to remove from this content, as a SBSObject or given its UID |
---|---|
Returns: | True if success |
write(aSBSWriter, aXmlNode)
Write recursively the content of the SBSObject into the given xml node.
Parameters: |
|
---|
class substance.content.SBSGroup(aIdentifier='', aUID='', aDesc=None, aContent=None)
Bases: pysbs.common_interfaces.sbsobject.SBSObject
Class that contains information on a group node as defined in a .sbs file. A group correspond to a folder in Substance Designer, and is a hierarchical group of elements.
- Members:
- mIdentifier (str): identifier of the group used in the paths that refer to its sub-objects.
- mUID (str): unique identifier of this group in the package/ context.
- mDesc (str, optional): textual description.
- mContent (
SBSContent
, optional): children of the group.
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.
getContent()
Get the content included in this group
Returns: | The content as a SBSContent object |
---|
getDescription()
Get the group description
Returns: | The textual description of the group |
---|
getMDLGraph(aGraphIdentifier)
Get the MDL Graph object with the given identifier
Parameters: | aGraphIdentifier (str) – Identifier of the graph to get |
---|---|
Returns: | A MDLGraph object |
getMDLGraphList()
Get the list of all MDL graphs included in this group
Parameters: | aRecursive (bool, optional) – True to parse sub folders, False to search only inside the current Group. Default to False |
---|---|
Returns: | A list of SBSGraph object |
getModelGraph(aGraphIdentifier)
Get the MDL Graph object with the given identifier
Parameters: | aGraphIdentifier (str) – Identifier of the graph to get |
---|---|
Returns: | A MDLGraph object |
getModelGraphList(aRecursive=False)
getMDLGraphList() Get the list of all MDL graphs included in this group
Parameters: | aRecursive (bool, optional) – True to parse sub folders, False to search only inside the current Group. Default to False |
---|---|
Returns: | A list of SBSGraph object |
getSBSFunction(aFunctionIdentifier)
Get the Function object with the given identifier
Parameters: | aFunctionIdentifier (str) – Identifier of the function to get |
---|---|
Returns: | A SBSFunction object |
getSBSFunctionList()
Get the list of all functions included in this group
Parameters: | aRecursive (bool, optional) – True to parse sub folders, False to search only inside the current Group. Default to False |
---|---|
Returns: | A list of SBSFunction object |
getSBSGraph(aGraphIdentifier)
Get the Substance graph object with the given identifier
Parameters: | aGraphIdentifier (str) – Identifier of the graph to get |
---|---|
Returns: | A SBSGraph object |
getSBSGraphList()
Get the list of all Substance graphs included in this group
Parameters: | aRecursive (bool, optional) – True to parse sub folders, False to search only inside the current Group. Default to False |
---|---|
Returns: | A list of SBSGraph object |
getSBSGroup(aGroupIdentifier)
Get the Group object with the given identifier
Parameters: | aGroupIdentifier (str) – Identifier of the group (=folder) to get |
---|---|
Returns: | A SBSGroup object |
getSBSGroupList()
Get the list of all groups included in this group
Parameters: | aRecursive (bool, optional) – True to parse sub folders, False to search only inside the current Group. Default to False |
---|---|
Returns: | A list of SBSGroup object |
getSBSResource(self, aResourceIdentifier)
Get the Resource object with the given identifier
Parameters: | aResourceIdentifier (str) – Identifier of the resource to get |
---|---|
Returns: | A SBSResource object |
getSBSResourceList(aRecursive = False, aIncludeSceneResources=True)
Get the list of all the resources included in this group.
Parameters: |
|
---|---|
Returns: | 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.
setDescription(aDescription)
Set the given description
Parameters: | aDescription (str) – the textual group description |
---|
write(aSBSWriter, aXmlNode)
Write recursively the content of the SBSObject into the given xml node.
Parameters: |
|
---|