Sdf module

Summary: The Sdf (Scene Description Foundation) provides foundations for serializing scene description and primitive abstractions for interacting.


Classes:

AngularUnit

AssetPath

Contains an asset path and an optional resolved path.

AssetPathArray

An array of type SdfAssetPath.

AttributeSpec

A subclass of SdfPropertySpec that holds typed data.

AuthoringError

BatchNamespaceEdit

A description of an arbitrarily complex namespace edit.

ChangeBlock

DANGER DANGER DANGER

ChildrenView_Sdf_AttributeChildPolicy_SdfAttributeViewPredicate

ChildrenView_Sdf_AttributeChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfAttributeSpec___

ChildrenView_Sdf_PrimChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPrimSpec___

ChildrenView_Sdf_PropertyChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPropertySpec___

ChildrenView_Sdf_RelationshipChildPolicy_SdfRelationshipViewPredicate

ChildrenView_Sdf_VariantChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSpec___

ChildrenView_Sdf_VariantSetChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSetSpec___

CleanupEnabler

An RAII class which, when an instance is alive, enables scheduling of automatic cleanup of SdfLayers.

DimensionlessUnit

FastUpdateList

FileFormat

Base class for file format implementations.

Int64ListOp

IntListOp

Layer

A scene description container that can combine with other such containers to form simple component assets, and successively larger aggregates.

LayerOffset

Represents a time offset and scale between layers.

LayerTree

A SdfLayerTree is an immutable tree structure representing a sublayer stack and its recursive structure.

LengthUnit

ListEditorProxy_SdfNameKeyPolicy

ListEditorProxy_SdfPathKeyPolicy

ListEditorProxy_SdfPayloadTypePolicy

ListEditorProxy_SdfReferenceTypePolicy

ListOpType

ListProxy_SdfNameKeyPolicy

ListProxy_SdfNameTokenKeyPolicy

ListProxy_SdfPathKeyPolicy

ListProxy_SdfPayloadTypePolicy

ListProxy_SdfReferenceTypePolicy

ListProxy_SdfSubLayerTypePolicy

MapEditProxy_VtDictionary

MapEditProxy_map_SdfPath_SdfPath_less_SdfPath__allocator_pair_SdfPath_const__SdfPath_____

MapEditProxy_map_string_string_less_string__allocator_pair_stringconst__string_____

NamespaceEdit

A single namespace edit.

NamespaceEditDetail

Detailed information about a namespace edit.

Notice

Wrapper class for Sdf notices.

Path

A path value used to locate objects in layers or scenegraphs.

PathArray

An array of type SdfPath.

PathListOp

Payload

Represents a payload and all its meta data.

PayloadListOp

Permission

PrimSpec

Represents a prim description in an SdfLayer object.

PropertySpec

Base class for SdfAttributeSpec and SdfRelationshipSpec.

PseudoRootSpec

Reference

Represents a reference and all its meta data.

ReferenceListOp

RelationshipSpec

A property that contains a reference to one or more SdfPrimSpec instances.

Spec

Base class for all Sdf spec classes.

SpecType

Specifier

StringListOp

TimeCode

Value type that represents a time code.

TimeCodeArray

An array of type SdfTimeCode.

TokenListOp

UInt64ListOp

UIntListOp

UnregisteredValue

Stores a representation of the value for an unregistered metadata field encountered during text layer parsing.

UnregisteredValueListOp

ValueBlock

A special value type that can be used to explicitly author an opinion for an attribute's default value or time sample value that represents having no value.

ValueRoleNames

ValueTypeName

Represents a value type name, i.e. an attribute's type name.

ValueTypeNames

Variability

VariantSetSpec

Represents a coherent set of alternate representations for part of a scene.

VariantSpec

Represents a single variant in a variant set.

Functions:

Find(layerFileName, scenePath)

layerFileName: string scenePath: Path

class pxr.Sdf.AngularUnit

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.AngularUnitDegrees, Sdf.AngularUnitRadians)
class pxr.Sdf.AssetPath

Contains an asset path and an optional resolved path. Asset paths may contain non-control UTF-8 encoded characters. Specifically, U+0000..U+001F (C0 controls), U+007F (delete), and U+0080..U+009F (C1 controls) are disallowed. Attempts to construct asset paths with such characters will issue a TfError and produce the default-constructed empty asset path.

Attributes:

path

resolvedPath

str

property path
property resolvedPath

str

Return the resolved asset path, if any.

Note that SdfAssetPath carries a resolved path only if its creator passed one to the constructor. SdfAssetPath never performs resolution itself.


type : str

Overload for rvalues, move out the asset path.

Type

type

class pxr.Sdf.AssetPathArray

An array of type SdfAssetPath.

class pxr.Sdf.AttributeSpec

A subclass of SdfPropertySpec that holds typed data.

Attributes are typed data containers that can optionally hold any and all of the following:

  • A single default value.

  • An array of knot values describing how the value varies over time.

  • A dictionary of posed values, indexed by name. The values contained in an attribute must all be of the same type. In the Python API the typeName property holds the attribute type. In the C++ API, you can get the attribute type using the GetTypeName() method. In addition, all values, including all knot values, must be the same shape. For information on shapes, see the VtShape class reference in the C++ documentation.

Methods:

ClearColorSpace()

Clears the colorSpace metadata value set on this attribute.

HasColorSpace()

Returns true if this attribute has a colorSpace value authored.

Attributes:

ConnectionPathsKey

DefaultValueKey

DisplayUnitKey

allowedTokens

The allowed value tokens for this property

colorSpace

The color-space in which the attribute value is authored.

connectionPathList

A PathListEditor for the attribute's connection paths.

displayUnit

The display unit for this attribute.

expired

roleName

The roleName for this attribute's typeName.

typeName

The typename of this attribute.

valueType

The value type of this attribute.

ClearColorSpace() None

Clears the colorSpace metadata value set on this attribute.

HasColorSpace() bool

Returns true if this attribute has a colorSpace value authored.

ConnectionPathsKey = 'connectionPaths'
DefaultValueKey = 'default'
DisplayUnitKey = 'displayUnit'
property allowedTokens

The allowed value tokens for this property

property colorSpace

The color-space in which the attribute value is authored.

property connectionPathList

A PathListEditor for the attribute’s connection paths.

The list of the connection paths for this attribute may be modified with this PathListEditor.

A PathListEditor may express a list either as an explicit value or as a set of list editing operations. See GdListEditor for more information.

property displayUnit

The display unit for this attribute.

property expired
property roleName

The roleName for this attribute’s typeName.

property typeName

The typename of this attribute.

property valueType

The value type of this attribute.

class pxr.Sdf.AuthoringError

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.AuthoringErrorUnrecognizedFields, Sdf.AuthoringErrorUnrecognizedSpecType)
class pxr.Sdf.BatchNamespaceEdit

A description of an arbitrarily complex namespace edit.

A SdfBatchNamespaceEdit object describes zero or more namespace edits. Various types providing a namespace will allow the edits to be applied in a single operation and also allow testing if this will work.

Clients are encouraged to group several edits into one object because that may allow more efficient processing of the edits. If, for example, you need to reparent several prims it may be faster to add all of the reparents to a single SdfBatchNamespaceEdit and apply them at once than to apply each separately.

Objects that allow applying edits are free to apply the edits in any way and any order they see fit but they should guarantee that the resulting namespace will be as if each edit was applied one at a time in the order they were added.

Note that the above rule permits skipping edits that have no effect or generate a non-final state. For example, if renaming A to B then to C we could just rename A to C. This means notices may be elided. However, implementations must not elide notices that contain information about any edit that clients must be able to know but otherwise cannot determine.

Methods:

Add(edit)

Add a namespace edit.

Process(processedEdits, hasObjectAtPath, ...)

Validate the edits and generate a possibly more efficient edit sequence.

Attributes:

edits

list[SdfNamespaceEdit]

Add(edit) None

Add a namespace edit.

Parameters

edit (NamespaceEdit) –


Add(currentPath, newPath, index) -> None

Add a namespace edit.

Parameters
  • currentPath (NamespaceEdit.Path) –

  • newPath (NamespaceEdit.Path) –

  • index (NamespaceEdit.Index) –

Process(processedEdits, hasObjectAtPath, canEdit, details, fixBackpointers) bool

Validate the edits and generate a possibly more efficient edit sequence.

Edits are treated as if they were performed one at time in sequence, therefore each edit occurs in the namespace resulting from all previous edits.

Editing the descendants of the object in each edit is implied. If an object is removed then the new path will be empty. If an object is removed after being otherwise edited, the other edits will be processed and included in processedEdits followed by the removal. This allows clients to fixup references to point to the object’s final location prior to removal.

This function needs help to determine if edits are allowed. The callbacks provide that help. hasObjectAtPath returns true iff there’s an object at the given path. This path will be in the original namespace not any intermediate or final namespace. canEdit returns true iff the object at the current path can be namespace edited to the new path, ignoring whether an object already exists at the new path. Both paths are in the original namespace. If it returns false it should set the string to the reason why the edit isn’t allowed. It should not write either path to the string.

If hasObjectAtPath is invalid then this assumes objects exist where they should and don’t exist where they shouldn’t. Use this with care. If canEdit in invalid then it’s assumed all edits are valid.

If fixBackpointers is true then target/connection paths are expected to be in the intermediate namespace resulting from all previous edits. If false and any current or new path contains a target or connection path that has been edited then this will generate an error.

This method returns true if the edits are allowed and sets processedEdits to a new edit sequence at least as efficient as the input sequence. If not allowed it returns false and appends reasons why not to details .

Parameters
  • processedEdits (list[SdfNamespaceEdit]) –

  • hasObjectAtPath (HasObjectAtPath) –

  • canEdit (CanEdit) –

  • details (list[SdfNamespaceEditDetail]) –

  • fixBackpointers (bool) –

property edits

list[SdfNamespaceEdit]

Returns the edits.

Type

type

class pxr.Sdf.ChangeBlock

DANGER DANGER DANGER

Please make sure you have read and fully understand the issues below before using a changeblock! They are very easy to use in an unsafe way that could make the system crash or corrupt data. If you have any questions, please contact the USD team, who would be happy to help!

SdfChangeBlock provides a way to group a round of related changes to scene description in order to process them more efficiently.

Normally, Sdf sends notification immediately as changes are made so that downstream representations like UsdStage can update accordingly.

However, sometimes it can be advantageous to group a series of Sdf changes into a batch so that they can be processed more efficiently, with a single round of change processing. An example might be when setting many avar values on a model at the same time.

Opening a changeblock tells Sdf to delay sending notification about changes until the outermost changeblock is exited. Until then, Sdf internally queues up the notification it needs to send.

It is not safe to use Usd or other downstream API while a changeblock is open!! This is because those derived representations will not have had a chance to update while the changeblock is open. Not only will their view of the world be stale, it could be unsafe to even make queries from, since they may be holding onto expired handles to Sdf objects that no longer exist. If you need to make a bunch of changes to scene description, the best approach is to build a list of necessary changes that can be performed directly via the Sdf API, then submit those all inside a changeblock without talking to any downstream modules. For example, this is how many mutators in Usd that operate on more than one field or Spec work.

class pxr.Sdf.ChildrenView_Sdf_AttributeChildPolicy_SdfAttributeViewPredicate

Classes:

ChildrenView_Sdf_AttributeChildPolicy_SdfAttributeViewPredicate_Iterator

ChildrenView_Sdf_AttributeChildPolicy_SdfAttributeViewPredicate_KeyIterator

ChildrenView_Sdf_AttributeChildPolicy_SdfAttributeViewPredicate_ValueIterator

Methods:

get

index

items

keys

values

class ChildrenView_Sdf_AttributeChildPolicy_SdfAttributeViewPredicate_Iterator
class ChildrenView_Sdf_AttributeChildPolicy_SdfAttributeViewPredicate_KeyIterator
class ChildrenView_Sdf_AttributeChildPolicy_SdfAttributeViewPredicate_ValueIterator
get()
index()
items()
keys()
values()
class pxr.Sdf.ChildrenView_Sdf_AttributeChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfAttributeSpec___

Classes:

ChildrenView_Sdf_AttributeChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfAttributeSpec____Iterator

ChildrenView_Sdf_AttributeChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfAttributeSpec____KeyIterator

ChildrenView_Sdf_AttributeChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfAttributeSpec____ValueIterator

Methods:

get

index

items

keys

values

class ChildrenView_Sdf_AttributeChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfAttributeSpec____Iterator
class ChildrenView_Sdf_AttributeChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfAttributeSpec____KeyIterator
class ChildrenView_Sdf_AttributeChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfAttributeSpec____ValueIterator
get()
index()
items()
keys()
values()
class pxr.Sdf.ChildrenView_Sdf_PrimChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPrimSpec___

Classes:

ChildrenView_Sdf_PrimChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPrimSpec____Iterator

ChildrenView_Sdf_PrimChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPrimSpec____KeyIterator

ChildrenView_Sdf_PrimChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPrimSpec____ValueIterator

Methods:

get

index

items

keys

values

class ChildrenView_Sdf_PrimChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPrimSpec____Iterator
class ChildrenView_Sdf_PrimChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPrimSpec____KeyIterator
class ChildrenView_Sdf_PrimChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPrimSpec____ValueIterator
get()
index()
items()
keys()
values()
class pxr.Sdf.ChildrenView_Sdf_PropertyChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPropertySpec___

Classes:

ChildrenView_Sdf_PropertyChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPropertySpec____Iterator

ChildrenView_Sdf_PropertyChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPropertySpec____KeyIterator

ChildrenView_Sdf_PropertyChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPropertySpec____ValueIterator

Methods:

get

index

items

keys

values

class ChildrenView_Sdf_PropertyChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPropertySpec____Iterator
class ChildrenView_Sdf_PropertyChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPropertySpec____KeyIterator
class ChildrenView_Sdf_PropertyChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfPropertySpec____ValueIterator
get()
index()
items()
keys()
values()
class pxr.Sdf.ChildrenView_Sdf_RelationshipChildPolicy_SdfRelationshipViewPredicate

Classes:

ChildrenView_Sdf_RelationshipChildPolicy_SdfRelationshipViewPredicate_Iterator

ChildrenView_Sdf_RelationshipChildPolicy_SdfRelationshipViewPredicate_KeyIterator

ChildrenView_Sdf_RelationshipChildPolicy_SdfRelationshipViewPredicate_ValueIterator

Methods:

get

index

items

keys

values

class ChildrenView_Sdf_RelationshipChildPolicy_SdfRelationshipViewPredicate_Iterator
class ChildrenView_Sdf_RelationshipChildPolicy_SdfRelationshipViewPredicate_KeyIterator
class ChildrenView_Sdf_RelationshipChildPolicy_SdfRelationshipViewPredicate_ValueIterator
get()
index()
items()
keys()
values()
class pxr.Sdf.ChildrenView_Sdf_VariantChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSpec___

Classes:

ChildrenView_Sdf_VariantChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSpec____Iterator

ChildrenView_Sdf_VariantChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSpec____KeyIterator

ChildrenView_Sdf_VariantChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSpec____ValueIterator

Methods:

get

index

items

keys

values

class ChildrenView_Sdf_VariantChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSpec____Iterator
class ChildrenView_Sdf_VariantChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSpec____KeyIterator
class ChildrenView_Sdf_VariantChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSpec____ValueIterator
get()
index()
items()
keys()
values()
class pxr.Sdf.ChildrenView_Sdf_VariantSetChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSetSpec___

Classes:

ChildrenView_Sdf_VariantSetChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSetSpec____Iterator

ChildrenView_Sdf_VariantSetChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSetSpec____KeyIterator

ChildrenView_Sdf_VariantSetChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSetSpec____ValueIterator

Methods:

get

index

items

keys

values

class ChildrenView_Sdf_VariantSetChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSetSpec____Iterator
class ChildrenView_Sdf_VariantSetChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSetSpec____KeyIterator
class ChildrenView_Sdf_VariantSetChildPolicy_SdfChildrenViewTrivialPredicate_SdfHandle_SdfVariantSetSpec____ValueIterator
get()
index()
items()
keys()
values()
class pxr.Sdf.CleanupEnabler

An RAII class which, when an instance is alive, enables scheduling of automatic cleanup of SdfLayers.

Any affected specs which no longer contribute to the scene will be removed when the last SdfCleanupEnabler instance goes out of scope. Note that for this purpose, SdfPropertySpecs are removed if they have only required fields (see SdfPropertySpecs::HasOnlyRequiredFields), but only if the property spec itself was affected by an edit that left it with only required fields. This will have the effect of uninstantiating on-demand attributes. For example, if its parent prim was affected by an edit that left it otherwise inert, it will not be removed if it contains an SdfPropertySpec with only required fields, but if the property spec itself is edited leaving it with only required fields, it will be removed, potentially uninstantiating it if it’s an on-demand property.

SdfCleanupEnablers are accessible in both C++ and Python.

/// SdfCleanupEnabler can be used in the following manner:

{
    SdfCleanupEnabler enabler;

    // Perform any action that might otherwise leave inert specs around,
    // such as removing info from properties or prims, or removing name
    // children. i.e:
    primSpec->ClearInfo(SdfFieldKeys->Default);

    // When enabler goes out of scope on the next line, primSpec will
    // be removed if it has been left as an empty over.
}
class pxr.Sdf.DimensionlessUnit

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.DimensionlessUnitPercent, Sdf.DimensionlessUnitDefault)
class pxr.Sdf.FastUpdateList

Classes:

FastUpdate

Attributes:

fastUpdates

hasCompositionDependents

class FastUpdate

Attributes:

path

value

property path
property value
property fastUpdates
property hasCompositionDependents
class pxr.Sdf.FileFormat

Base class for file format implementations.

Classes:

Tokens

Methods:

CanRead(file)

Returns true if file can be read by this format.

FindAllFileFormatExtensions

classmethod FindAllFileFormatExtensions() -> set[str]

FindByExtension

classmethod FindByExtension(path, target) -> FileFormat

FindById

classmethod FindById(formatId) -> FileFormat

GetFileExtension

classmethod GetFileExtension(s) -> str

GetFileExtensions()

Returns a list of extensions that this format supports.

IsPackage()

Returns true if this file format is a package containing other assets.

IsSupportedExtension(extension)

Returns true if extension matches one of the extensions returned by GetFileExtensions.

Attributes:

expired

True if this object has expired, False otherwise.

fileCookie

str

formatId

str

primaryFileExtension

str

target

str

class Tokens

Attributes:

TargetArg

TargetArg = 'target'
CanRead(file) bool

Returns true if file can be read by this format.

Parameters

file (str) –

static FindAllFileFormatExtensions()

classmethod FindAllFileFormatExtensions() -> set[str]

Returns a set containing the extension(s) corresponding to all registered file formats.

static FindByExtension()

classmethod FindByExtension(path, target) -> FileFormat

Returns the file format instance that supports the extension for path .

If a format with a matching extension is not found, this returns a null file format pointer.

An extension may be handled by multiple file formats, but each with a different target. In such cases, if no target is specified, the file format that is registered as the primary plugin will be returned. Otherwise, the file format whose target matches target will be returned.

Parameters
  • path (str) –

  • target (str) –


FindByExtension(path, args) -> FileFormat

Returns a file format instance that supports the extension for path and whose target matches one of those specified by the given args .

If the args specify no target, then the file format that is registered as the primary plugin will be returned. If a format with a matching extension is not found, this returns a null file format pointer.

Parameters
  • path (str) –

  • args (FileFormatArguments) –

static FindById()

classmethod FindById(formatId) -> FileFormat

Returns the file format instance with the specified formatId identifier.

If a format with a matching identifier is not found, this returns a null file format pointer.

Parameters

formatId (str) –

static GetFileExtension()

classmethod GetFileExtension(s) -> str

Returns the file extension for path or file name s , without the leading dot character.

Parameters

s (str) –

GetFileExtensions() list[str]

Returns a list of extensions that this format supports.

IsPackage() bool

Returns true if this file format is a package containing other assets.

IsSupportedExtension(extension) bool

Returns true if extension matches one of the extensions returned by GetFileExtensions.

Parameters

extension (str) –

property expired

True if this object has expired, False otherwise.

property fileCookie

str

Returns the cookie to be used when writing files with this format.

Type

type

property formatId

str

Returns the format identifier.

Type

type

property primaryFileExtension

str

Returns the primary file extension for this format.

This is the extension that is reported for layers using this file format.

Type

type

property target

str

Returns the target for this file format.

Type

type

class pxr.Sdf.Int64ListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.IntListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.Layer

A scene description container that can combine with other such containers to form simple component assets, and successively larger aggregates. The contents of an SdfLayer adhere to the SdfData data model. A layer can be ephemeral, or be an asset accessed and serialized through the ArAsset and ArResolver interfaces.

The SdfLayer class provides a consistent API for accesing and serializing scene description, using any data store provided by Ar plugins. Sdf itself provides a UTF-8 text format for layers identified by the”.sdf”identifier extension, but via the SdfFileFormat abstraction, allows downstream modules and plugins to adapt arbitrary data formats to the SdfData/SdfLayer model.

The FindOrOpen() method returns a new SdfLayer object with scene description from any supported asset format. Once read, a layer remembers which asset it was read from. The Save() method saves the layer back out to the original asset. You can use the Export() method to write the layer to a different location. You can use the GetIdentifier() method to get the layer’s Id or GetRealPath() to get the resolved, full URI.

Layers can have a timeCode range (startTimeCode and endTimeCode). This range represents the suggested playback range, but has no impact on the extent of the animation data that may be stored in the layer. The metadatum”timeCodesPerSecond”is used to annotate how the time ordinate for samples contained in the file scales to seconds. For example, if timeCodesPerSecond is 24, then a sample at time ordinate 24 should be viewed exactly one second after the sample at time ordinate 0.

Classes:

DetachedLayerRules

Methods:

AddToMutedLayers

classmethod AddToMutedLayers(mutedPath) -> None

Apply(arg1)

Performs a batch of namespace edits.

ApplyRootPrimOrder(vec)

Reorders the given list of prim names according to the reorder rootPrims statement for this layer.

CanApply(arg1, details)

Check if a batch of namespace edits will succeed.

Clear()

Clears the layer of all content.

ClearColorConfiguration()

Clears the color configuration metadata authored in this layer.

ClearColorManagementSystem()

Clears the'colorManagementSystem'metadata authored in this layer.

ClearCustomLayerData()

Clears out the CustomLayerData dictionary associated with this layer.

ClearDefaultPrim()

Clear the default prim metadata for this layer.

ClearEndTimeCode()

Clear the endTimeCode opinion.

ClearFramePrecision()

Clear the framePrecision opinion.

ClearFramesPerSecond()

Clear the framesPerSecond opinion.

ClearOwner()

Clear the owner opinion.

ClearSessionOwner()

ClearStartTimeCode()

Clear the startTimeCode opinion.

ClearTimeCodesPerSecond()

Clear the timeCodesPerSecond opinion.

ComputeAbsolutePath(assetPath)

Returns the path to the asset specified by assetPath using this layer to anchor the path if necessary.

CreateAnonymous

classmethod CreateAnonymous(tag, args) -> Layer

CreateIdentifier

classmethod CreateIdentifier(layerPath, arguments) -> str

CreateNew

classmethod CreateNew(identifier, args) -> Layer

DumpLayerInfo

Debug helper to examine content of the current layer registry and the asset/real path of all layers in the registry.

EraseTimeSample(path, time)

param path

Export(filename, comment, args)

Exports this layer to a file.

ExportToString

Returns the string representation of the layer.

Find(filename)

filename : string

FindOrOpen

classmethod FindOrOpen(identifier, args) -> Layer

FindOrOpenRelativeToLayer

classmethod FindOrOpenRelativeToLayer(anchor, identifier, args) -> Layer

FindRelativeToLayer

Returns the open layer with the given filename, or None.

GetAssetInfo()

Returns resolve information from the last time the layer identifier was resolved.

GetAssetName()

Returns the asset name associated with this layer.

GetAttributeAtPath(path)

Returns an attribute at the given path .

GetBracketingTimeSamples(time, tLower, tUpper)

param time

GetBracketingTimeSamplesForPath(path, time, ...)

param path

GetCompositionAssetDependencies()

Return paths of all assets this layer depends on due to composition fields.

GetDetachedLayerRules

classmethod GetDetachedLayerRules() -> DetachedLayerRules

GetDisplayName()

Returns the layer's display name.

GetDisplayNameFromIdentifier

classmethod GetDisplayNameFromIdentifier(identifier) -> str

GetExternalAssetDependencies()

Returns a set of resolved paths to all external asset dependencies the layer needs to generate its contents.

GetExternalReferences

Return a list of asset paths for this layer.

GetFileFormat()

Returns the file format used by this layer.

GetFileFormatArguments()

Returns the file format-specific arguments used during the construction of this layer.

GetLoadedLayers

Return list of loaded layers.

GetMutedLayers

Return list of muted layers.

GetNumTimeSamplesForPath(path)

param path

GetObjectAtPath(path)

Returns the object at the given path .

GetPrimAtPath(path)

Returns the prim at the given path .

GetPropertyAtPath(path)

Returns a property at the given path .

GetRelationshipAtPath(path)

Returns a relationship at the given path .

HasColorConfiguration()

Returns true if color configuration metadata is set in this layer.

HasColorManagementSystem()

Returns true if colorManagementSystem metadata is set in this layer.

HasCustomLayerData()

Returns true if CustomLayerData is authored on the layer.

HasDefaultPrim()

Return true if the default prim metadata is set in this layer.

HasEndTimeCode()

Returns true if the layer has an endTimeCode opinion.

HasFramePrecision()

Returns true if the layer has a frames precision opinion.

HasFramesPerSecond()

Returns true if the layer has a frames per second opinion.

HasOwner()

Returns true if the layer has an owner opinion.

HasSessionOwner()

Returns true if the layer has a session owner opinion.

HasStartTimeCode()

Returns true if the layer has a startTimeCode opinion.

HasTimeCodesPerSecond()

Returns true if the layer has a timeCodesPerSecond opinion.

Import(layerPath)

Imports the content of the given layer path, replacing the content of the current layer.

ImportFromString(string)

Reads this layer from the given string.

IsAnonymousLayerIdentifier

classmethod IsAnonymousLayerIdentifier(identifier) -> bool

IsDetached()

Returns true if this layer is detached from its serialized data store, false otherwise.

IsIncludedByDetachedLayerRules

classmethod IsIncludedByDetachedLayerRules(identifier) -> bool

IsMuted

classmethod IsMuted() -> bool

ListAllTimeSamples()

ListTimeSamplesForPath(path)

param path

New

classmethod New(fileFormat, identifier, args) -> Layer

OpenAsAnonymous

classmethod OpenAsAnonymous(layerPath, metadataOnly, tag) -> Layer

QueryTimeSample(path, time, value)

param path

Reload(force)

Reloads the layer from its persistent representation.

ReloadLayers

classmethod ReloadLayers(layers, force) -> bool

RemoveFromMutedLayers

classmethod RemoveFromMutedLayers(mutedPath) -> None

RemoveInertSceneDescription()

Removes all scene description in this layer that does not affect the scene.

Save(force)

Returns true if successful, false if an error occurred.

ScheduleRemoveIfInert(spec)

Cause spec to be removed if it no longer affects the scene when the last change block is closed, or now if there are no change blocks.

SetDetachedLayerRules

classmethod SetDetachedLayerRules(mask) -> None

SetMuted(muted)

Mutes the current layer if muted is true , and unmutes it otherwise.

SetPermissionToEdit(allow)

Sets permission to edit.

SetPermissionToSave(allow)

Sets permission to save.

SetTimeSample(path, time, value)

param path

SplitIdentifier

classmethod SplitIdentifier(identifier, layerPath, arguments) -> bool

StreamsData()

Returns true if this layer streams data from its serialized data store on demand, false otherwise.

TransferContent(layer)

Copies the content of the given layer into this layer.

Traverse(path, func)

param path

UpdateAssetInfo()

Update layer asset information.

UpdateCompositionAssetDependency(...)

Updates the asset path of a composation dependency in this layer.

UpdateExternalReference(oldAssetPath, ...)

Deprecated

Attributes:

ColorConfigurationKey

ColorManagementSystemKey

CommentKey

DocumentationKey

EndFrameKey

EndTimeCodeKey

FramePrecisionKey

FramesPerSecondKey

HasOwnedSubLayers

OwnerKey

SessionOwnerKey

StartFrameKey

StartTimeCodeKey

TimeCodesPerSecondKey

anonymous

bool

colorConfiguration

The color configuration asset-path of this layer.

colorManagementSystem

The name of the color management system used to interpret the colorConfiguration asset.

comment

The layer's comment string.

customLayerData

The customLayerData dictionary associated with this layer.

defaultPrim

The layer's default reference target token.

dirty

bool

documentation

The layer's documentation string.

empty

bool

endTimeCode

The end timeCode of this layer.

expired

True if this object has expired, False otherwise.

externalReferences

Return unique list of asset paths of external references for given layer.

fileExtension

The layer's file extension.

framePrecision

The number of digits of precision used in times in this layer.

framesPerSecond

The frames per second used in this layer.

hasOwnedSubLayers

Whether this layer's sub layers are expected to have owners.

identifier

The layer's identifier.

owner

The owner of this layer.

permissionToEdit

Return true if permitted to be edited (modified), false otherwise.

permissionToSave

Return true if permitted to be saved, false otherwise.

pseudoRoot

The pseudo-root of the layer.

realPath

The layer's resolved path.

repositoryPath

The layer's associated repository path

resolvedPath

The layer's resolved path.

rootPrimOrder

Get/set the list of root prim names for this layer's 'reorder rootPrims' statement.

rootPrims

The root prims of this layer, as an ordered dictionary.

sessionOwner

The session owner of this layer.

startTimeCode

The start timeCode of this layer.

subLayerOffsets

The sublayer offsets of this layer, as a list.

subLayerPaths

The sublayer paths of this layer, as a list.

timeCodesPerSecond

The timeCodes per second used in this layer.

version

The layer's version.

class DetachedLayerRules

Methods:

Exclude

GetExcluded

GetIncluded

Include

IncludeAll

IncludedAll

IsIncluded

Exclude()
GetExcluded()
GetIncluded()
Include()
IncludeAll()
IncludedAll()
IsIncluded()
static AddToMutedLayers()

classmethod AddToMutedLayers(mutedPath) -> None

Add the specified path to the muted layers set.

Parameters

mutedPath (str) –

Apply(arg1) bool

Performs a batch of namespace edits.

Returns true on success and false on failure. On failure, no namespace edits will have occurred.

Parameters

arg1 (BatchNamespaceEdit) –

ApplyRootPrimOrder(vec) None

Reorders the given list of prim names according to the reorder rootPrims statement for this layer.

This routine employs the standard list editing operations for ordered items in a ListEditor.

Parameters

vec (list[str]) –

CanApply(arg1, details) NamespaceEditDetail.Result

Check if a batch of namespace edits will succeed.

This returns SdfNamespaceEditDetail::Okay if they will succeed as a batch, SdfNamespaceEditDetail::Unbatched if the edits will succeed but will be applied unbatched, and SdfNamespaceEditDetail::Error if they will not succeed. No edits will be performed in any case.

If details is not None and the method does not return Okay then details about the problems will be appended to details . A problem may cause the method to return early, so details may not list every problem.

Note that Sdf does not track backpointers so it’s unable to fix up targets/connections to namespace edited objects. Clients must fix those to prevent them from falling off. In addition, this method will report failure if any relational attribute with a target to a namespace edited object is subsequently edited (in the same batch). Clients should perform edits on relational attributes first.

Clients may wish to report unbatch details to the user to confirm that the edits should be applied unbatched. This will give the user a chance to correct any problems that cause batching to fail and try again.

Parameters
Clear() None

Clears the layer of all content.

This restores the layer to a state as if it had just been created with CreateNew() . This operation is Undo-able.

The fileName and whether journaling is enabled are not affected by this method.

ClearColorConfiguration() None

Clears the color configuration metadata authored in this layer.

HasColorConfiguration() , SetColorConfiguration()

ClearColorManagementSystem() None

Clears the’colorManagementSystem’metadata authored in this layer.

HascolorManagementSystem(), SetColorManagementSystem()

ClearCustomLayerData() None

Clears out the CustomLayerData dictionary associated with this layer.

ClearDefaultPrim() None

Clear the default prim metadata for this layer.

See GetDefaultPrim() and SetDefaultPrim() .

ClearEndTimeCode() None

Clear the endTimeCode opinion.

ClearFramePrecision() None

Clear the framePrecision opinion.

ClearFramesPerSecond() None

Clear the framesPerSecond opinion.

ClearOwner() None

Clear the owner opinion.

ClearSessionOwner() None
ClearStartTimeCode() None

Clear the startTimeCode opinion.

ClearTimeCodesPerSecond() None

Clear the timeCodesPerSecond opinion.

ComputeAbsolutePath(assetPath) str

Returns the path to the asset specified by assetPath using this layer to anchor the path if necessary.

Returns assetPath if it’s empty or an anonymous layer identifier.

This method can be used on asset paths that are authored in this layer to create new asset paths that can be copied to other layers. These new asset paths should refer to the same assets as the original asset paths. For example, if the underlying ArResolver is filesystem-based and assetPath is a relative filesystem path, this method might return the absolute filesystem path using this layer’s location as the anchor.

The returned path should in general not be assumed to be an absolute filesystem path or any other specific form. It is”absolute”in that it should resolve to the same asset regardless of what layer it’s authored in.

Parameters

assetPath (str) –

static CreateAnonymous()

classmethod CreateAnonymous(tag, args) -> Layer

Creates a new anonymous layer with an optional tag .

An anonymous layer is a layer with a system assigned identifier, that cannot be saved to disk via Save() . Anonymous layers have an identifier, but no real path or other asset information fields.

Anonymous layers may be tagged, which can be done to aid debugging subsystems that make use of anonymous layers. The tag becomes the display name of an anonymous layer, and is also included in the generated identifier. Untagged anonymous layers have an empty display name.

Additional arguments may be supplied via the args parameter. These arguments may control behavior specific to the layer’s file format.

Parameters
  • tag (str) –

  • args (FileFormatArguments) –


CreateAnonymous(tag, format, args) -> Layer

Create an anonymous layer with a specific format .

Parameters
  • tag (str) –

  • format (FileFormat) –

  • args (FileFormatArguments) –

static CreateIdentifier()

classmethod CreateIdentifier(layerPath, arguments) -> str

Joins the given layer path and arguments into an identifier.

Parameters
  • layerPath (str) –

  • arguments (FileFormatArguments) –

static CreateNew()

classmethod CreateNew(identifier, args) -> Layer

Creates a new empty layer with the given identifier.

Additional arguments may be supplied via the args parameter. These arguments may control behavior specific to the layer’s file format.

Parameters
  • identifier (str) –

  • args (FileFormatArguments) –


CreateNew(fileFormat, identifier, args) -> Layer

Creates a new empty layer with the given identifier for a given file format class.

This function has the same behavior as the other CreateNew function, but uses the explicitly-specified fileFormat instead of attempting to discern the format from identifier .

Parameters
  • fileFormat (FileFormat) –

  • identifier (str) –

  • args (FileFormatArguments) –

static DumpLayerInfo()

Debug helper to examine content of the current layer registry and the asset/real path of all layers in the registry.

EraseTimeSample(path, time) None
Parameters
  • path (Path) –

  • time (float) –

Export(filename, comment, args) bool

Exports this layer to a file.

Returns true if successful, false if an error occurred.

If comment is not empty, the layer gets exported with the given comment. Additional arguments may be supplied via the args parameter. These arguments may control behavior specific to the exported layer’s file format.

Note that the file name or comment of the original layer is not updated. This only saves a copy of the layer to the given filename. Subsequent calls to Save() will still save the layer to it’s previously remembered file name.

Parameters
  • filename (str) –

  • comment (str) –

  • args (FileFormatArguments) –

ExportToString()

Returns the string representation of the layer.

static Find(filename) LayerPtr

filename : string

Returns the open layer with the given filename, or None. Note that this is a static class method.

static FindOrOpen()

classmethod FindOrOpen(identifier, args) -> Layer

Return an existing layer with the given identifier and args , or else load it.

If the layer can’t be found or loaded, an error is posted and a null layer is returned.

Arguments in args will override any arguments specified in identifier .

Parameters
  • identifier (str) –

  • args (FileFormatArguments) –

static FindOrOpenRelativeToLayer()

classmethod FindOrOpenRelativeToLayer(anchor, identifier, args) -> Layer

Return an existing layer with the given identifier and args , or else load it.

The given identifier will be resolved relative to the anchor layer. If the layer can’t be found or loaded, an error is posted and a null layer is returned.

If the anchor layer is invalid, issues a coding error and returns a null handle.

Arguments in args will override any arguments specified in identifier .

Parameters
  • anchor (Layer) –

  • identifier (str) –

  • args (FileFormatArguments) –

static FindRelativeToLayer()

Returns the open layer with the given filename, or None. If the filename is a relative path then it’s found relative to the given layer. Note that this is a static class method.

GetAssetInfo() VtValue

Returns resolve information from the last time the layer identifier was resolved.

GetAssetName() str

Returns the asset name associated with this layer.

GetAttributeAtPath(path) AttributeSpec

Returns an attribute at the given path .

Returns None if there is no attribute at path . This is simply a more specifically typed version of GetObjectAtPath() .

Parameters

path (Path) –

GetBracketingTimeSamples(time, tLower, tUpper) bool
Parameters
  • time (float) –

  • tLower (float) –

  • tUpper (float) –

GetBracketingTimeSamplesForPath(path, time, tLower, tUpper) bool
Parameters
  • path (Path) –

  • time (float) –

  • tLower (float) –

  • tUpper (float) –

GetCompositionAssetDependencies() set[str]

Return paths of all assets this layer depends on due to composition fields.

This includes the paths of all layers referred to by reference, payload, and sublayer fields in this layer. This function only returns direct composition dependencies of this layer, i.e. it does not recurse to find composition dependencies from its dependent layer assets.

static GetDetachedLayerRules()

classmethod GetDetachedLayerRules() -> DetachedLayerRules

Returns the current rules for the detached layer set.

GetDisplayName() str

Returns the layer’s display name.

The display name is the base filename of the identifier.

static GetDisplayNameFromIdentifier()

classmethod GetDisplayNameFromIdentifier(identifier) -> str

Returns the display name for the given identifier , using the same rules as GetDisplayName.

Parameters

identifier (str) –

GetExternalAssetDependencies() set[str]

Returns a set of resolved paths to all external asset dependencies the layer needs to generate its contents.

These are additional asset dependencies that are determined by the layer’s file format and will be consulted during Reload() when determining if the layer needs to be reloaded. This specifically does not include dependencies related to composition, i.e. this will not include assets from references, payloads, and sublayers.

GetExternalReferences()

Return a list of asset paths for this layer.

GetFileFormat() FileFormat

Returns the file format used by this layer.

GetFileFormatArguments() FileFormatArguments

Returns the file format-specific arguments used during the construction of this layer.

static GetLoadedLayers()

Return list of loaded layers.

static GetMutedLayers()

Return list of muted layers.

GetNumTimeSamplesForPath(path) int
Parameters

path (Path) –

GetObjectAtPath(path) Spec

Returns the object at the given path .

There is no distinction between an absolute and relative path at the SdLayer level.

Returns None if there is no object at path .

Parameters

path (Path) –

GetPrimAtPath(path) PrimSpec

Returns the prim at the given path .

Returns None if there is no prim at path . This is simply a more specifically typed version of GetObjectAtPath() .

Parameters

path (Path) –

GetPropertyAtPath(path) PropertySpec

Returns a property at the given path .

Returns None if there is no property at path . This is simply a more specifically typed version of GetObjectAtPath() .

Parameters

path (Path) –

GetRelationshipAtPath(path) RelationshipSpec

Returns a relationship at the given path .

Returns None if there is no relationship at path . This is simply a more specifically typed version of GetObjectAtPath() .

Parameters

path (Path) –

HasColorConfiguration() bool

Returns true if color configuration metadata is set in this layer.

GetColorConfiguration() , SetColorConfiguration()

HasColorManagementSystem() bool

Returns true if colorManagementSystem metadata is set in this layer.

GetColorManagementSystem() , SetColorManagementSystem()

HasCustomLayerData() bool

Returns true if CustomLayerData is authored on the layer.

HasDefaultPrim() bool

Return true if the default prim metadata is set in this layer.

See GetDefaultPrim() and SetDefaultPrim() .

HasEndTimeCode() bool

Returns true if the layer has an endTimeCode opinion.

HasFramePrecision() bool

Returns true if the layer has a frames precision opinion.

HasFramesPerSecond() bool

Returns true if the layer has a frames per second opinion.

HasOwner() bool

Returns true if the layer has an owner opinion.

HasSessionOwner() bool

Returns true if the layer has a session owner opinion.

HasStartTimeCode() bool

Returns true if the layer has a startTimeCode opinion.

HasTimeCodesPerSecond() bool

Returns true if the layer has a timeCodesPerSecond opinion.

Import(layerPath) bool

Imports the content of the given layer path, replacing the content of the current layer.

Note: If the layer path is the same as the current layer’s real path, no action is taken (and a warning occurs). For this case use Reload() .

Parameters

layerPath (str) –

ImportFromString(string) bool

Reads this layer from the given string.

Returns true if successful, otherwise returns false .

Parameters

string (str) –

static IsAnonymousLayerIdentifier()

classmethod IsAnonymousLayerIdentifier(identifier) -> bool

Returns true if the identifier is an anonymous layer unique identifier.

Parameters

identifier (str) –

IsDetached() bool

Returns true if this layer is detached from its serialized data store, false otherwise.

Detached layers are isolated from external changes to their serialized data.

static IsIncludedByDetachedLayerRules()

classmethod IsIncludedByDetachedLayerRules(identifier) -> bool

Returns whether the given layer identifier is included in the current rules for the detached layer set.

This is equivalent to GetDetachedLayerRules() .IsIncluded(identifier).

Parameters

identifier (str) –

IsMuted()

classmethod IsMuted() -> bool

Returns true if the current layer is muted.


IsMuted(path) -> bool

Returns true if the specified layer path is muted.

Parameters

path (str) –

ListAllTimeSamples() set[float]
ListTimeSamplesForPath(path) set[float]
Parameters

path (Path) –

static New()

classmethod New(fileFormat, identifier, args) -> Layer

Creates a new empty layer with the given identifier for a given file format class.

The new layer will not be dirty and will not be saved.

Additional arguments may be supplied via the args parameter. These arguments may control behavior specific to the layer’s file format.

Parameters
  • fileFormat (FileFormat) –

  • identifier (str) –

  • args (FileFormatArguments) –

static OpenAsAnonymous()

classmethod OpenAsAnonymous(layerPath, metadataOnly, tag) -> Layer

Load the given layer from disk as a new anonymous layer.

If the layer can’t be found or loaded, an error is posted and a null layer is returned.

The anonymous layer does not retain any knowledge of the backing file on the filesystem.

metadataOnly is a flag that asks for only the layer metadata to be read in, which can be much faster if that is all that is required. Note that this is just a hint: some FileFormat readers may disregard this flag and still fully populate the layer contents.

An optional tag may be specified. See CreateAnonymous for details.

Parameters
  • layerPath (str) –

  • metadataOnly (bool) –

  • tag (str) –

QueryTimeSample(path, time, value) bool
Parameters
  • path (Path) –

  • time (float) –

  • value (VtValue) –


QueryTimeSample(path, time, value) -> bool

Parameters
  • path (Path) –

  • time (float) –

  • value (SdfAbstractDataValue) –


QueryTimeSample(path, time, data) -> bool

Parameters
  • path (Path) –

  • time (float) –

  • data (T) –

Reload(force) bool

Reloads the layer from its persistent representation.

This restores the layer to a state as if it had just been created with FindOrOpen() . This operation is Undo-able.

The fileName and whether journaling is enabled are not affected by this method.

When called with force = false (the default), Reload attempts to avoid reloading layers that have not changed on disk. It does so by comparing the file’s modification time (mtime) to when the file was loaded. If the layer has unsaved modifications, this mechanism is not used, and the layer is reloaded from disk. If the layer has any external asset dependencies their modification state will also be consulted when determining if the layer needs to be reloaded.

Passing true to the force parameter overrides this behavior, forcing the layer to be reloaded from disk regardless of whether it has changed.

Parameters

force (bool) –

static ReloadLayers()

classmethod ReloadLayers(layers, force) -> bool

Reloads the specified layers.

Returns false if one or more layers failed to reload.

See Reload() for a description of the force flag.

Parameters
  • layers (set[Layer]) –

  • force (bool) –

static RemoveFromMutedLayers()

classmethod RemoveFromMutedLayers(mutedPath) -> None

Remove the specified path from the muted layers set.

Parameters

mutedPath (str) –

RemoveInertSceneDescription() None

Removes all scene description in this layer that does not affect the scene.

This method walks the layer namespace hierarchy and removes any prims and that are not contributing any opinions.

Save(force) bool

Returns true if successful, false if an error occurred.

Returns false if the layer has no remembered file name or the layer type cannot be saved. The layer will not be overwritten if the file exists and the layer is not dirty unless force is true.

Parameters

force (bool) –

ScheduleRemoveIfInert(spec) None

Cause spec to be removed if it no longer affects the scene when the last change block is closed, or now if there are no change blocks.

Parameters

spec (Spec) –

static SetDetachedLayerRules()

classmethod SetDetachedLayerRules(mask) -> None

Sets the rules specifying detached layers.

Newly-created or opened layers whose identifiers are included in rules will be opened as detached layers. Existing layers that are now included or no longer included will be reloaded. Any unsaved modifications to those layers will be lost.

This function is not thread-safe. It may not be run concurrently with any other functions that open, close, or read from any layers.

The detached layer rules are initially set to exclude all layers. This may be overridden by setting the environment variables SDF_LAYER_INCLUDE_DETACHED and SDF_LAYER_EXCLUDE_DETACHED to specify the initial set of include and exclude patterns in the rules. These variables can be set to a comma-delimited list of patterns. SDF_LAYER_INCLUDE_DETACHED may also be set to”*”to include all layers. Note that these environment variables only set the initial state of the detached layer rules; these values may be overwritten by subsequent calls to this function.

See SdfLayer::DetachedLayerRules::IsIncluded for details on how the rules are applied to layer identifiers.

Parameters

mask (DetachedLayerRules) –

SetMuted(muted) None

Mutes the current layer if muted is true , and unmutes it otherwise.

Parameters

muted (bool) –

SetPermissionToEdit(allow) None

Sets permission to edit.

Parameters

allow (bool) –

SetPermissionToSave(allow) None

Sets permission to save.

Parameters

allow (bool) –

SetTimeSample(path, time, value) None
Parameters
  • path (Path) –

  • time (float) –

  • value (VtValue) –


SetTimeSample(path, time, value) -> None

Parameters
  • path (Path) –

  • time (float) –

  • value (SdfAbstractDataConstValue) –


SetTimeSample(path, time, value) -> None

Parameters
  • path (Path) –

  • time (float) –

  • value (T) –

static SplitIdentifier()

classmethod SplitIdentifier(identifier, layerPath, arguments) -> bool

Splits the given layer identifier into its constituent layer path and arguments.

Parameters
  • identifier (str) –

  • layerPath (str) –

  • arguments (FileFormatArguments) –

StreamsData() bool

Returns true if this layer streams data from its serialized data store on demand, false otherwise.

Layers with streaming data are treated differently to avoid pulling in data unnecessarily. For example, reloading a streaming layer will not perform fine-grained change notification, since doing so would require the full contents of the layer to be loaded.

TransferContent(layer) None

Copies the content of the given layer into this layer.

Source layer is unmodified.

Parameters

layer (Layer) –

Traverse(path, func) None
Parameters
  • path (Path) –

  • func (TraversalFunction) –

UpdateAssetInfo() None

Update layer asset information.

Calling this method re-resolves the layer identifier, which updates asset information such as the layer’s resolved path and other asset info. This may be used to update the layer after external changes to the underlying asset system.

UpdateCompositionAssetDependency(oldAssetPath, newAssetPath) bool

Updates the asset path of a composation dependency in this layer.

If newAssetPath is supplied, the update works as”rename”, updating any occurrence of oldAssetPath to newAssetPath in all reference, payload, and sublayer fields.

If newAssetPath is not given, this update behaves as a”delete”, removing all occurrences of oldAssetPath from all reference, payload, and sublayer fields.

Parameters
  • oldAssetPath (str) –

  • newAssetPath (str) –

UpdateExternalReference(oldAssetPath, newAssetPath) bool

Deprecated

Use UpdateCompositionAssetDependency instead.

Parameters
  • oldAssetPath (str) –

  • newAssetPath (str) –

ColorConfigurationKey = 'colorConfiguration'
ColorManagementSystemKey = 'colorManagementSystem'
CommentKey = 'comment'
DocumentationKey = 'documentation'
EndFrameKey = 'endFrame'
EndTimeCodeKey = 'endTimeCode'
FramePrecisionKey = 'framePrecision'
FramesPerSecondKey = 'framesPerSecond'
HasOwnedSubLayers = 'hasOwnedSubLayers'
OwnerKey = 'owner'
SessionOwnerKey = 'sessionOwner'
StartFrameKey = 'startFrame'
StartTimeCodeKey = 'startTimeCode'
TimeCodesPerSecondKey = 'timeCodesPerSecond'
property anonymous

bool

Returns true if this layer is an anonymous layer.

Type

type

property colorConfiguration

The color configuration asset-path of this layer.

property colorManagementSystem

The name of the color management system used to interpret the colorConfiguration asset.

property comment

The layer’s comment string.

property customLayerData

The customLayerData dictionary associated with this layer.

property defaultPrim

The layer’s default reference target token.

property dirty

bool

Returns true if the layer is dirty, i.e.

has changed from its persistent representation.

Type

type

property documentation

The layer’s documentation string.

property empty

bool

Returns whether this layer has no significant data.

Type

type

property endTimeCode

The end timeCode of this layer.

The end timeCode of a layer is not a hard limit, but is more of a hint. A layer’s time-varying content is not limited to the timeCode range of the layer.

property expired

True if this object has expired, False otherwise.

property externalReferences

Return unique list of asset paths of external references for given layer.

property fileExtension

The layer’s file extension.

property framePrecision

The number of digits of precision used in times in this layer.

property framesPerSecond

The frames per second used in this layer.

property hasOwnedSubLayers

Whether this layer’s sub layers are expected to have owners.

property identifier

The layer’s identifier.

property owner

The owner of this layer.

property permissionToEdit

Return true if permitted to be edited (modified), false otherwise.

property permissionToSave

Return true if permitted to be saved, false otherwise.

property pseudoRoot

The pseudo-root of the layer.

property realPath

The layer’s resolved path.

property repositoryPath

The layer’s associated repository path

property resolvedPath

The layer’s resolved path.

property rootPrimOrder

Get/set the list of root prim names for this layer’s ‘reorder rootPrims’ statement.

property rootPrims

The root prims of this layer, as an ordered dictionary.

The prims may be accessed by index or by name. Although this property claims it is read only, you can modify the contents of this dictionary to add, remove, or reorder the contents.

property sessionOwner

The session owner of this layer. Only intended for use with session layers.

property startTimeCode

The start timeCode of this layer.

The start timeCode of a layer is not a hard limit, but is more of a hint. A layer’s time-varying content is not limited to the timeCode range of the layer.

property subLayerOffsets

The sublayer offsets of this layer, as a list. Although this property is claimed to be read only, you can modify the contents of this list by assigning new layer offsets to specific indices.

property subLayerPaths

The sublayer paths of this layer, as a list. Although this property is claimed to be read only, you can modify the contents of this list.

property timeCodesPerSecond

The timeCodes per second used in this layer.

property version

The layer’s version.

class pxr.Sdf.LayerOffset

Represents a time offset and scale between layers.

The SdfLayerOffset class is an affine transform, providing both a scale and a translate. It supports vector algebra semantics for composing SdfLayerOffsets together via multiplication. The SdfLayerOffset class is unitless: it does not refer to seconds or frames.

For example, suppose layer A uses layer B, with an offset of X: when bringing animation from B into A, you first apply the scale of X, and then the offset. Suppose you have a scale of 2 and an offset of 24: first multiply B’s frame numbers by 2, and then add 24. The animation from B as seen in A will take twice as long and start 24 frames later.

Offsets are typically used in either sublayers or prim references. For more information, see the SetSubLayerOffset() method of the SdfLayer class (the subLayerOffsets property in Python), as well as the SetReference() and GetReferenceLayerOffset() methods (the latter is the referenceLayerOffset property in Python) of the SdfPrimSpec class.

Methods:

GetInverse()

Gets the inverse offset, which performs the opposite transformation.

IsIdentity()

Returns true if this is an identity transformation, with an offset of 0.0 and a scale of 1.0.

Attributes:

offset

None

scale

None

GetInverse() LayerOffset

Gets the inverse offset, which performs the opposite transformation.

IsIdentity() bool

Returns true if this is an identity transformation, with an offset of 0.0 and a scale of 1.0.

property offset

None

Sets the time offset.


type : float

Returns the time offset.

Type

type

property scale

None

Sets the time scale factor.


type : float

Returns the time scale factor.

Type

type

class pxr.Sdf.LayerTree

A SdfLayerTree is an immutable tree structure representing a sublayer stack and its recursive structure.

Layers can have sublayers, which can in turn have sublayers of their own. Clients that want to represent that hierarchical structure in memory can build a SdfLayerTree for that purpose.

We use TfRefPtr<SdfLayerTree> as handles to LayerTrees, as a simple way to pass them around as immutable trees without worrying about lifetime.

Attributes:

childTrees

list[SdfLayerTreeHandle]

expired

True if this object has expired, False otherwise.

layer

Layer

offset

LayerOffset

property childTrees

list[SdfLayerTreeHandle]

Returns the children of this tree node.

Type

type

property expired

True if this object has expired, False otherwise.

property layer

Layer

Returns the layer handle this tree node represents.

Type

type

property offset

LayerOffset

Returns the cumulative layer offset from the root of the tree.

Type

type

class pxr.Sdf.LengthUnit

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.LengthUnitMillimeter, Sdf.LengthUnitCentimeter, Sdf.LengthUnitDecimeter, Sdf.LengthUnitMeter, Sdf.LengthUnitKilometer, Sdf.LengthUnitInch, Sdf.LengthUnitFoot, Sdf.LengthUnitYard, Sdf.LengthUnitMile)
class pxr.Sdf.ListEditorProxy_SdfNameKeyPolicy

Methods:

Add

Append

ApplyEditsToList

ClearEdits

ClearEditsAndMakeExplicit

ContainsItemEdit

CopyItems

Erase

GetAddedOrExplicitItems

ModifyItemEdits

Prepend

Remove

RemoveItemEdits

ReplaceItemEdits

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExpired

isExplicit

isOrderedOnly

orderedItems

prependedItems

Add()
Append()
ApplyEditsToList()
ClearEdits()
ClearEditsAndMakeExplicit()
ContainsItemEdit()
CopyItems()
Erase()
GetAddedOrExplicitItems()
ModifyItemEdits()
Prepend()
Remove()
RemoveItemEdits()
ReplaceItemEdits()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExpired
property isExplicit
property isOrderedOnly
property orderedItems
property prependedItems
class pxr.Sdf.ListEditorProxy_SdfPathKeyPolicy

Methods:

Add

Append

ApplyEditsToList

ClearEdits

ClearEditsAndMakeExplicit

ContainsItemEdit

CopyItems

Erase

GetAddedOrExplicitItems

ModifyItemEdits

Prepend

Remove

RemoveItemEdits

ReplaceItemEdits

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExpired

isExplicit

isOrderedOnly

orderedItems

prependedItems

Add()
Append()
ApplyEditsToList()
ClearEdits()
ClearEditsAndMakeExplicit()
ContainsItemEdit()
CopyItems()
Erase()
GetAddedOrExplicitItems()
ModifyItemEdits()
Prepend()
Remove()
RemoveItemEdits()
ReplaceItemEdits()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExpired
property isExplicit
property isOrderedOnly
property orderedItems
property prependedItems
class pxr.Sdf.ListEditorProxy_SdfPayloadTypePolicy

Methods:

Add

Append

ApplyEditsToList

ClearEdits

ClearEditsAndMakeExplicit

ContainsItemEdit

CopyItems

Erase

GetAddedOrExplicitItems

ModifyItemEdits

Prepend

Remove

RemoveItemEdits

ReplaceItemEdits

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExpired

isExplicit

isOrderedOnly

orderedItems

prependedItems

Add()
Append()
ApplyEditsToList()
ClearEdits()
ClearEditsAndMakeExplicit()
ContainsItemEdit()
CopyItems()
Erase()
GetAddedOrExplicitItems()
ModifyItemEdits()
Prepend()
Remove()
RemoveItemEdits()
ReplaceItemEdits()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExpired
property isExplicit
property isOrderedOnly
property orderedItems
property prependedItems
class pxr.Sdf.ListEditorProxy_SdfReferenceTypePolicy

Methods:

Add

Append

ApplyEditsToList

ClearEdits

ClearEditsAndMakeExplicit

ContainsItemEdit

CopyItems

Erase

GetAddedOrExplicitItems

ModifyItemEdits

Prepend

Remove

RemoveItemEdits

ReplaceItemEdits

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExpired

isExplicit

isOrderedOnly

orderedItems

prependedItems

Add()
Append()
ApplyEditsToList()
ClearEdits()
ClearEditsAndMakeExplicit()
ContainsItemEdit()
CopyItems()
Erase()
GetAddedOrExplicitItems()
ModifyItemEdits()
Prepend()
Remove()
RemoveItemEdits()
ReplaceItemEdits()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExpired
property isExplicit
property isOrderedOnly
property orderedItems
property prependedItems
class pxr.Sdf.ListOpType

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.ListOpTypeExplicit, Sdf.ListOpTypeAdded, Sdf.ListOpTypePrepended, Sdf.ListOpTypeAppended, Sdf.ListOpTypeDeleted, Sdf.ListOpTypeOrdered)
class pxr.Sdf.ListProxy_SdfNameKeyPolicy

Methods:

ApplyEditsToList

ApplyList

append

clear

copy

count

index

insert

remove

replace

Attributes:

expired

ApplyEditsToList()
ApplyList()
append()
clear()
copy()
count()
index()
insert()
remove()
replace()
property expired
class pxr.Sdf.ListProxy_SdfNameTokenKeyPolicy

Methods:

ApplyEditsToList

ApplyList

append

clear

copy

count

index

insert

remove

replace

Attributes:

expired

ApplyEditsToList()
ApplyList()
append()
clear()
copy()
count()
index()
insert()
remove()
replace()
property expired
class pxr.Sdf.ListProxy_SdfPathKeyPolicy

Methods:

ApplyEditsToList

ApplyList

append

clear

copy

count

index

insert

remove

replace

Attributes:

expired

ApplyEditsToList()
ApplyList()
append()
clear()
copy()
count()
index()
insert()
remove()
replace()
property expired
class pxr.Sdf.ListProxy_SdfPayloadTypePolicy

Methods:

ApplyEditsToList

ApplyList

append

clear

copy

count

index

insert

remove

replace

Attributes:

expired

ApplyEditsToList()
ApplyList()
append()
clear()
copy()
count()
index()
insert()
remove()
replace()
property expired
class pxr.Sdf.ListProxy_SdfReferenceTypePolicy

Methods:

ApplyEditsToList

ApplyList

append

clear

copy

count

index

insert

remove

replace

Attributes:

expired

ApplyEditsToList()
ApplyList()
append()
clear()
copy()
count()
index()
insert()
remove()
replace()
property expired
class pxr.Sdf.ListProxy_SdfSubLayerTypePolicy

Methods:

ApplyEditsToList

ApplyList

append

clear

copy

count

index

insert

remove

replace

Attributes:

expired

ApplyEditsToList()
ApplyList()
append()
clear()
copy()
count()
index()
insert()
remove()
replace()
property expired
class pxr.Sdf.MapEditProxy_VtDictionary

Classes:

MapEditProxy_VtDictionary_Iterator

MapEditProxy_VtDictionary_KeyIterator

MapEditProxy_VtDictionary_ValueIterator

Methods:

clear

copy

get

items

keys

pop

popitem

setdefault

update

values

Attributes:

expired

class MapEditProxy_VtDictionary_Iterator
class MapEditProxy_VtDictionary_KeyIterator
class MapEditProxy_VtDictionary_ValueIterator
clear()
copy()
get()
items()
keys()
pop()
popitem()
setdefault()
update()
values()
property expired
class pxr.Sdf.MapEditProxy_map_SdfPath_SdfPath_less_SdfPath__allocator_pair_SdfPath_const__SdfPath_____

Classes:

MapEditProxy_map_SdfPath_SdfPath_less_SdfPath__allocator_pair_SdfPath_const__SdfPath______Iterator

MapEditProxy_map_SdfPath_SdfPath_less_SdfPath__allocator_pair_SdfPath_const__SdfPath______KeyIterator

MapEditProxy_map_SdfPath_SdfPath_less_SdfPath__allocator_pair_SdfPath_const__SdfPath______ValueIterator

Methods:

clear

copy

get

items

keys

pop

popitem

setdefault

update

values

Attributes:

expired

class MapEditProxy_map_SdfPath_SdfPath_less_SdfPath__allocator_pair_SdfPath_const__SdfPath______Iterator
class MapEditProxy_map_SdfPath_SdfPath_less_SdfPath__allocator_pair_SdfPath_const__SdfPath______KeyIterator
class MapEditProxy_map_SdfPath_SdfPath_less_SdfPath__allocator_pair_SdfPath_const__SdfPath______ValueIterator
clear()
copy()
get()
items()
keys()
pop()
popitem()
setdefault()
update()
values()
property expired
class pxr.Sdf.MapEditProxy_map_string_string_less_string__allocator_pair_stringconst__string_____

Classes:

MapEditProxy_map_string_string_less_string__allocator_pair_stringconst__string______Iterator

MapEditProxy_map_string_string_less_string__allocator_pair_stringconst__string______KeyIterator

MapEditProxy_map_string_string_less_string__allocator_pair_stringconst__string______ValueIterator

Methods:

clear

copy

get

items

keys

pop

popitem

setdefault

update

values

Attributes:

expired

class MapEditProxy_map_string_string_less_string__allocator_pair_stringconst__string______Iterator
class MapEditProxy_map_string_string_less_string__allocator_pair_stringconst__string______KeyIterator
class MapEditProxy_map_string_string_less_string__allocator_pair_stringconst__string______ValueIterator
clear()
copy()
get()
items()
keys()
pop()
popitem()
setdefault()
update()
values()
property expired
class pxr.Sdf.NamespaceEdit

A single namespace edit. It supports renaming, reparenting, reparenting with a rename, reordering, and removal.

Methods:

Remove

classmethod Remove(currentPath) -> This

Rename

classmethod Rename(currentPath, name) -> This

Reorder

classmethod Reorder(currentPath, index) -> This

Reparent

classmethod Reparent(currentPath, newParentPath, index) -> This

ReparentAndRename

classmethod ReparentAndRename(currentPath, newParentPath, name, index) -> This

Attributes:

atEnd

currentPath

index

newPath

same

static Remove()

classmethod Remove(currentPath) -> This

Returns a namespace edit that removes the object at currentPath .

Parameters

currentPath (Path) –

static Rename()

classmethod Rename(currentPath, name) -> This

Returns a namespace edit that renames the prim or property at currentPath to name .

Parameters
  • currentPath (Path) –

  • name (str) –

static Reorder()

classmethod Reorder(currentPath, index) -> This

Returns a namespace edit to reorder the prim or property at currentPath to index index .

Parameters
  • currentPath (Path) –

  • index (Index) –

static Reparent()

classmethod Reparent(currentPath, newParentPath, index) -> This

Returns a namespace edit to reparent the prim or property at currentPath to be under newParentPath at index index .

Parameters
  • currentPath (Path) –

  • newParentPath (Path) –

  • index (Index) –

static ReparentAndRename()

classmethod ReparentAndRename(currentPath, newParentPath, name, index) -> This

Returns a namespace edit to reparent the prim or property at currentPath to be under newParentPath at index index with the name name .

Parameters
  • currentPath (Path) –

  • newParentPath (Path) –

  • name (str) –

  • index (Index) –

atEnd = -1
property currentPath
property index
property newPath
same = -2
class pxr.Sdf.NamespaceEditDetail

Detailed information about a namespace edit.

Classes:

Result

Validity of an edit.

Attributes:

Error

Okay

Unbatched

edit

reason

result

class Result

Validity of an edit.

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.NamespaceEditDetail.Error, Sdf.NamespaceEditDetail.Unbatched, Sdf.NamespaceEditDetail.Okay)
Error = Sdf.NamespaceEditDetail.Error
Okay = Sdf.NamespaceEditDetail.Okay
Unbatched = Sdf.NamespaceEditDetail.Unbatched
property edit
property reason
property result
class pxr.Sdf.Notice

Wrapper class for Sdf notices.

Classes:

Base

LayerDidReloadContent

LayerDidReplaceContent

LayerDirtinessChanged

LayerIdentifierDidChange

LayerInfoDidChange

LayerMutenessChanged

LayersDidChange

LayersDidChangeSentPerLayer

class Base
class LayerDidReloadContent
class LayerDidReplaceContent
class LayerDirtinessChanged
class LayerIdentifierDidChange

Attributes:

newIdentifier

oldIdentifier

property newIdentifier
property oldIdentifier
class LayerInfoDidChange

Methods:

key

key()
class LayerMutenessChanged

Attributes:

layerPath

wasMuted

property layerPath
property wasMuted
class LayersDidChange

Methods:

GetLayers

GetSerialNumber

GetLayers()
GetSerialNumber()
class LayersDidChangeSentPerLayer

Methods:

GetLayers

GetSerialNumber

GetLayers()
GetSerialNumber()
class pxr.Sdf.Path

A path value used to locate objects in layers or scenegraphs.

Overview

SdfPath is used in several ways:

  • As a storage key for addressing and accessing values held in a SdfLayer

  • As a namespace identity for scenegraph objects

  • As a way to refer to other scenegraph objects through relative paths The paths represented by an SdfPath class may be either relative or absolute. Relative paths are relative to the prim object that contains them (that is, if an SdfRelationshipSpec target is relative, it is relative to the SdfPrimSpec object that owns the SdfRelationshipSpec object).

SdfPath objects can be readily created from and converted back to strings, but as SdfPath objects, they have behaviors that make it easy and efficient to work with them. The SdfPath class provides a full range of methods for manipulating scene paths by appending a namespace child, appending a relationship target, getting the parent path, and so on. Since the SdfPath class uses a node-based representation internally, you should use the editing functions rather than converting to and from strings if possible.

Path Syntax

Like a filesystem path, an SdfPath is conceptually just a sequence of path components. Unlike a filesystem path, each component has a type, and the type is indicated by the syntax.

Two separators are used between parts of a path. A slash (“/”) following an identifier is used to introduce a namespace child. A period (“.”) following an identifier is used to introduce a property. A property may also have several non-sequential colons (‘:’) in its name to provide a rudimentary namespace within properties but may not end or begin with a colon.

A leading slash in the string representation of an SdfPath object indicates an absolute path. Two adjacent periods indicate the parent namespace.

Brackets (“[“and”]”) are used to indicate relationship target paths for relational attributes.

The first part in a path is assumed to be a namespace child unless it is preceded by a period. That means:

  • /Foo is an absolute path specifying the root prim Foo.

  • /Foo/Bar is an absolute path specifying namespace child Bar of root prim Foo.

  • /Foo/Bar.baz is an absolute path specifying property baz of namespace child Bar of root prim Foo.

  • Foo is a relative path specifying namespace child Foo of the current prim.

  • Foo/Bar is a relative path specifying namespace child Bar of namespace child Foo of the current prim.

  • Foo/Bar.baz is a relative path specifying property baz of namespace child Bar of namespace child Foo of the current prim.

  • .foo is a relative path specifying the property foo of the current prim.

  • /Foo.bar[/Foo.baz].attrib is a relational attribute path. The relationship /Foo.bar has a target /Foo.baz . There is a relational attribute attrib on that relationship->target pair.

A Note on Thread-Safety

SdfPath is strongly thread-safe, in the sense that zero additional synchronization is required between threads creating or using SdfPath values. Just like TfToken, SdfPath values are immutable. Internally, SdfPath uses a global prefix tree to efficiently share representations of paths, and provide fast equality/hashing operations, but modifications to this table are internally synchronized. Consequently, as with TfToken, for best performance it is important to minimize the number of values created (since it requires synchronized access to this table) or copied (since it requires atomic ref-counting operations).

Classes:

AncestorsRange

Methods:

AppendChild(childName)

Creates a path by appending an element for childName to this path.

AppendElementString(element)

Creates a path by extracting and appending an element from the given ascii element encoding.

AppendExpression()

Creates a path by appending an expression element.

AppendMapper(targetPath)

Creates a path by appending a mapper element for targetPath .

AppendMapperArg(argName)

Creates a path by appending an element for argName .

AppendPath(newSuffix)

Creates a path by appending a given relative path to this path.

AppendProperty(propName)

Creates a path by appending an element for propName to this path.

AppendRelationalAttribute(attrName)

Creates a path by appending an element for attrName to this path.

AppendTarget(targetPath)

Creates a path by appending an element for targetPath .

AppendVariantSelection(variantSet, variant)

Creates a path by appending an element for variantSet and variant to this path.

ContainsPrimVariantSelection()

Returns whether the path or any of its parent paths identifies a variant selection for a prim.

ContainsPropertyElements()

Return true if this path contains any property elements, false otherwise.

ContainsTargetPath()

Return true if this path is or has a prefix that's a target path or a mapper path.

FindLongestPrefix

FindLongestStrictPrefix

FindPrefixedRange

GetAbsoluteRootOrPrimPath()

Creates a path by stripping all properties and relational attributes from this path, leaving the path to the containing prim.

GetAllTargetPathsRecursively(result)

Returns all the relationship target or connection target paths contained in this path, and recursively all the target paths contained in those target paths in reverse depth-first order.

GetAncestorsRange()

Return a range for iterating over the ancestors of this path.

GetCommonPrefix(path)

Returns a path with maximal length that is a prefix path of both this path and path .

GetConciseRelativePaths

classmethod GetConciseRelativePaths(paths) -> list[SdfPath]

GetParentPath()

Return the path that identifies this path's namespace parent.

GetPrefixes

Returns the prefix paths of this path.

GetPrimOrPrimVariantSelectionPath()

Creates a path by stripping all relational attributes, targets, and properties, leaving the nearest path for which IsPrimOrPrimVariantSelectionPath() returns true.

GetPrimPath()

Creates a path by stripping all relational attributes, targets, properties, and variant selections from the leafmost prim path, leaving the nearest path for which IsPrimPath() returns true.

GetVariantSelection()

Returns the variant selection for this path, if this is a variant selection path.

HasPrefix(prefix)

Return true if both this path and prefix are not the empty path and this path has prefix as a prefix.

IsAbsolutePath()

Returns whether the path is absolute.

IsAbsoluteRootOrPrimPath()

Returns whether the path identifies a prim or the absolute root.

IsAbsoluteRootPath()

Return true if this path is the AbsoluteRootPath() .

IsExpressionPath()

Returns whether the path identifies a connection expression.

IsMapperArgPath()

Returns whether the path identifies a connection mapper arg.

IsMapperPath()

Returns whether the path identifies a connection mapper.

IsNamespacedPropertyPath()

Returns whether the path identifies a namespaced property.

IsPrimPath()

Returns whether the path identifies a prim.

IsPrimPropertyPath()

Returns whether the path identifies a prim's property.

IsPrimVariantSelectionPath()

Returns whether the path identifies a variant selection for a prim.

IsPropertyPath()

Returns whether the path identifies a property.

IsRelationalAttributePath()

Returns whether the path identifies a relational attribute.

IsRootPrimPath()

Returns whether the path identifies a root prim.

IsTargetPath()

Returns whether the path identifies a relationship or connection target.

IsValidIdentifier

classmethod IsValidIdentifier(name) -> bool

IsValidNamespacedIdentifier

classmethod IsValidNamespacedIdentifier(name) -> bool

IsValidPathString

classmethod IsValidPathString(pathString, errMsg) -> bool

JoinIdentifier

classmethod JoinIdentifier(names) -> str

MakeAbsolutePath(anchor)

Returns the absolute form of this path using anchor as the relative basis.

MakeRelativePath(anchor)

Returns the relative form of this path using anchor as the relative basis.

RemoveAncestorPaths

classmethod RemoveAncestorPaths(paths) -> None

RemoveCommonSuffix(otherPath, stopAtRootPrim)

Find and remove the longest common suffix from two paths.

RemoveDescendentPaths

classmethod RemoveDescendentPaths(paths) -> None

ReplaceName(newName)

Return a copy of this path with its final component changed to newName.

ReplacePrefix(oldPrefix, newPrefix, ...)

Returns a path with all occurrences of the prefix path oldPrefix replaced with the prefix path newPrefix .

ReplaceTargetPath(newTargetPath)

Replaces the relational attribute's target path.

StripAllVariantSelections()

Create a path by stripping all variant selections from all components of this path, leaving a path with no embedded variant selections.

StripNamespace

classmethod StripNamespace(name) -> str

StripPrefixNamespace

classmethod StripPrefixNamespace(name, matchNamespace) -> tuple[str, bool]

TokenizeIdentifier

classmethod TokenizeIdentifier(name) -> list[str]

Attributes:

absoluteIndicator

absoluteRootPath

childDelimiter

elementString

The string representation of the terminal component of this path.

emptyPath

expressionIndicator

isEmpty

bool

mapperArgDelimiter

mapperIndicator

name

The name of the prim, property or relational attribute identified by the path.

namespaceDelimiter

parentPathElement

pathElementCount

The number of path elements in this path.

pathString

The string representation of this path.

propertyDelimiter

reflexiveRelativePath

relationshipTargetEnd

relationshipTargetStart

targetPath

The relational attribute target path for this path.

class AncestorsRange

Methods:

GetPath

GetPath()
AppendChild(childName) Path

Creates a path by appending an element for childName to this path.

This path must be a prim path, the AbsoluteRootPath or the ReflexiveRelativePath.

Parameters

childName (str) –

AppendElementString(element) Path

Creates a path by extracting and appending an element from the given ascii element encoding.

Attempting to append a root or empty path (or malformed path) or attempting to append to the EmptyPath will raise an error and return the EmptyPath.

May also fail and return EmptyPath if this path’s type cannot possess a child of the type encoded in element .

Parameters

element (str) –

AppendExpression() Path

Creates a path by appending an expression element.

This path must be a prim property or relational attribute path.

AppendMapper(targetPath) Path

Creates a path by appending a mapper element for targetPath .

This path must be a prim property or relational attribute path.

Parameters

targetPath (Path) –

AppendMapperArg(argName) Path

Creates a path by appending an element for argName .

This path must be a mapper path.

Parameters

argName (str) –

AppendPath(newSuffix) Path

Creates a path by appending a given relative path to this path.

If the newSuffix is a prim path, then this path must be a prim path or a root path.

If the newSuffix is a prim property path, then this path must be a prim path or the ReflexiveRelativePath.

Parameters

newSuffix (Path) –

AppendProperty(propName) Path

Creates a path by appending an element for propName to this path.

This path must be a prim path or the ReflexiveRelativePath.

Parameters

propName (str) –

AppendRelationalAttribute(attrName) Path

Creates a path by appending an element for attrName to this path.

This path must be a target path.

Parameters

attrName (str) –

AppendTarget(targetPath) Path

Creates a path by appending an element for targetPath .

This path must be a prim property or relational attribute path.

Parameters

targetPath (Path) –

AppendVariantSelection(variantSet, variant) Path

Creates a path by appending an element for variantSet and variant to this path.

This path must be a prim path.

Parameters
  • variantSet (str) –

  • variant (str) –

ContainsPrimVariantSelection() bool

Returns whether the path or any of its parent paths identifies a variant selection for a prim.

ContainsPropertyElements() bool

Return true if this path contains any property elements, false otherwise.

A false return indicates a prim-like path, specifically a root path, a prim path, or a prim variant selection path. A true return indicates a property-like path: a prim property path, a target path, a relational attribute path, etc.

ContainsTargetPath() bool

Return true if this path is or has a prefix that’s a target path or a mapper path.

static FindLongestPrefix()
static FindLongestStrictPrefix()
static FindPrefixedRange()
GetAbsoluteRootOrPrimPath() Path

Creates a path by stripping all properties and relational attributes from this path, leaving the path to the containing prim.

If the path is already a prim or absolute root path, the same path is returned.

GetAllTargetPathsRecursively(result) None

Returns all the relationship target or connection target paths contained in this path, and recursively all the target paths contained in those target paths in reverse depth-first order.

For example, given the path:’/A/B.a[/C/D.a[/E/F.a]].a[/A/B.a[/C/D.a]]’this method produces:’/A/B.a[/C/D.a]’,’/C/D.a’,’/C/D.a[/E/F.a]’,’/E/F.a’

Parameters

result (list[SdfPath]) –

GetAncestorsRange() SdfPathAncestorsRange

Return a range for iterating over the ancestors of this path.

The range provides iteration over the prefixes of a path, ordered from longest to shortest (the opposite of the order of the prefixes returned by GetPrefixes).

GetCommonPrefix(path) Path

Returns a path with maximal length that is a prefix path of both this path and path .

Parameters

path (Path) –

static GetConciseRelativePaths()

classmethod GetConciseRelativePaths(paths) -> list[SdfPath]

Given some vector of paths, get a vector of concise unambiguous relative paths.

GetConciseRelativePaths requires a vector of absolute paths. It finds a set of relative paths such that each relative path is unique.

Parameters

paths (list[SdfPath]) –

GetParentPath() Path

Return the path that identifies this path’s namespace parent.

For a prim path (like’/foo/bar’), return the prim’s parent’s path (‘/foo’). For a prim property path (like’/foo/bar.property’), return the prim’s path (‘/foo/bar’). For a target path (like’/foo/bar.property[/target]’) return the property path (‘/foo/bar.property’). For a mapper path (like’/foo/bar.property.mapper[/target]’) return the property path (‘/foo/bar.property). For a relational attribute path (like’/foo/bar.property[/target].relAttr’) return the relationship target’s path (‘/foo/bar.property[/target]’). For a prim variant selection path (like’/foo/bar{var=sel}’) return the prim path (‘/foo/bar’). For a root prim path (like’/rootPrim’), return AbsoluteRootPath() (‘/’). For a single element relative prim path (like’relativePrim’), return ReflexiveRelativePath() (‘.’). For ReflexiveRelativePath() , return the relative parent path (’..’).

Note that the parent path of a relative parent path (’..’) is a relative grandparent path (’../..’). Use caution writing loops that walk to parent paths since relative paths have infinitely many ancestors. To more safely traverse ancestor paths, consider iterating over an SdfPathAncestorsRange instead, as returend by GetAncestorsRange() .

GetPrefixes()

Returns the prefix paths of this path.

GetPrimOrPrimVariantSelectionPath() Path

Creates a path by stripping all relational attributes, targets, and properties, leaving the nearest path for which IsPrimOrPrimVariantSelectionPath() returns true.

See GetPrimPath also.

If the path is already a prim or a prim variant selection path, the same path is returned.

GetPrimPath() Path

Creates a path by stripping all relational attributes, targets, properties, and variant selections from the leafmost prim path, leaving the nearest path for which IsPrimPath() returns true.

See GetPrimOrPrimVariantSelectionPath also.

If the path is already a prim path, the same path is returned.

GetVariantSelection() tuple[str, str]

Returns the variant selection for this path, if this is a variant selection path.

Returns a pair of empty strings if this path is not a variant selection path.

HasPrefix(prefix) bool

Return true if both this path and prefix are not the empty path and this path has prefix as a prefix.

Return false otherwise.

Parameters

prefix (Path) –

IsAbsolutePath() bool

Returns whether the path is absolute.

IsAbsoluteRootOrPrimPath() bool

Returns whether the path identifies a prim or the absolute root.

IsAbsoluteRootPath() bool

Return true if this path is the AbsoluteRootPath() .

IsExpressionPath() bool

Returns whether the path identifies a connection expression.

IsMapperArgPath() bool

Returns whether the path identifies a connection mapper arg.

IsMapperPath() bool

Returns whether the path identifies a connection mapper.

IsNamespacedPropertyPath() bool

Returns whether the path identifies a namespaced property.

A namespaced property has colon embedded in its name.

IsPrimPath() bool

Returns whether the path identifies a prim.

IsPrimPropertyPath() bool

Returns whether the path identifies a prim’s property.

A relational attribute is not a prim property.

IsPrimVariantSelectionPath() bool

Returns whether the path identifies a variant selection for a prim.

IsPropertyPath() bool

Returns whether the path identifies a property.

A relational attribute is considered to be a property, so this method will return true for relational attributes as well as properties of prims.

IsRelationalAttributePath() bool

Returns whether the path identifies a relational attribute.

If this is true, IsPropertyPath() will also be true.

IsRootPrimPath() bool

Returns whether the path identifies a root prim.

the path must be absolute and have a single element (for example /foo ).

IsTargetPath() bool

Returns whether the path identifies a relationship or connection target.

static IsValidIdentifier()

classmethod IsValidIdentifier(name) -> bool

Returns whether name is a legal identifier for any path component.

Parameters

name (str) –

static IsValidNamespacedIdentifier()

classmethod IsValidNamespacedIdentifier(name) -> bool

Returns whether name is a legal namespaced identifier.

This returns true if IsValidIdentifier() does.

Parameters

name (str) –

static IsValidPathString()

classmethod IsValidPathString(pathString, errMsg) -> bool

Return true if pathString is a valid path string, meaning that passing the string to the SdfPath constructor will result in a valid, non-empty SdfPath.

Otherwise, return false and if errMsg is not None, set the pointed-to string to the parse error.

Parameters
  • pathString (str) –

  • errMsg (str) –

static JoinIdentifier()

classmethod JoinIdentifier(names) -> str

Join names into a single identifier using the namespace delimiter.

Any empty strings present in names are ignored when joining.

Parameters

names (list[str]) –


JoinIdentifier(names) -> str

Join names into a single identifier using the namespace delimiter.

Any empty strings present in names are ignored when joining.

Parameters

names (list[TfToken]) –


JoinIdentifier(lhs, rhs) -> str

Join lhs and rhs into a single identifier using the namespace delimiter.

Returns lhs if rhs is empty and vice verse. Returns an empty string if both lhs and rhs are empty.

Parameters
  • lhs (str) –

  • rhs (str) –


JoinIdentifier(lhs, rhs) -> str

Join lhs and rhs into a single identifier using the namespace delimiter.

Returns lhs if rhs is empty and vice verse. Returns an empty string if both lhs and rhs are empty.

Parameters
  • lhs (str) –

  • rhs (str) –

MakeAbsolutePath(anchor) Path

Returns the absolute form of this path using anchor as the relative basis.

anchor must be an absolute prim path.

If this path is a relative path, resolve it using anchor as the relative basis.

If this path is already an absolute path, just return a copy.

Parameters

anchor (Path) –

MakeRelativePath(anchor) Path

Returns the relative form of this path using anchor as the relative basis.

anchor must be an absolute prim path.

If this path is an absolute path, return the corresponding relative path that is relative to the absolute path given by anchor .

If this path is a relative path, return the optimal relative path to the absolute path given by anchor . (The optimal relative path from a given prim path is the relative path with the least leading dot-dots.

Parameters

anchor (Path) –

static RemoveAncestorPaths()

classmethod RemoveAncestorPaths(paths) -> None

Remove all elements of paths that prefix other elements in paths.

As a side-effect, the result is left in sorted order.

Parameters

paths (list[SdfPath]) –

RemoveCommonSuffix(otherPath, stopAtRootPrim) tuple[Path, Path]

Find and remove the longest common suffix from two paths.

Returns this path and otherPath with the longest common suffix removed (first and second, respectively). If the two paths have no common suffix then the paths are returned as-is. If the paths are equal then this returns empty paths for relative paths and absolute roots for absolute paths. The paths need not be the same length.

If stopAtRootPrim is true then neither returned path will be the root path. That, in turn, means that some common suffixes will not be removed. For example, if stopAtRootPrim is true then the paths /A/B and /B will be returned as is. Were it false then the result would be /A and /. Similarly paths /A/B/C and /B/C would return /A/B and /B if stopAtRootPrim is true but /A and / if it’s false .

Parameters
  • otherPath (Path) –

  • stopAtRootPrim (bool) –

static RemoveDescendentPaths()

classmethod RemoveDescendentPaths(paths) -> None

Remove all elements of paths that are prefixed by other elements in paths.

As a side-effect, the result is left in sorted order.

Parameters

paths (list[SdfPath]) –

ReplaceName(newName) Path

Return a copy of this path with its final component changed to newName.

This path must be a prim or property path.

This method is shorthand for path.GetParentPath().AppendChild(newName) for prim paths, path.GetParentPath().AppendProperty(newName) for prim property paths, and path.GetParentPath().AppendRelationalAttribute(newName) for relational attribute paths.

Note that only the final path component is ever changed. If the name of the final path component appears elsewhere in the path, it will not be modified.

Some examples:

ReplaceName(‘/chars/MeridaGroup’,’AngusGroup’) ->’/chars/AngusGroup’ReplaceName(‘/Merida.tx’,’ty’) ->’/Merida.ty’ReplaceName(‘/Merida.tx[targ].tx’,’ty’) ->’/Merida.tx[targ].ty’

Parameters

newName (str) –

ReplacePrefix(oldPrefix, newPrefix, fixTargetPaths) Path

Returns a path with all occurrences of the prefix path oldPrefix replaced with the prefix path newPrefix .

If fixTargetPaths is true, any embedded target paths will also have their paths replaced. This is the default.

If this is not a target, relational attribute or mapper path this will do zero or one path prefix replacements, if not the number of replacements can be greater than one.

Parameters
  • oldPrefix (Path) –

  • newPrefix (Path) –

  • fixTargetPaths (bool) –

ReplaceTargetPath(newTargetPath) Path

Replaces the relational attribute’s target path.

The path must be a relational attribute path.

Parameters

newTargetPath (Path) –

StripAllVariantSelections() Path

Create a path by stripping all variant selections from all components of this path, leaving a path with no embedded variant selections.

static StripNamespace()

classmethod StripNamespace(name) -> str

Returns name stripped of any namespaces.

This does not check the validity of the name; it just attempts to remove anything that looks like a namespace.

Parameters

name (str) –


StripNamespace(name) -> str

Returns name stripped of any namespaces.

This does not check the validity of the name; it just attempts to remove anything that looks like a namespace.

Parameters

name (str) –

static StripPrefixNamespace()

classmethod StripPrefixNamespace(name, matchNamespace) -> tuple[str, bool]

Returns ( name , true ) where name is stripped of the prefix specified by matchNamespace if name indeed starts with matchNamespace .

Returns ( name , false ) otherwise, with name unmodified.

This function deals with both the case where matchNamespace contains the trailing namespace delimiter’:’or not.

Parameters
  • name (str) –

  • matchNamespace (str) –

static TokenizeIdentifier()

classmethod TokenizeIdentifier(name) -> list[str]

Tokenizes name by the namespace delimiter.

Returns the empty vector if name is not a valid namespaced identifier.

Parameters

name (str) –

absoluteIndicator = '/'
absoluteRootPath = Sdf.Path('/')
childDelimiter = '/'
property elementString

The string representation of the terminal component of this path. This path can be reconstructed via thisPath.GetParentPath().AppendElementString(thisPath.element). None of absoluteRootPath, reflexiveRelativePath, nor emptyPath possess the above quality; their .elementString is the empty string.

emptyPath = Sdf.Path.emptyPath
expressionIndicator = 'expression'
property isEmpty

bool

Returns true if this is the empty path ( SdfPath::EmptyPath() ).

Type

type

mapperArgDelimiter = '.'
mapperIndicator = 'mapper'
property name

The name of the prim, property or relational attribute identified by the path.

‘’ for EmptyPath. ‘.’ for ReflexiveRelativePath. ‘..’ for a path ending in ParentPathElement.

namespaceDelimiter = ':'
parentPathElement = '..'
property pathElementCount

The number of path elements in this path.

property pathString

The string representation of this path.

propertyDelimiter = '.'
reflexiveRelativePath = Sdf.Path('.')
relationshipTargetEnd = ']'
relationshipTargetStart = '['
property targetPath

The relational attribute target path for this path.

EmptyPath if this is not a relational attribute path.

class pxr.Sdf.PathArray

An array of type SdfPath.

class pxr.Sdf.PathListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.Payload

Represents a payload and all its meta data.

A payload represents a prim reference to an external layer. A payload is similar to a prim reference (see SdfReference) with the major difference that payloads are explicitly loaded by the user.

Unloaded payloads represent a boundary that lazy composition and system behaviors will not traverse across, providing a user-visible way to manage the working set of the scene.

Attributes:

assetPath

None

layerOffset

None

primPath

None

property assetPath

None

Sets a new asset path for the layer the payload uses.

See SdfAssetPath for what characters are valid in assetPath . If assetPath contains invalid characters, issue an error and set this payload’s asset path to the empty asset path.


type : str

Returns the asset path of the layer that the payload uses.

Type

type

property layerOffset

None

Sets a new layer offset.


type : LayerOffset

Returns the layer offset associated with the payload.

Type

type

property primPath

None

Sets a new prim path for the prim that the payload uses.


type : Path

Returns the scene path of the prim for the payload.

Type

type

class pxr.Sdf.PayloadListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.Permission

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.PermissionPublic, Sdf.PermissionPrivate)
class pxr.Sdf.PrimSpec

Represents a prim description in an SdfLayer object.

Every SdfPrimSpec object is defined in a layer. It is identified by its path (SdfPath class) in the namespace hierarchy of its layer. SdfPrimSpecs can be created using the New() method as children of either the containing SdfLayer itself (for”root level”prims), or as children of other SdfPrimSpec objects to extend a hierarchy. The helper function SdfCreatePrimInLayer() can be used to quickly create a hierarchy of primSpecs.

SdfPrimSpec objects have properties of two general types: attributes (containing values) and relationships (different types of connections to other prims and attributes). Attributes are represented by the SdfAttributeSpec class and relationships by the SdfRelationshipSpec class. Each prim has its own namespace of properties. Properties are stored and accessed by their name.

SdfPrimSpec objects have a typeName, permission restriction, and they reference and inherit prim paths. Permission restrictions control which other layers may refer to, or express opinions about a prim. See the SdfPermission class for more information.

  • Insert doc about references and inherits here.

  • Should have validate... methods for name, children, properties

Methods:

ApplyNameChildrenOrder(vec)

Reorders the given list of child names according to the reorder nameChildren statement for this prim.

ApplyPropertyOrder(vec)

Reorders the given list of property names according to the reorder properties statement for this prim.

BlockVariantSelection(variantSetName)

Blocks the variant selected for the given variant set by setting the variant selection to empty.

CanSetName(newName, whyNot)

Returns true if setting the prim spec's name to newName will succeed.

ClearActive()

Removes the active opinion in this prim spec if there is one.

ClearInstanceable()

Clears the value for the prim's instanceable flag.

ClearKind()

Remove the kind opinion from this prim spec if there is one.

ClearPayloadList

Clears the payloads for this prim.

ClearReferenceList

Clears the references for this prim.

GetAttributeAtPath(path)

Returns an attribute given its path .

GetObjectAtPath(path)

path: Path

GetPrimAtPath(path)

Returns a prim given its path .

GetPropertyAtPath(path)

Returns a property given its path .

GetRelationshipAtPath(path)

Returns a relationship given its path .

GetVariantNames(name)

Returns list of variant names for the given variant set.

HasActive()

Returns true if this prim spec has an opinion about active.

HasInstanceable()

Returns true if this prim spec has a value authored for its instanceable flag, false otherwise.

HasKind()

Returns true if this prim spec has an opinion about kind.

RemoveProperty(property)

Removes the property.

Attributes:

ActiveKey

AnyTypeToken

CommentKey

CustomDataKey

DocumentationKey

HiddenKey

InheritPathsKey

KindKey

PayloadKey

PermissionKey

PrefixKey

PrefixSubstitutionsKey

PrimOrderKey

PropertyOrderKey

ReferencesKey

RelocatesKey

SpecializesKey

SpecifierKey

SymmetricPeerKey

SymmetryArgumentsKey

SymmetryFunctionKey

TypeNameKey

VariantSelectionKey

VariantSetNamesKey

active

Whether this prim spec is active.

assetInfo

Returns the asset info dictionary for this prim.

attributes

The attributes of this prim, as an ordered dictionary.

comment

The prim's comment string.

customData

The custom data for this prim.

documentation

The prim's documentation string.

expired

hasPayloads

Returns true if this prim has payloads set.

hasReferences

Returns true if this prim has references set.

hidden

Whether this prim spec will be hidden in browsers.

inheritPathList

A PathListEditor for the prim's inherit paths.

instanceable

Whether this prim spec is flagged as instanceable.

kind

What kind of model this prim spec represents, if any.

name

The prim's name.

nameChildren

The prim name children of this prim, as an ordered dictionary.

nameChildrenOrder

Get/set the list of child names for this prim's 'reorder nameChildren' statement.

nameParent

The name parent of this prim.

nameRoot

The name pseudo-root of this prim.

payloadList

A PayloadListEditor for the prim's payloads.

permission

The prim's permission restriction.

prefix

The prim's prefix.

prefixSubstitutions

Dictionary of prefix substitutions.

properties

The properties of this prim, as an ordered dictionary.

propertyOrder

Get/set the list of property names for this prim's 'reorder properties' statement.

realNameParent

The name parent of this prim.

referenceList

A ReferenceListEditor for the prim's references.

relationships

The relationships of this prim, as an ordered dictionary.

relocates

An editing proxy for the prim's map of relocation paths.

specializesList

A PathListEditor for the prim's specializes.

specifier

The prim's specifier (SpecifierDef or SpecifierOver).

suffix

The prim's suffix.

suffixSubstitutions

Dictionary of prefix substitutions.

symmetricPeer

The prims's symmetric peer.

symmetryArguments

Dictionary with prim symmetry arguments.

symmetryFunction

The prim's symmetry function.

typeName

The type of this prim.

variantSelections

Dictionary whose keys are variant set names and whose values are the variants chosen for each set.

variantSetNameList

A StringListEditor for the names of the variant sets for this prim.

variantSets

The VariantSetSpecs for this prim indexed by name.

ApplyNameChildrenOrder(vec) None

Reorders the given list of child names according to the reorder nameChildren statement for this prim.

This routine employs the standard list editing operation for ordered items in a ListEditor.

Parameters

vec (list[str]) –

ApplyPropertyOrder(vec) None

Reorders the given list of property names according to the reorder properties statement for this prim.

This routine employs the standard list editing operation for ordered items in a ListEditor.

Parameters

vec (list[str]) –

BlockVariantSelection(variantSetName) None

Blocks the variant selected for the given variant set by setting the variant selection to empty.

Parameters

variantSetName (str) –

CanSetName(newName, whyNot) bool

Returns true if setting the prim spec’s name to newName will succeed.

Returns false if it won’t, and sets whyNot with a string describing why not.

Parameters
  • newName (str) –

  • whyNot (str) –

ClearActive() None

Removes the active opinion in this prim spec if there is one.

ClearInstanceable() None

Clears the value for the prim’s instanceable flag.

ClearKind() None

Remove the kind opinion from this prim spec if there is one.

ClearPayloadList()

Clears the payloads for this prim.

ClearReferenceList()

Clears the references for this prim.

GetAttributeAtPath(path) AttributeSpec

Returns an attribute given its path .

Returns invalid handle if there is no attribute at path . This is simply a more specifically typed version of GetObjectAtPath.

Parameters

path (Path) –

GetObjectAtPath(path) object

path: Path

Returns a prim or property given its namespace path.

If path is relative then it will be interpreted as relative to this prim. If it is absolute then it will be interpreted as absolute in this prim’s layer. The return type can be either PrimSpecPtr or PropertySpecPtr.

GetPrimAtPath(path) PrimSpec

Returns a prim given its path .

Returns invalid handle if there is no prim at path . This is simply a more specifically typed version of GetObjectAtPath.

Parameters

path (Path) –

GetPropertyAtPath(path) PropertySpec

Returns a property given its path .

Returns invalid handle if there is no property at path . This is simply a more specifically typed version of GetObjectAtPath.

Parameters

path (Path) –

GetRelationshipAtPath(path) RelationshipSpec

Returns a relationship given its path .

Returns invalid handle if there is no relationship at path . This is simply a more specifically typed version of GetObjectAtPath.

Parameters

path (Path) –

GetVariantNames(name) list[str]

Returns list of variant names for the given variant set.

Parameters

name (str) –

HasActive() bool

Returns true if this prim spec has an opinion about active.

HasInstanceable() bool

Returns true if this prim spec has a value authored for its instanceable flag, false otherwise.

HasKind() bool

Returns true if this prim spec has an opinion about kind.

RemoveProperty(property) None

Removes the property.

Parameters

property (PropertySpec) –

ActiveKey = 'active'
AnyTypeToken = '__AnyType__'
CommentKey = 'comment'
CustomDataKey = 'customData'
DocumentationKey = 'documentation'
HiddenKey = 'hidden'
InheritPathsKey = 'inheritPaths'
KindKey = 'kind'
PayloadKey = 'payload'
PermissionKey = 'permission'
PrefixKey = 'prefix'
PrefixSubstitutionsKey = 'prefixSubstitutions'
PrimOrderKey = 'primOrder'
PropertyOrderKey = 'propertyOrder'
ReferencesKey = 'references'
RelocatesKey = 'relocates'
SpecializesKey = 'specializes'
SpecifierKey = 'specifier'
SymmetricPeerKey = 'symmetricPeer'
SymmetryArgumentsKey = 'symmetryArguments'
SymmetryFunctionKey = 'symmetryFunction'
TypeNameKey = 'typeName'
VariantSelectionKey = 'variantSelection'
VariantSetNamesKey = 'variantSetNames'
property active

Whether this prim spec is active. The default value is true.

property assetInfo

Returns the asset info dictionary for this prim.

The default value is an empty dictionary.

The asset info dictionary is used to annotate prims representing the root-prims of assets (generally organized as models) with various data related to asset management. For example, asset name, root layer identifier, asset version etc.

property attributes

The attributes of this prim, as an ordered dictionary.

property comment

The prim’s comment string.

property customData

The custom data for this prim.

The default value for custom data is an empty dictionary.

Custom data is for use by plugins or other non-tools supplied extensions that need to be able to store data attached to arbitrary scene objects. Note that if the only objects you want to store data on are prims, using custom attributes is probably a better choice. But if you need to possibly store this data on attributes or relationships or as annotations on reference arcs, then custom data is an appropriate choice.

property documentation

The prim’s documentation string.

property expired
property hasPayloads

Returns true if this prim has payloads set.

property hasReferences

Returns true if this prim has references set.

property hidden

Whether this prim spec will be hidden in browsers. The default value is false.

property inheritPathList

A PathListEditor for the prim’s inherit paths.

The list of the inherit paths for this prim may be modified with this PathListEditor.

A PathListEditor may express a list either as an explicit value or as a set of list editing operations. See PathListEditor for more information.

property instanceable

Whether this prim spec is flagged as instanceable. The default value is false.

property kind

What kind of model this prim spec represents, if any. The default is an empty string

property name

The prim’s name.

property nameChildren

The prim name children of this prim, as an ordered dictionary.

Note that although this property is described as being read-only, you can modify the contents to add, remove, or reorder children.

property nameChildrenOrder

Get/set the list of child names for this prim’s ‘reorder nameChildren’ statement.

property nameParent

The name parent of this prim.

property nameRoot

The name pseudo-root of this prim.

property payloadList

A PayloadListEditor for the prim’s payloads.

The list of the payloads for this prim may be modified with this PayloadListEditor.

A PayloadListEditor may express a list either as an explicit value or as a set of list editing operations. See PayloadListEditor for more information.

property permission

The prim’s permission restriction. The default value is SdfPermissionPublic.

property prefix

The prim’s prefix.

property prefixSubstitutions

Dictionary of prefix substitutions.

property properties

The properties of this prim, as an ordered dictionary.

Note that although this property is described as being read-only, you can modify the contents to add, remove, or reorder properties.

property propertyOrder

Get/set the list of property names for this prim’s ‘reorder properties’ statement.

property realNameParent

The name parent of this prim.

property referenceList

A ReferenceListEditor for the prim’s references.

The list of the references for this prim may be modified with this ReferenceListEditor.

A ReferenceListEditor may express a list either as an explicit value or as a set of list editing operations. See ReferenceListEditor for more information.

property relationships

The relationships of this prim, as an ordered dictionary.

property relocates

An editing proxy for the prim’s map of relocation paths.

The map of source-to-target paths specifying namespace relocation may be set or cleared whole, or individual map entries may be added, removed, or edited.

property specializesList

A PathListEditor for the prim’s specializes.

The list of the specializes for this prim may be modified with this PathListEditor.

A PathListEditor may express a list either as an explicit value or as a set of list editing operations. See PathListEditor for more information.

property specifier

The prim’s specifier (SpecifierDef or SpecifierOver). The default value is SpecifierOver.

property suffix

The prim’s suffix.

property suffixSubstitutions

Dictionary of prefix substitutions.

property symmetricPeer

The prims’s symmetric peer.

property symmetryArguments

Dictionary with prim symmetry arguments.

Although this property is marked read-only, you can modify the contents to add, change, and clear symmetry arguments.

property symmetryFunction

The prim’s symmetry function.

property typeName

The type of this prim.

property variantSelections

Dictionary whose keys are variant set names and whose values are the variants chosen for each set.

Although this property is marked read-only, you can modify the contents to add, change, and clear variants.

property variantSetNameList

A StringListEditor for the names of the variant sets for this prim.

The list of the names of the variants sets of this prim may be modified with this StringListEditor.

A StringListEditor may express a list either as an explicit value or as a set of list editing operations. See StringListEditor for more information.

Although this property is marked as read-only, the returned object is modifiable.

property variantSets

The VariantSetSpecs for this prim indexed by name.

Although this property is marked as read-only, you can modify the contents to remove variant sets. New variant sets are created by creating them with the prim as the owner.

Although this property is marked as read-only, the returned object is modifiable.

class pxr.Sdf.PropertySpec

Base class for SdfAttributeSpec and SdfRelationshipSpec.

Scene Spec Attributes (SdfAttributeSpec) and Relationships (SdfRelationshipSpec) are the basic properties that make up Scene Spec Prims (SdfPrimSpec). They share many qualities and can sometimes be treated uniformly. The common qualities are provided by this base class.

NOTE: Do not use Python reserved words and keywords as attribute names. This will cause attribute resolution to fail.

Methods:

ClearDefaultValue()

Clear the attribute's default value.

HasDefaultValue()

Returns true if a default value is set for this attribute.

Attributes:

AssetInfoKey

CommentKey

CustomDataKey

CustomKey

DisplayGroupKey

DisplayNameKey

DocumentationKey

HiddenKey

PermissionKey

PrefixKey

SymmetricPeerKey

SymmetryArgumentsKey

SymmetryFunctionKey

assetInfo

Returns the asset info dictionary for this property.

comment

A comment describing the property.

custom

Whether this property spec declares a custom attribute.

customData

The property's custom data.

default

The default value of this property.

displayGroup

DisplayGroup for the property.

displayName

DisplayName for the property.

documentation

Documentation for the property.

expired

hasOnlyRequiredFields

Indicates whether this spec has any significant data other than just what is necessary for instantiation.

hidden

Whether this property will be hidden in browsers.

name

The name of the property.

owner

The owner of this property.

permission

The property's permission restriction.

prefix

Prefix for the property.

symmetricPeer

The property's symmetric peer.

symmetryArguments

Dictionary with property symmetry arguments.

symmetryFunction

The property's symmetry function.

variability

Returns the variability of the property.

ClearDefaultValue() None

Clear the attribute’s default value.

HasDefaultValue() bool

Returns true if a default value is set for this attribute.

AssetInfoKey = 'assetInfo'
CommentKey = 'comment'
CustomDataKey = 'customData'
CustomKey = 'custom'
DisplayGroupKey = 'displayGroup'
DisplayNameKey = 'displayName'
DocumentationKey = 'documentation'
HiddenKey = 'hidden'
PermissionKey = 'permission'
PrefixKey = 'prefix'
SymmetricPeerKey = 'symmetricPeer'
SymmetryArgumentsKey = 'symmetryArguments'
SymmetryFunctionKey = 'symmetryFunction'
property assetInfo

Returns the asset info dictionary for this property.

The default value is an empty dictionary.

The asset info dictionary is used to annotate SdfAssetPath-valued attributes pointing to the root-prims of assets (generally organized as models) with various data related to asset management. For example, asset name, root layer identifier, asset version etc.

Note: It is only valid to author assetInfo on attributes that are of type SdfAssetPath.

property comment

A comment describing the property.

property custom

Whether this property spec declares a custom attribute.

property customData

The property’s custom data.

The default value for custom data is an empty dictionary.

Custom data is for use by plugins or other non-tools supplied extensions that need to be able to store data attached to arbitrary scene objects. Note that if the only objects you want to store data on are prims, using custom attributes is probably a better choice. But if you need to possibly store this data on attributes or relationships or as annotations on reference arcs, then custom data is an appropriate choice.

property default

The default value of this property.

property displayGroup

DisplayGroup for the property.

property displayName

DisplayName for the property.

property documentation

Documentation for the property.

property expired
property hasOnlyRequiredFields

Indicates whether this spec has any significant data other than just what is necessary for instantiation.

This is a less strict version of isInert, returning True if the spec contains as much as the type and name.

property hidden

Whether this property will be hidden in browsers.

property name

The name of the property.

property owner

The owner of this property. Either a relationship or a prim.

property permission

The property’s permission restriction.

property prefix

Prefix for the property.

property symmetricPeer

The property’s symmetric peer.

property symmetryArguments

Dictionary with property symmetry arguments.

Although this property is marked read-only, you can modify the contents to add, change, and clear symmetry arguments.

property symmetryFunction

The property’s symmetry function.

property variability

Returns the variability of the property.

An attribute’s variability may be Varying Uniform, Config or Computed. For an attribute, the default is Varying, for a relationship the default is Uniform.

Varying relationships may be directly authored ‘animating’ targetpaths over time. Varying attributes may be directly authored, animated and affected on by Actions. They are the most flexible.

Uniform attributes may be authored only with non-animated values (default values). They cannot be affected by Actions, but they can be connected to other Uniform attributes.

Config attributes are the same as Uniform except that a Prim can choose to alter its collection of built-in properties based on the values of its Config attributes.

Computed attributes may not be authored in scene description. Prims determine the values of their Computed attributes through Prim-specific computation. They may not be connected.

class pxr.Sdf.PseudoRootSpec

Attributes:

expired

property expired
class pxr.Sdf.Reference

Represents a reference and all its meta data.

A reference is expressed on a prim in a given layer and it identifies a prim in a layer stack. All opinions in the namespace hierarchy under the referenced prim will be composed with the opinions in the namespace hierarchy under the referencing prim.

The asset path specifies the layer stack being referenced. If this asset path is non-empty, this reference is considered an’external’reference to the layer stack rooted at the specified layer. If this is empty, this reference is considered an’internal’reference to the layer stack containing (but not necessarily rooted at) the layer where the reference is authored.

The prim path specifies the prim in the referenced layer stack from which opinions will be composed. If this prim path is empty, it will be considered a reference to the default prim specified in the root layer of the referenced layer stack see SdfLayer::GetDefaultPrim.

The meta data for a reference is its layer offset and custom data. The layer offset is an affine transformation applied to all anim splines in the referenced prim’s namespace hierarchy, see SdfLayerOffset for details. Custom data is for use by plugins or other non-tools supplied extensions that need to be able to store data associated with references.

Methods:

IsInternal()

Returns true in the case of an internal reference.

Attributes:

assetPath

None

customData

None

layerOffset

None

primPath

None

IsInternal() bool

Returns true in the case of an internal reference.

An internal reference is a reference with an empty asset path.

property assetPath

None

Sets the asset path for the root layer of the referenced layer stack.

This may be set to an empty string to specify an internal reference. See SdfAssetPath for what characters are valid in assetPath . If assetPath contains invalid characters, issue an error and set this reference’s asset path to the empty asset path.


type : str

Returns the asset path to the root layer of the referenced layer stack.

This will be empty in the case of an internal reference.

Type

type

property customData

None

Sets the custom data associated with the reference.


type : None

Sets a custom data entry for the reference.

If value is empty, then this removes the given custom data entry.


type : VtDictionary

Returns the custom data associated with the reference.

Type

type

property layerOffset

None

Sets a new layer offset.


type : LayerOffset

Returns the layer offset associated with the reference.

Type

type

property primPath

None

Sets the path of the referenced prim.

This may be set to an empty path to specify a reference to the default prim in the referenced layer stack.


type : Path

Returns the path of the referenced prim.

This will be empty if the referenced prim is the default prim specified in the referenced layer stack.

Type

type

class pxr.Sdf.ReferenceListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.RelationshipSpec

A property that contains a reference to one or more SdfPrimSpec instances.

A relationship may refer to one or more target prims or attributes. All targets of a single relationship are considered to be playing the same role. Note that role does not imply that the target prims or attributes are of the same type .

Relationships may be annotated with relational attributes. Relational attributes are named SdfAttributeSpec objects containing values that describe the relationship. For example, point weights are commonly expressed as relational attributes.

Methods:

RemoveTargetPath(path, preserveTargetOrder)

Removes the specified target path.

ReplaceTargetPath(oldPath, newPath)

Updates the specified target path.

Attributes:

TargetsKey

expired

noLoadHint

whether the target must be loaded to load the prim this relationship is attached to.

targetPathList

A PathListEditor for the relationship's target paths.

RemoveTargetPath(path, preserveTargetOrder) None

Removes the specified target path.

Removes the given target path and any relational attributes for the given target path. If preserveTargetOrder is true , Erase() is called on the list editor instead of RemoveItemEdits(). This preserves the ordered items list.

Parameters
  • path (Path) –

  • preserveTargetOrder (bool) –

ReplaceTargetPath(oldPath, newPath) None

Updates the specified target path.

Replaces the path given by oldPath with the one specified by newPath . Relational attributes are updated if necessary.

Parameters
TargetsKey = 'targetPaths'
property expired
property noLoadHint

whether the target must be loaded to load the prim this relationship is attached to.

property targetPathList

A PathListEditor for the relationship’s target paths.

The list of the target paths for this relationship may be modified with this PathListEditor.

A PathListEditor may express a list either as an explicit value or as a set of list editing operations. See PathListEditor for more information.

class pxr.Sdf.Spec

Base class for all Sdf spec classes.

Methods:

ClearInfo(key)

key : string nClears the value for scene spec info with the given key.

GetAsText

GetFallbackForInfo(key)

key : string

GetInfo(key)

Gets the value for the given metadata key.

GetMetaDataDisplayGroup(key)

Returns this metadata key's displayGroup.

GetMetaDataInfoKeys()

Returns the list of metadata info keys for this object.

GetTypeForInfo(key)

key : string

HasInfo(key)

key : string

IsInert

Indicates whether this spec has any significant data.

ListInfoKeys()

Returns the full list of info keys currently set on this object.

SetInfo(key, value)

Sets the value for the given metadata key.

SetInfoDictionaryValue(dictionaryKey, ...)

Sets the value for entryKey to value within the dictionary with the given metadata key dictionaryKey .

Attributes:

expired

isInert

Indicates whether this spec has any significant data.

layer

The owning layer.

path

The absolute scene path.

ClearInfo(key)

key : string nClears the value for scene spec info with the given key. After calling this, HasInfo() will return false. To make HasInfo() return true, set a value for that scene spec info.

GetAsText()
GetFallbackForInfo(key)

key : string

Returns the fallback value for the given key.

GetInfo(key) VtValue

Gets the value for the given metadata key.

This is interim API which is likely to change. Only editors with an immediate specific need (like the Inspector) should use this API.

Parameters

key (str) –

GetMetaDataDisplayGroup(key) str

Returns this metadata key’s displayGroup.

Parameters

key (str) –

GetMetaDataInfoKeys() list[str]

Returns the list of metadata info keys for this object.

This is not the complete list of keys, it is only those that should be considered to be metadata by inspectors or other presentation UI.

This is interim API which is likely to change. Only editors with an immediate specific need (like the Inspector) should use this API.

GetTypeForInfo(key)

key : string

Returns the type of value for the given key.

HasInfo(key) bool

key : string

Returns whether there is a setting for the scene spec info with the given key.

When asked for a value for one of its scene spec info, a valid value will always be returned. But if this API returns false for a scene spec info, the value of that info will be the defined default value.

(XXX: This may change such that it is an error to ask for a value when there is none).

When dealing with a composedLayer, it is not necessary to worry about whether a scene spec info ‘has a value’ because the composed layer will always have a valid value, even if it is the default.

A spec may or may not have an expressed value for some of its scene spec info.

IsInert()

Indicates whether this spec has any significant data. If ignoreChildren is true, child scenegraph objects will be ignored.

ListInfoKeys() list[str]

Returns the full list of info keys currently set on this object.

This does not include fields that represent names of children.

SetInfo(key, value) None

Sets the value for the given metadata key.

It is an error to pass a value that is not the correct type for that given key.

This is interim API which is likely to change. Only editors with an immediate specific need (like the Inspector) should use this API.

Parameters
  • key (str) –

  • value (VtValue) –

SetInfoDictionaryValue(dictionaryKey, entryKey, value) None

Sets the value for entryKey to value within the dictionary with the given metadata key dictionaryKey .

Parameters
  • dictionaryKey (str) –

  • entryKey (str) –

  • value (VtValue) –

property expired
property isInert

Indicates whether this spec has any significant data. This is for backwards compatibility, use IsInert instead.

Compatibility note: prior to presto 1.9, isInert (then isEmpty) was true for otherwise inert PrimSpecs with inert inherits, references, or variant sets. isInert is now false in such conditions.

property layer

The owning layer.

property path

The absolute scene path.

class pxr.Sdf.SpecType

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.SpecTypeUnknown, Sdf.SpecTypeAttribute, Sdf.SpecTypeConnection, Sdf.SpecTypeExpression, Sdf.SpecTypeMapper, Sdf.SpecTypeMapperArg, Sdf.SpecTypePrim, Sdf.SpecTypePseudoRoot, Sdf.SpecTypeRelationship, Sdf.SpecTypeRelationshipTarget, Sdf.SpecTypeVariant, Sdf.SpecTypeVariantSet)
class pxr.Sdf.Specifier

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.SpecifierDef, Sdf.SpecifierOver, Sdf.SpecifierClass)
class pxr.Sdf.StringListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.TimeCode

Value type that represents a time code. It’s equivalent to a double type value but is used to indicate that this value should be resolved by any time based value resolution.

Methods:

GetValue()

Return the time value.

GetValue() float

Return the time value.

class pxr.Sdf.TimeCodeArray

An array of type SdfTimeCode.

class pxr.Sdf.TokenListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.UInt64ListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.UIntListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.UnregisteredValue

Stores a representation of the value for an unregistered metadata field encountered during text layer parsing.

This provides the ability to serialize this data to a layer, as well as limited inspection and editing capabilities (e.g., moving this data to a different spec or field) even when the data type of the value isn’t known.

Attributes:

value

VtValue

property value

VtValue

Returns the wrapped VtValue specified in the constructor.

Type

type

class pxr.Sdf.UnregisteredValueListOp

Methods:

ApplyOperations

Clear

ClearAndMakeExplicit

Create

CreateExplicit

GetAddedOrExplicitItems

HasItem

Attributes:

addedItems

appendedItems

deletedItems

explicitItems

isExplicit

orderedItems

prependedItems

ApplyOperations()
Clear()
ClearAndMakeExplicit()
static Create()
static CreateExplicit()
GetAddedOrExplicitItems()
HasItem()
property addedItems
property appendedItems
property deletedItems
property explicitItems
property isExplicit
property orderedItems
property prependedItems
class pxr.Sdf.ValueBlock

A special value type that can be used to explicitly author an opinion for an attribute’s default value or time sample value that represents having no value. Note that this is different from not having a value authored.

One could author such a value in two ways.

attribute->SetDefaultValue(VtValue(SdfValueBlock());
\.\.\.
layer->SetTimeSample(attribute->GetPath(), 101, VtValue(SdfValueBlock()));
class pxr.Sdf.ValueRoleNames

Attributes:

Color

EdgeIndex

FaceIndex

Frame

Normal

Point

PointIndex

TextureCoordinate

Transform

Vector

Color = 'Color'
EdgeIndex = 'EdgeIndex'
FaceIndex = 'FaceIndex'
Frame = 'Frame'
Normal = 'Normal'
Point = 'Point'
PointIndex = 'PointIndex'
TextureCoordinate = 'TextureCoordinate'
Transform = 'Transform'
Vector = 'Vector'
class pxr.Sdf.ValueTypeName

Represents a value type name, i.e. an attribute’s type name. Usually, a value type name associates a string with a TfType and an optional role, along with additional metadata. A schema registers all known value type names and may register multiple names for the same TfType and role pair. All name strings for a given pair are collectively called its aliases.

A value type name may also represent just a name string, without a TfType , role or other metadata. This is currently used exclusively to unserialize and re-serialize an attribute’s type name where that name is not known to the schema.

Because value type names can have aliases and those aliases may change in the future, clients should avoid using the value type name’s string representation except to report human readable messages and when serializing. Clients can look up a value type name by string using SdfSchemaBase::FindType() and shouldn’t otherwise need the string. Aliases compare equal, even if registered by different schemas.

Attributes:

aliasesAsStrings

arrayType

ValueTypeName

cppTypeName

defaultUnit

Enum

defaultValue

VtValue

isArray

bool

isScalar

bool

role

str

scalarType

ValueTypeName

type

Type

property aliasesAsStrings
property arrayType

ValueTypeName

Returns the array version of this type name if it’s an scalar type name, otherwise returns this type name.

If there is no array type name then this returns the invalid type name.

Type

type

property cppTypeName
property defaultUnit

Enum

Returns the default unit enum for the type.

Type

type

property defaultValue

VtValue

Returns the default value for the type.

Type

type

property isArray

bool

Returns true iff this type is an array.

The invalid type is considered neither scalar nor array.

Type

type

property isScalar

bool

Returns true iff this type is a scalar.

The invalid type is considered neither scalar nor array.

Type

type

property role

str

Returns the type’s role.

Type

type

property scalarType

ValueTypeName

Returns the scalar version of this type name if it’s an array type name, otherwise returns this type name.

If there is no scalar type name then this returns the invalid type name.

Type

type

property type

Type

Returns the TfType of the type.

Type

type

class pxr.Sdf.ValueTypeNames

Methods:

Find

Attributes:

Asset

AssetArray

Bool

BoolArray

Color3d

Color3dArray

Color3f

Color3fArray

Color3h

Color3hArray

Color4d

Color4dArray

Color4f

Color4fArray

Color4h

Color4hArray

Double

Double2

Double2Array

Double3

Double3Array

Double4

Double4Array

DoubleArray

Float

Float2

Float2Array

Float3

Float3Array

Float4

Float4Array

FloatArray

Frame4d

Frame4dArray

Half

Half2

Half2Array

Half3

Half3Array

Half4

Half4Array

HalfArray

Int

Int2

Int2Array

Int3

Int3Array

Int4

Int4Array

Int64

Int64Array

IntArray

Matrix2d

Matrix2dArray

Matrix3d

Matrix3dArray

Matrix4d

Matrix4dArray

Normal3d

Normal3dArray

Normal3f

Normal3fArray

Normal3h

Normal3hArray

Point3d

Point3dArray

Point3f

Point3fArray

Point3h

Point3hArray

Quatd

QuatdArray

Quatf

QuatfArray

Quath

QuathArray

String

StringArray

TexCoord2d

TexCoord2dArray

TexCoord2f

TexCoord2fArray

TexCoord2h

TexCoord2hArray

TexCoord3d

TexCoord3dArray

TexCoord3f

TexCoord3fArray

TexCoord3h

TexCoord3hArray

TimeCode

TimeCodeArray

Token

TokenArray

UChar

UCharArray

UInt

UInt64

UInt64Array

UIntArray

Vector3d

Vector3dArray

Vector3f

Vector3fArray

Vector3h

Vector3hArray

static Find()
Asset = <pxr.Sdf.ValueTypeName object>
AssetArray = <pxr.Sdf.ValueTypeName object>
Bool = <pxr.Sdf.ValueTypeName object>
BoolArray = <pxr.Sdf.ValueTypeName object>
Color3d = <pxr.Sdf.ValueTypeName object>
Color3dArray = <pxr.Sdf.ValueTypeName object>
Color3f = <pxr.Sdf.ValueTypeName object>
Color3fArray = <pxr.Sdf.ValueTypeName object>
Color3h = <pxr.Sdf.ValueTypeName object>
Color3hArray = <pxr.Sdf.ValueTypeName object>
Color4d = <pxr.Sdf.ValueTypeName object>
Color4dArray = <pxr.Sdf.ValueTypeName object>
Color4f = <pxr.Sdf.ValueTypeName object>
Color4fArray = <pxr.Sdf.ValueTypeName object>
Color4h = <pxr.Sdf.ValueTypeName object>
Color4hArray = <pxr.Sdf.ValueTypeName object>
Double = <pxr.Sdf.ValueTypeName object>
Double2 = <pxr.Sdf.ValueTypeName object>
Double2Array = <pxr.Sdf.ValueTypeName object>
Double3 = <pxr.Sdf.ValueTypeName object>
Double3Array = <pxr.Sdf.ValueTypeName object>
Double4 = <pxr.Sdf.ValueTypeName object>
Double4Array = <pxr.Sdf.ValueTypeName object>
DoubleArray = <pxr.Sdf.ValueTypeName object>
Float = <pxr.Sdf.ValueTypeName object>
Float2 = <pxr.Sdf.ValueTypeName object>
Float2Array = <pxr.Sdf.ValueTypeName object>
Float3 = <pxr.Sdf.ValueTypeName object>
Float3Array = <pxr.Sdf.ValueTypeName object>
Float4 = <pxr.Sdf.ValueTypeName object>
Float4Array = <pxr.Sdf.ValueTypeName object>
FloatArray = <pxr.Sdf.ValueTypeName object>
Frame4d = <pxr.Sdf.ValueTypeName object>
Frame4dArray = <pxr.Sdf.ValueTypeName object>
Half = <pxr.Sdf.ValueTypeName object>
Half2 = <pxr.Sdf.ValueTypeName object>
Half2Array = <pxr.Sdf.ValueTypeName object>
Half3 = <pxr.Sdf.ValueTypeName object>
Half3Array = <pxr.Sdf.ValueTypeName object>
Half4 = <pxr.Sdf.ValueTypeName object>
Half4Array = <pxr.Sdf.ValueTypeName object>
HalfArray = <pxr.Sdf.ValueTypeName object>
Int = <pxr.Sdf.ValueTypeName object>
Int2 = <pxr.Sdf.ValueTypeName object>
Int2Array = <pxr.Sdf.ValueTypeName object>
Int3 = <pxr.Sdf.ValueTypeName object>
Int3Array = <pxr.Sdf.ValueTypeName object>
Int4 = <pxr.Sdf.ValueTypeName object>
Int4Array = <pxr.Sdf.ValueTypeName object>
Int64 = <pxr.Sdf.ValueTypeName object>
Int64Array = <pxr.Sdf.ValueTypeName object>
IntArray = <pxr.Sdf.ValueTypeName object>
Matrix2d = <pxr.Sdf.ValueTypeName object>
Matrix2dArray = <pxr.Sdf.ValueTypeName object>
Matrix3d = <pxr.Sdf.ValueTypeName object>
Matrix3dArray = <pxr.Sdf.ValueTypeName object>
Matrix4d = <pxr.Sdf.ValueTypeName object>
Matrix4dArray = <pxr.Sdf.ValueTypeName object>
Normal3d = <pxr.Sdf.ValueTypeName object>
Normal3dArray = <pxr.Sdf.ValueTypeName object>
Normal3f = <pxr.Sdf.ValueTypeName object>
Normal3fArray = <pxr.Sdf.ValueTypeName object>
Normal3h = <pxr.Sdf.ValueTypeName object>
Normal3hArray = <pxr.Sdf.ValueTypeName object>
Point3d = <pxr.Sdf.ValueTypeName object>
Point3dArray = <pxr.Sdf.ValueTypeName object>
Point3f = <pxr.Sdf.ValueTypeName object>
Point3fArray = <pxr.Sdf.ValueTypeName object>
Point3h = <pxr.Sdf.ValueTypeName object>
Point3hArray = <pxr.Sdf.ValueTypeName object>
Quatd = <pxr.Sdf.ValueTypeName object>
QuatdArray = <pxr.Sdf.ValueTypeName object>
Quatf = <pxr.Sdf.ValueTypeName object>
QuatfArray = <pxr.Sdf.ValueTypeName object>
Quath = <pxr.Sdf.ValueTypeName object>
QuathArray = <pxr.Sdf.ValueTypeName object>
String = <pxr.Sdf.ValueTypeName object>
StringArray = <pxr.Sdf.ValueTypeName object>
TexCoord2d = <pxr.Sdf.ValueTypeName object>
TexCoord2dArray = <pxr.Sdf.ValueTypeName object>
TexCoord2f = <pxr.Sdf.ValueTypeName object>
TexCoord2fArray = <pxr.Sdf.ValueTypeName object>
TexCoord2h = <pxr.Sdf.ValueTypeName object>
TexCoord2hArray = <pxr.Sdf.ValueTypeName object>
TexCoord3d = <pxr.Sdf.ValueTypeName object>
TexCoord3dArray = <pxr.Sdf.ValueTypeName object>
TexCoord3f = <pxr.Sdf.ValueTypeName object>
TexCoord3fArray = <pxr.Sdf.ValueTypeName object>
TexCoord3h = <pxr.Sdf.ValueTypeName object>
TexCoord3hArray = <pxr.Sdf.ValueTypeName object>
TimeCode = <pxr.Sdf.ValueTypeName object>
TimeCodeArray = <pxr.Sdf.ValueTypeName object>
Token = <pxr.Sdf.ValueTypeName object>
TokenArray = <pxr.Sdf.ValueTypeName object>
UChar = <pxr.Sdf.ValueTypeName object>
UCharArray = <pxr.Sdf.ValueTypeName object>
UInt = <pxr.Sdf.ValueTypeName object>
UInt64 = <pxr.Sdf.ValueTypeName object>
UInt64Array = <pxr.Sdf.ValueTypeName object>
UIntArray = <pxr.Sdf.ValueTypeName object>
Vector3d = <pxr.Sdf.ValueTypeName object>
Vector3dArray = <pxr.Sdf.ValueTypeName object>
Vector3f = <pxr.Sdf.ValueTypeName object>
Vector3fArray = <pxr.Sdf.ValueTypeName object>
Vector3h = <pxr.Sdf.ValueTypeName object>
Vector3hArray = <pxr.Sdf.ValueTypeName object>
class pxr.Sdf.Variability

Methods:

GetValueFromName

Attributes:

allValues

static GetValueFromName()
allValues = (Sdf.VariabilityVarying, Sdf.VariabilityUniform)
class pxr.Sdf.VariantSetSpec

Represents a coherent set of alternate representations for part of a scene.

An SdfPrimSpec object may contain one or more named SdfVariantSetSpec objects that define variations on the prim.

An SdfVariantSetSpec object contains one or more named SdfVariantSpec objects. It may also define the name of one of its variants to be used by default.

When a prim references another prim, the referencing prim may specify one of the variants from each of the variant sets of the target prim. The chosen variant from each set (or the default variant from those sets that the referencing prim does not explicitly specify) is composited over the target prim, and then the referencing prim is composited over the result.

Methods:

RemoveVariant(variant)

Removes variant from the list of variants.

Attributes:

expired

name

The variant set's name.

owner

The prim that this variant set belongs to.

variantList

The variants in this variant set as a list.

variants

The variants in this variant set as a dict.

RemoveVariant(variant) None

Removes variant from the list of variants.

If the variant set does not currently own variant , no action is taken.

Parameters

variant (VariantSpec) –

property expired
property name

The variant set’s name.

property owner

The prim that this variant set belongs to.

property variantList

The variants in this variant set as a list.

property variants

The variants in this variant set as a dict.

class pxr.Sdf.VariantSpec

Represents a single variant in a variant set.

A variant contains a prim. This prim is the root prim of the variant.

SdfVariantSpecs are value objects. This means they are immutable once created and they are passed by copy-in APIs. To change a variant spec, you make a new one and replace the existing one.

Methods:

GetVariantNames(name)

Returns list of variant names for the given variant set.

Attributes:

expired

name

The variant's name.

owner

The variant set that this variant belongs to.

primSpec

The root prim of this variant.

variantSets

SdfVariantSetsProxy

GetVariantNames(name) list[str]

Returns list of variant names for the given variant set.

Parameters

name (str) –

property expired
property name

The variant’s name.

property owner

The variant set that this variant belongs to.

property primSpec

The root prim of this variant.

property variantSets

SdfVariantSetsProxy

Returns the nested variant sets.

The result maps variant set names to variant sets. Variant sets may be removed through the proxy.

Type

type

pxr.Sdf.Find(layerFileName, scenePath) object

layerFileName: string scenePath: Path

If given a single string argument, returns the menv layer with the given filename. If given two arguments (a string and a Path), finds the menv layer with the given filename and returns the scene object within it at the given path.