- 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
package
- Module package aims to define all common interfaces related to the .sbs and .sbsar packages:
class common_interfaces.package.Package(aContext, aFileAbsPath)
Bases: object
Class used to provide a common interface between a SBSDocument
and a SBSArchive
.
- Members:
- mContext (
Context
): Execution context, with alias definition - mFileAbsPath (str): Absolute path of the package
- mDirAbsPath (str): Absolute directory of the package
- mIsAnArchive (bool): True for a .sbsar, False for a .sbs
- mContext (
buildAbsPathFromRelToMePath(aRelPathFromPackage)
Build a path starting from the current package absolute directory and complete it with the given relative path
Parameters: | aRelPathFromPackage (str) – The relative path from the current package |
---|---|
Returns: | The complete path, as a string |
parseDoc(aResolveDependencies = True)
Parse the file content
Returns: | True if succeed |
---|
getObjectFromInternalPath(aPath)
Get the object pointed by the given path, which must references the current package.
Parameters: | aPath (str) – the relative path, starting with ‘pkg://’ |
---|---|
Returns: | the pointed SBSObject if found, None otherwise |
getSBSGraph(aGraphIdentifier)
Get the Graph object with the given identifier
Parameters: | aGraphIdentifier (str) – Identifier of the graph to get |
---|---|
Returns: | A Graph object |
getSBSGraphPkgUrl(aGraph)
Get the path of the given graph relatively to the current package (pkg:///…/aGraphIdentifier)
Parameters: | aGraph (A SBSGraph object) – Identifier of the graph to get |
---|---|
Returns: | A string containing the relative path from the root content to the given graph, None otherwise |
getSBSGraphList()
Get the list of all graphs defined in the .sbs file
Returns: | A list of Graph |
---|
static isAnArchive(aFilePath)
Check if the given filename is a .sbsar package or a .sbs package
Parameters: | aFilePath (str) – Path of the package |
---|---|
Returns: | True if the given path refers to an archive (.sbsar), False otherwise |
static isAPackage(aFilePath)
Check if the given filename is a .sbs file or .sbsar file.
Parameters: | aFilePath (str) – Path of the package |
---|---|
Returns: | True if the given path ends with .sbs or .sbsar, False otherwise |
isInitialized()
Check if the package is correctly initialized (parsed or well setup for future usage)
Returns: | True if the package is initialized, False otherwise |
---|
setInitialized()
Set the package as initialized
static removePackageExtension(aFilePath)
Remove the package extension to the given path (.sbs or .sbsar)
Parameters: | aFilePath (str) – Path of the package |
---|---|
Returns: | The same path without the package extension |
class common_interfaces.package.ParamInput(aUID='', aIdentifier='')
Bases: object
Class used to provide a common interface between a SBSParamInput
and a SBSARInput
.
- Members:
- mIdentifier: Unique identifier of the input
- mUID: Unique Id of the input
getAttribute(aAttributeIdentifier)
Get the given attribute value
Parameters: | aAttributeIdentifier (AttributesEnum ) – the attribute identifier |
---|---|
Returns: | the attribute value if defined, None otherwise |
getDimension()
Get the dimension of the parameter type (1, 2, 3, or 4 values)
Returns: | The dimension as an integer |
---|
formatValueToType(aValue)
Return the given value formatted in the appropriate type for this parameter (bool, int or float)
Parameters: | aValue (string, bool, int, or float) – The value to format |
---|---|
Returns: | The value as a bool, int of float depending on the parameter type |
getGroup()
Get the input GUI group containing this input
Returns: | the GUI group as a string if defined, None otherwise |
---|
getClamp()
Returns: | the clamp as a boolean if defined for this parameter, None if not defined |
---|
getMinValue(asList)
Returns: | the minimum parameter value in the type of the parameter (int or float), None if not defined |
---|
getMaxValue(asList)
Returns: | the maximum parameter value in the type of the parameter (int or float), None if not defined |
---|
getDefaultValue()
Returns: | the default value as a value or a list of values, in the type of the parameter (bool, int or float), None if not defined |
---|
getDropDownList()
Returns: | the map{value(int):label(str)} corresponding to the drop down definition if defined for this parameter, None otherwise. |
---|
getLabels()
Returns: | the list of all labels defined for this parameter, in the right order, as a list of strings. None if not defined |
---|
getStep()
Returns: | the step value (in the type of the parameter) of the widget for this parameter, None if not defined |
---|
getUsages()
Get the usages of this param input
Returns: | the list of SBSUsage defined on this param input |
---|
getWidget()
Returns: | The widget used for this parameter, None if not defined |
---|
hasUsage(aUsage)
Check if the given usage is defined on this param input
Parameters: | aUsage (str or UsageEnum ) – The usage to look for |
---|---|
Returns: | True if the given usage is defined on this param input, False otherwise |
isAnInputImage()
Check if this input is of kind image.
Returns: | True if this is an input image, False otherwise |
---|
isAnInputParameter()
Check if this input is a parameter.
Returns: | True if this is an input parameter, False otherwise |
---|
getType()
Get the type of the input among the list defined in ParamTypeEnum
.
Returns: | The type of the parameter as a ParamTypeEnum |
---|
getIsConnectable()
Returns True if this parameter can be connected to
Returns: | (bool) If this input is connectable |
---|
class common_interfaces.package.GraphOutput(aUID='', aIdentifier='')
Bases: object
Class used to provide a common interface between a SBSGraphOutput
and a SBSAROutput
.
- Members:
- mUID (str): identifier of the input.
- mIdentifier (str): uid of the input.
getAttribute(aAttributeIdentifier)
Get the given attribute value
Parameters: | aAttributeIdentifier (AttributesEnum ) – the attribute identifier |
---|---|
Returns: | the attribute value if defined, None otherwise |
getUsages()
Get the usages of this graph output
Returns: | the list of usages defined on this output |
---|
hasUsage(aUsage)
Check if the given usage is defined on this graph output
Parameters: | aUsage (str or UsageEnum ) – The usage to look for |
---|---|
Returns: | True if the given usage is defined on this param input, False otherwise |
getType()
Get the output type of this GraphOutput.
Returns: | the output type in the format ParamTypeEnum if found, None otherwise |
---|
class common_interfaces.package.Preset(aLabel='', aUsertags='', aPresetInputs=None)
Bases: object
Class used to provide a common interface between a SBSPreset
and a SBSARPreset
.
- Members:
- mLabel (str): label of the preset.
- mPresetInputs (list of
PresetInput
): list of preset inputs.
getPresetInputs()
Get the list of preset inputs defined in this preset
Returns: | a list of PresetInput |
---|
getPresetInput(aInputParam)
Get the preset of the given input parameter
Parameters: | aInputParam (ParamInput or str) – the input parameter as ParamInput or identified by its uid |
---|---|
Returns: | a PresetInput if found, None otherwise |
getPresetInputFromIdentifier(aInputParamIdentifier)
Get the preset of the given input parameter
Parameters: | aInputParamIdentifier (str) – the input parameter identified by its identifier |
---|---|
Returns: | a PresetInput if found, None otherwise |
getInputValue(aInputUID)
Get the value of the given ParamInput in this preset
Parameters: | aInputUID (str) – UID of the input to get |
---|---|
Returns: | the input value in this preset if defined, None otherwise |
class common_interfaces.package.PresetInput(aUID='', aIdentifier='', aValue=None, aType=None)
Bases: object
Class used to provide a common interface between a SBSPresetInput
and a SBSARPresetInput
.
- Members:
- mUID (str): uid of the input parameter targeted by this preset input
- mIdentifier (str): identifier of the input parameter targeted by this preset input
- mValue (
SBSConstantValue
): value, depend on the type. - mType (
SBSParamValue
): type of the input
getValue()
Get the value of this preset input as it is saved in the file
Returns: | the input value in this preset input |
---|
getType()
Get the type of the input among the list defined in ParamTypeEnum
.
Returns: | The type of the parameter as a ParamTypeEnum |
---|
getTypedValue()
Get the value of this preset input correctly formatted in the type of this preset (e.g. bool, int, float, list of int, …)
Returns: | The input value in the appropriate type |
---|