SceneGraphNodeΒΆ
class SceneGraphNode
Base class of all the objects that can be stored in the scene graph like primitives and groups
Hierarchy
class SceneGraphNode < class HostNode < class SelectableNode < class Node
Children classes : class ArchRef , class EnvironmentLocator , class Locator , class LuaScriptNode , class RenderGraphNodeSG , class Scene
Members
types.bool | FreezeTransform | RW | Indicate if the SceneGraphNode's parameters are to be frozen |
boolean | Hidden | RW | The visibility state. |
types.enum | HierarchyMode | RW | Indicates the transform mode of the node (local, world as PRMan, Maya or Max) |
nil | Instances | RW | The dpendencies on instanced SceneGraphNodes |
nil | InvWBounds | R | Invalidated when the world transform and/or bounds of the object has changed. |
boolean | IsHidden | R | The visibility state. This plug tells if this node is visible, regarding its state and the state of its parents. |
types.string | Mermbership | RW | The list of tags the node owns |
nil | RibAttributes | RW | The dependency on the additional Rib Attributes to be assigned |
transform | Transform | RW | The SceneGraphNode's local to world transform |
types.table | _TagSet | R | The full set of tags this node has, containing explicitly defined and inherited tags |
| createinstance | (
|
Create an instance at this node |
| fillanimationtemplate | (
|
Fill a template table with the "Animation" attributes |
| fillarealighttemplate | (
|
Fill a template table with the "Area Light" attributes |
| fillcurvestemplate | (
|
Fill a template table with the "Curves" attributes |
| fillgeometrytemplate | (
|
Fill a template table with the "Geometry" attributes |
| filllinkingtemplate | (
|
Fill a template table with the "Linking" attributes |
| fillopengltemplate | (
|
Fill a template table with the "OpenGL" attributes |
| fillparticlestemplate | (
|
Fill a template table with the "Particles" attributes |
| fillproceduraltemplate | (
|
Fill a template table with the "Procedural" attributes |
| fillraytracingtemplate | (
|
Fill a template table with the "Raytracing" attributes |
| fillsamplingtemplate | (
|
Fill a template table with the "Sampling" attributes |
| fillscenenodetemplate | (
|
Fill a template table with the "Primitive" attributes |
| fillshadertemplate | (
|
Fill a template table with the "Surface" attributes |
| fillshadingtemplate | (
|
Fill a template table with the "Shading" attributes |
| fillsubdivtemplate | (
|
Fill a template table with the "Subdivision" attributes |
| filltransformtemplate | (
|
Fill a template table with the "Transform" attributes |
| fillvolumetrictemplate | (
|
Fill a template table with the "Volumetric" attributes |
| flatteninstance | (
|
Flatten an instance by name, or all instances if name is nil |
| getmatrix | ( ) | Returns the node's first transform matrix. |
| getparentworldmatrix | ( ) | Returns the exclusive world matrix of the node |
| getparentworldtransform | ( ) | Returns the exclusive world transform of the node |
| getposition | ( ) | Returns the node's position. |
| getsgparent | ( ) | Returns the node's hierarchical parent. |
| gettransform | ( ) | Return the top Transform node of the transform stack of this SceneGraphNode or this if the stack is empty |
| getworldmatrix | ( ) | Returns the node's world transform first matrix. |
| getworldposition | ( ) | Returns the node's world position. |
| getworldtolocalmatrix | ( ) | Returns the inverse of the world matrix |
| getworldtolocaltransform | ( ) | Returns the inverse of the world transform |
| getworldtransform | ( ) | Returns the node's world transform. |
| isinstance | (
|
Returns true if the given path contains an instance |
| isleafinstance | (
|
Returns true if the lath item of the path is an instance |
| listbytags | (
|
List children nodes (include self) that have specified tags |
| listbytags | (
|
List nodes in the hierarchy that have at least one of the given tags |
| pathtonode | (
|
Returns a node from a path, this path may be dynamically generated by RenderGraph instancing |
| realpathtonode | (
|
Returns a node from a path, this path must be static |
| removeinstance | (
|
Remove an instance |
| setmatrix | (
|
Set the local matrix of the node |
| setworldmatrix | (
|
Set the world matrix of the node |
| setworldposition | (
|
Set the world position of the node, leaving the rest of the transform unchanged |
| traverse | (
|
Traverse the hierarchy and call a map function on every node |
| displayrenderattribute | (
|
Enable/disable the display of a specific attribute in the properties |
| getparentpath | (
|
Get the parent path of a path |
| getrenderattributedefinition | (
|
Lookup the render attributes definition by for a category and aan attribute name |
| getrenderattributes | (
|
Get the rendering attributes of a node/path |
| listrenderattributes | ( ) | Get the list of available render attributes |
| pathlocaltransformorient | (
|
Get the world to local transform a node/path with its local z axis transform applied (lights and cameras can have their z flipped) |
| pathworldtransform | (
|
Get the local to world transform a node/path |
| pathworldtransformorient | (
|
Get the local to world transform a node/path with its local z axis transform applied (lights and cameras can have their z flipped) |
| setrenderattributeproperty | (
|
Set a render attribute property |
Inherited from class HostNode
types.string | HostPath | RW | The data archive to read HostPlugs value when baked |
| deleteinheritedattr | (
|
Delete an inherited attribute plug from the node |
| overrideinheritedattr | (
|
Override the attribute |
| setinheritedattr | (
|
Set the inheritance status of the attribute |
Inherited from class SelectableNode
boolean | Selected | R | True if the node is selected. Don't use this plug directly to select a node, use the Document's modifier select method. |
Inherited from class Node
string | Name | RW | The node name |
| belongstoreference | (
|
Tells if the node belongs to the reference, or a sub reference |
| delete | ( ) | Delete a node |
| eval | (
|
Called by the framework when plug (a node's plug) must be evaluated |
| findchild | (
|
Find a child node or plug using a path |
| findparent | (
|
Find the first parent Node of this Node of a specific class |
| getchild | (
|
Get a child node by its name |
| getname | ( ) | Get the Node name in its parent |
| getparent | ( ) | Get the parent Node of this Node |
| getpath | ( ) | Returns the node path as a string that can be reused with findchild |
| getreference | ( ) | Returns the reference node it is connected to |
| getreferences | (
[
|
Returns the references in the document sorted depth first. |
| getstringcopy | ( ) | Return a copy of the node and its content as a string to be pasted |
| gettopreference | ( ) | Returns the top reference node it is connected to |
| iseditable | ( ) | Indicates if the node can be edited by the user in the UI |
| isindocument | ( ) | Tells if the node is inside a document, or is pending in the void |
| ismoveable | ( ) | Tells if the node can be moved |
| isparent | (
|
Tells if this node is parent of the potential child |
| isreference | ( ) | Tells if a node comes from a reference project |
| isselected | ( ) | Tell if the node is selected |
| loadfile | (
|
load a file content in this node. Possible options are: overrideclass to enforce a specific class for the root node. |
| loadtemplate | (
|
load a template file |
| move | (
|
Move a node to a new parent |
| onpathchanged | ( ) | Called by the framework when the name of this node or of one of its parent is modified |
| pastestringcopy | (
|
Paste a string copy into this node |
| referencefile | (
|
reference a file content in this node. |
| rename | (
|
Rename a node |
| savefile | (
|
load a node to a file |
| seteditable | (
|
Change the editable state of the node |
| setflags | ( ) | Set the node flags |
Documentation
Indicate if the SceneGraphNode's parameters are to be frozen
The visibility state.
Indicates the transform mode of the node (local, world as PRMan, Maya or Max)
The dpendencies on instanced SceneGraphNodes
Invalidated when the world transform and/or bounds of the object has changed.
The visibility state. This plug tells if this node is visible, regarding its state and the state of its parents.
The list of tags the node owns
The dependency on the additional Rib Attributes to be assigned
The SceneGraphNode's local to world transform
The full set of tags this node has, containing explicitly defined and inherited tags
Create an instance at this node
instance The SceneGraphNode to instanciate
Fill a template table with the "Animation" attributes
template The template table to fill
Fill a template table with the "Area Light" attributes
template The template table to fill
Fill a template table with the "Curves" attributes
template The template table to fill
Fill a template table with the "Geometry" attributes
template The template table to fill
Fill a template table with the "Linking" attributes
template The template table to fill
Fill a template table with the "OpenGL" attributes
template The template table to fill
Fill a template table with the "Particles" attributes
template The template table to fill
Fill a template table with the "Procedural" attributes
template The template table to fill
Fill a template table with the "Raytracing" attributes
template The template table to fill
Fill a template table with the "Sampling" attributes
template The template table to fill
Fill a template table with the "Primitive" attributes
template The template table to fill
Fill a template table with the "Surface" attributes
template The template table to fill
Fill a template table with the "Shading" attributes
template The template table to fill
Fill a template table with the "Subdivision" attributes
template The template table to fill
Fill a template table with the "Transform" attributes
template The template table to fill
Fill a template table with the "Volumetric" attributes
template The template table to fill
Flatten an instance by name, or all instances if name is nil
name The instance name to flatten
Returns the node's first transform matrix.
m The node matrix
Returns the exclusive world matrix of the node
pm The parent world matrix
Returns the exclusive world transform of the node
pt The parent world transform
Returns the node's position.
p The node position
Returns the node's hierarchical parent.
parent The node parent
Return the top Transform node of the transform stack of this SceneGraphNode or this if the stack is empty
node
Returns the node's world transform first matrix.
m The node world matrix
Returns the node's world position.
p The node world position
Returns the inverse of the world matrix
im The node world to local matrix
Returns the inverse of the world transform
it The node world to local transform
Returns the node's world transform.
t The node transform
Returns true if the given path contains an instance
path The path from this node
Returns true if the lath item of the path is an instance
path The path from this node
List children nodes (include self) that have specified tags
tags The tag or list of tags to check
result The list of SceneGraphNode that have this tag.
List nodes in the hierarchy that have at least one of the given tags
tags The tags to match, as a list of string or a single string to match a single tag
result The list of SceneGraphNode children that share the input tags
Returns a node from a path, this path may be dynamically generated by RenderGraph instancing
path The path to the node
Node The result node, or nil if the path doesn't represent a valid node
Returns a node from a path, this path must be static
path The path to the node
Node The result node, or nil if the path doesn't represent a valid node
Remove an instance
path path to the instance
Set the local matrix of the node
m The new local matrix of the node
Set the world matrix of the node
world The new world matrix of the node
Set the world position of the node, leaving the rest of the transform unchanged
position The new world position of the node
Traverse the hierarchy and call a map function on every node
map a function called at every node of the hierarchy... optional parameters given back to the map function
Enable/disable the display of a specific attribute in the properties
category The name of the attribute categoryname The name of the attribute, either its renderer name, or display name or its plug nameshow Whether the attribute is displayed or not
Get the parent path of a path
path the path of the node
parentpath The parent path
Lookup the render attributes definition by for a category and aan attribute name
category The name of the attribute categoryname The name of the attribute, either its renderer name, or display name or its plug name
attribute The attribute definition
Get the rendering attributes of a node/path
-- print the attributes of an object as they would be sent to the renderer
local result = SceneGraphNode.getrenderattributes ("Group|Object")
if result then
for name, value in pairs (result.attributes) do
-- name is the attribute name, in the convention of the renderer
-- user attributes/shader parameters are named 'variable.###', and
-- might be subshaders
if isclassof (value, "subshader") then
-- the name of a subshader is
print (name, value:getname ())
for subname, subvalue in pairs (value:getparameters ()) do
print (" ", subname, subvalue)
end
else
print (name, tostring (value))
end
end
end
path the path of the nodefull if true, the returned value also contains information about the origin of the attributes
attributes The resulting attributes
Get the list of available render attributes
Get the world to local transform a node/path with its local z axis transform applied (lights and cameras can have their z flipped)
path the path of the node
world The resulting transform
Get the local to world transform a node/path
path the path of the node
world The resulting transform
Get the local to world transform a node/path with its local z axis transform applied (lights and cameras can have their z flipped)
path the path of the node
world The resulting transform
Set a render attribute property
- ptysheet: bool, the attribute is displayed in the property sheet
category The name of the attribute categoryname The name of the attribute, either its renderer name, or display name or its plug nameproperty The name of the attribute property to setvalue The value of the attribute property to set