sbsarchive module
Content included in sbsarchive module:
- sbsargraph module: SBSARGraph definition
SBSARGraphSBSARGraph.createMetaDataStr()SBSARGraph.createMetaDataUrl()SBSARGraph.deleteMetaData()SBSARGraph.extractSbsarMetaDataPack()SBSARGraph.extractSbsarMetaDataResource()SBSARGraph.getAllGuiGroups()SBSARGraph.getAllInputGroups()SBSARGraph.getAllInputs()SBSARGraph.getAllInputsInGroup()SBSARGraph.getAllMetaData()SBSARGraph.getAllMetaDataIter()SBSARGraph.getAllPresets()SBSARGraph.getAttribute()SBSARGraph.getGraphOutput()SBSARGraph.getGraphOutputType()SBSARGraph.getGraphOutputWithUsage()SBSARGraph.getGraphOutputs()SBSARGraph.getGraphType()SBSARGraph.getGuiGroup()SBSARGraph.getIdentifier()SBSARGraph.getInput()SBSARGraph.getInputFromUID()SBSARGraph.getInputImage()SBSARGraph.getInputImageWithUsage()SBSARGraph.getInputImages()SBSARGraph.getInputParameter()SBSARGraph.getInputParameterFromUID()SBSARGraph.getInputParameters()SBSARGraph.getMetaData()SBSARGraph.getOutputFormat()SBSARGraph.getOutputMipmaps()SBSARGraph.getPreset()SBSARGraph.getPrimaryInput()SBSARGraph.getSBSMetaDataTree()SBSARGraph.hasIcon()SBSARGraph.isPrimaryInput()SBSARGraph.parse()SBSARGraph.setMetaDataName()SBSARGraph.setMetaDataValue()
SBSARInputSBSARInput.createMetaDataStr()SBSARInput.createMetaDataUrl()SBSARInput.deleteMetaData()SBSARInput.formatValueToType()SBSARInput.getAllMetaData()SBSARInput.getAttribute()SBSARInput.getClamp()SBSARInput.getDefaultValue()SBSARInput.getDimension()SBSARInput.getDropDownList()SBSARInput.getGroup()SBSARInput.getInputGui()SBSARInput.getIsConnectable()SBSARInput.getLabelFalse()SBSARInput.getLabelTrue()SBSARInput.getLabels()SBSARInput.getMaxValue()SBSARInput.getMetaData()SBSARInput.getMinValue()SBSARInput.getSBSMetaDataTree()SBSARInput.getStep()SBSARInput.getType()SBSARInput.getUsages()SBSARInput.getWidget()SBSARInput.hasUsage()SBSARInput.isAnInputImage()SBSARInput.isAnInputParameter()SBSARInput.parse()SBSARInput.setMetaDataName()SBSARInput.setMetaDataValue()
SBSAROutputSBSAROutput.createMetaDataStr()SBSAROutput.createMetaDataUrl()SBSAROutput.deleteMetaData()SBSAROutput.getAllMetaData()SBSAROutput.getAttribute()SBSAROutput.getFormat()SBSAROutput.getMetaData()SBSAROutput.getMipmaps()SBSAROutput.getOutputType()SBSAROutput.getSBSMetaDataTree()SBSAROutput.getType()SBSAROutput.getUsages()SBSAROutput.hasUsage()SBSAROutput.parse()SBSAROutput.setMetaDataName()SBSAROutput.setMetaDataValue()
SBSARPresetSBSARPresetInput
- sbsarmanager module: SBSAR file manipulation
SBSARManagerSBSARManager.addAllPresets()SBSARManager.addIcon()SBSARManager.applyExternalPreset()SBSARManager.applyInternalPreset()SBSARManager.changeInputValueFromName()SBSARManager.deleteAllPresets()SBSARManager.deleteIcon()SBSARManager.exportAllPresets()SBSARManager.save()SBSARManager.saveAllIcons()SBSARManager.saveAs()SBSARManager.saveIcon()
SBSArchive
- sbsarmetadata module: SBSAR file metadata interface
SBSARMetaDataObjectSBSARMetaDataObject.createMetaDataStr()SBSARMetaDataObject.createMetaDataUrl()SBSARMetaDataObject.deleteMetaData()SBSARMetaDataObject.getAllMetaData()SBSARMetaDataObject.getMetaData()SBSARMetaDataObject.getSBSMetaDataTree()SBSARMetaDataObject.setMetaDataName()SBSARMetaDataObject.setMetaDataValue()
- sbsargui module: SBSAR objects related to user interface
SBSARGuiGroupSBSARInputGuiSBSARInputGui.aTweakIdentifierSBSARInputGui.getAttribute()SBSARInputGui.getClamp()SBSARInputGui.getDropDownList()SBSARInputGui.getGroup()SBSARInputGui.getLabelFalse()SBSARInputGui.getLabelTrue()SBSARInputGui.getLabels()SBSARInputGui.getMaxValue()SBSARInputGui.getMinValue()SBSARInputGui.getStep()SBSARInputGui.getUsages()SBSARInputGui.getWidget()SBSARInputGui.hasUsage()SBSARInputGui.isAButton()SBSARInputGui.isAColor()SBSARInputGui.isAComboBox()SBSARInputGui.isAPosition()SBSARInputGui.isASlider()SBSARInputGui.isATransformationForward()SBSARInputGui.isATransformationInverse()SBSARInputGui.isAnAngle()SBSARInputGui.isAnEnumButtons()SBSARInputGui.isAnInputImage()SBSARInputGui.isAnInputParameter()SBSARInputGui.isAnOffset()SBSARInputGui.parse()SBSARInputGui.sAngleWidgetSBSARInputGui.sButtonWidgetSBSARInputGui.sColorWidgetSBSARInputGui.sComboBoxWidgetSBSARInputGui.sEnumButtonsWidgetSBSARInputGui.sImageWidgetSBSARInputGui.sNormalFormatIdentifierSBSARInputGui.sOffsetWidgetSBSARInputGui.sOutputSizeIdentifierSBSARInputGui.sPinIdentifierSBSARInputGui.sPositionWidgetSBSARInputGui.sRandomSeedIdentifierSBSARInputGui.sSliderWidgetSBSARInputGui.sTimeIdentifierSBSARInputGui.sTransformationForwardWidgetSBSARInputGui.sTransformationInverseWidget
SBSAROutputGui
- sbsarguiwidgets module: SBSAR objects related to user interface
- sbsarenum module: SBSAR format enumeration
Module sbsarchive aims to define SBSARObjects that are relative to a sbsar package,
mostly SBSArchive and SBSARGlobalVar.
- class sbsarchive.sbsarchive.SBSARGlobalVar(aInputs=None)
Bases:
SBSARObjectClass that contains information on a graph input as defined in a .sbsar file
- Members:
mInputs (list of
SBSARInput): List of global variables used by the substance.
- parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
- class sbsarchive.sbsarchive.SBSArchive(aContext, aFileAbsPath, aFormatVersion='', aCookerBuild='', aAsmUID='', aContent='', aGlobalVar=None, aGraphs=None, aMetaDataTree=None)
Bases:
SBSARObject,Package,SBSARMetaDataObjectClass used to get information on a .sbsar file. It contains the full description of a substance archive, which correspond to the root node <sbsdescription> of the .sbsar file.
- Members:
mFormatVersion (str): version of the format
mCookerBuild (str): build number of the Cooker
mAsmUID (str): unique identifier of the .sbsasm file
mContent (str): content type. Default to ‘full’
mGlobalVar (
SBSARGlobalVar): global variables used in the substancemGraphs (list of
SBSARGraph): list of graphsmContext (
Context): Execution context, with alias definitionmFileAbsPath (str): Absolute path of the package
mDirAbsPath (str): Absolute directory of the package
- 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
- 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
- createMetaDataStr(aName, aValue)
- createMetaDataUrl(aName, aResource)
- deleteMetaData(aName)
- enterSBSARManager()
- extractSbsarMetaDataJson(aDestFolderPath, aNameToFind='metadata.json')
Extract the metadata json file in the destFolderPath
- Parameters:
sDestFolderPath – a directory path
aNameToFind (str) – json file name present in sbsar, by default it’s metadata.json
- Returns:
a complete file path
- extractSbsarMetaDataPack(aDestFolderPath)
Extract all metadata resource files present in the sbsar.
- Parameters:
aDestFolderPath (str) – a directory path
- Returns:
a complete file path
- extractSbsarMetaDataResource(aDestFolderPath, aSbsarResourcePath)
Extract a resource file present in the sbsar. The sbsar resource path is the sbsar relative path to the resource file.
- Parameters:
aDestFolderPath (str) – a directory path
aSbsarResourcePath (str) – sbsar relative path to the resource file, ex: “resources/1/untitled.blend”
- Returns:
a complete file path
- generateThumbnail(aGraphIdentifier=None, replaceIfExists=False, saveArchiveAs=None)
Generate a 512x512 icon and embeds it to the substance archive. Be sure to write the substance doc with doc.writeDoc() if you do some modifications on it. Use pysbs.batchtools so be sure to have setup correctly your system paths. The thumbnail generation is based on Usage output, if the graph has not the right Usages the thumbnail result can be unexpected.
- Parameters:
aGraphIdentifier – the identifier of the graph to be thumbnail rendered, if None thumbnail will be generated for all the graph
replaceIfExists – if a thumbnail already exits for this graph it will be replaced
saveArchiveAs – save a sbsar copy, if None the current sbsar will be saved
saveThumbnailAs – give a correct directory path to save the thumbnail somewhere otherwise thumbnail file will be deleted
kwargs – arguments to pass to the batchtools.thumbnail.generate, quiet, aSize, aThumbnailSize…
- getAllMetaData()
Get all MetaData under dictionary form.
- Returns:
dict
- getFirstSBSGraph()
getSBSGraph(aGraphIdentifier) Get the first Graph object
- Parameters:
aGraphIdentifier (str) – Identifier of the graph to get
- Returns:
A
Graphobject, a string containing its pkg relative path
- getMetaData(aName)
Get a MetaData by its name
- Parameters:
aName (str)
- Returns:
- getObjectFromInternalPath(aPath)
Get the object pointed by the given path, which must reference the current package.
- Parameters:
aPath (str) – the relative path, starting with ‘pkg:///’
- Returns:
the pointed
SBSARObjectif found, None otherwise
- getSBSGraph(aGraphIdentifier)
Get the SBSARGraph object with the given identifier.
- Parameters:
aGraphIdentifier (str) – Identifier of the graph to get
- Returns:
A
SBSARGraphobject
- getSBSGraphFromPkgUrl(aPkgUrl)
Get the SBSARGraph object with the given package URL.
- Parameters:
aPkgUrl (str) – The graph Url relatively to the package, in the format ‘pkg:///MyGraph’
- Returns:
A
SBSARGraphobject
- getSBSGraphList()
Get the list of all graphs defined in the .sbsar file
- Returns:
A list of
SBSARGraphobject
- getSBSGraphPkgUrl(aGraph)
Get the path of the given graph relatively to the current package (pkg:///…/aGraphIdentifier)
- Parameters:
aGraph (A
SBSGraphobject) – Identifier of the graph to get- Returns:
A string containing the relative path from the root content to the given graph, None otherwise
- getSBSMetaDataTree()
Get the SBSMetaDataTree structure.
- Returns:
class .SBSMetaDataTree
- 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
- 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
- isInitialized()
Check if the package is correctly initialized (parsed or well setup for future usage)
- Returns:
True if the package is initialized, False otherwise
- parse(aContext, aDirAbsPath, aSBSParser, aXmlNode)
Parse recursively the given xml node to retrieve the content of the SBSObject.
- parseDoc(aResolveDependencies=True)
Parse the SBS File content
- Returns:
True if succeed
- 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
- setIcon(aIconAbsPath)
Set the given image as the icon of the graph. The provided image won’t be re-sized to get a thumbnail, so we strongly recommend that you provide the path to a 128x128 image.
- Parameters:
aIconAbsPath (str) – The absolute path of the image to set
aGraphIdentifier (str) – the graph identifier to add the icon
- Returns:
True if succeed False otherwise
- setInitialized()
Set the package as initialized
- setMetaDataName(aMetadata, aName)
- setMetaDataValue(aMetadata, aValue)