Node Properties¶
Functions¶
Flags¶
-
NodegraphAPI.
IsNodeEdited
(node)¶ True if the node parameters are displayed. When nodes are edited their parameters are displayed in the user interface. There can be none or several nodes edited at once time.
Return type: bool
-
NodegraphAPI.
SetNodeEdited
(node, edited, exclusive=False)¶ Set if the node parameters are displayed. When nodes are edited their parameters are displayed in the user interface. There can be none or several nodes edited at once time. If optional exclusive arg is True, all nodes are unedited before setting the edited flag on specified node.
-
NodegraphAPI.
IsNodeViewed
(node)¶ True if the node results are displayed. When the node is viewed, its output is displayed in the interface.
Return type: bool
-
NodegraphAPI.
SetNodeViewed
(node, viewed, exclusive=False)¶ Set if the node results are displayed. When the node is viewed, its output is displayed in the interface. If optional exclusive arg is True, all nodes are unviewed before setting the view flag on specified node.
-
NodegraphAPI.
IsNodeSelected
(node)¶ True if the node is selected in the interface. Interface operations that effect nodes will be applied to selected nodes. There can be any number of selected nodes at a time.
Return type: bool
-
NodegraphAPI.
SetNodeSelected
(node, selected)¶ Set if the node is selected in the interface. Interface operations that effect nodes will be applied to selected nodes. There can be any number of selected nodes at a time.
-
NodegraphAPI.
SetAllSelectedNodes
(nodelist)¶ Replace the nodes that are selected. If the sequence of nodes is empty, all nodes will be unselected. Interface operations that effect nodes will be applied to selected nodes. There can be any number of selected nodes at a time.
-
NodegraphAPI.
IsNodeHidden
(node)¶
-
NodegraphAPI.
SetNodeHidden
(node, hide)¶
-
NodegraphAPI.
IsNodeFloating
(node)¶ True if the node is tracking the mouse position. When nodes are interactively created or moved, they become floating nodes. Floating nodes track with the mouse movement until they are placed.
Return type: bool
-
NodegraphAPI.
SetNodeFloating
(node, flag)¶ Set if the node is tracking the mouse position. When nodes are interactively created or moved, they become floating nodes. Floating nodes track with the mouse movement until they are placed.
-
NodegraphAPI.
IsNodeThumbnailEnabled
(node)¶
-
NodegraphAPI.
SetNodeThumbnailEnabled
(node, enabled)¶
-
NodegraphAPI.
IsNodeLockedByParents
(node)¶ Return type: bool
Parameters: node ( NodegraphAPI.Node
orNone
) – The node whose parent nodes to check.Returns: True
if the contents of any of the given node’s parent nodes are locked, otherwiseFalse
.
Shapes¶
-
NodegraphAPI.
GetNodeShapeAttr
(node, attrName)¶
-
NodegraphAPI.
GetNodeShapeAttrs
(node)¶
-
NodegraphAPI.
SetNodeShapeAttr
(node, attrName, attrValue)¶
-
NodegraphAPI.
SetNodeShapeNodeAttrs
(node, attrDict)¶
-
NodegraphAPI.
DeleteNodeShapeAttr
(node, attrName)¶
Comments¶
-
NodegraphAPI.
GetNodeComment
(node)¶ Get the user comment on the node
Return type: string
-
NodegraphAPI.
SetNodeComment
(node, comment)¶ Set the user comment.
Position¶
The function SetNodePosition()
sets the position of a node in the
Node Graph UI. For example, to create then position a
PrimitiveCreate node:
# Get the root node
rootNode = NodegraphAPI.GetRootNode()
# Create a new node at root level
primNode = NodegraphAPI.CreateNode('PrimitiveCreate', rootNode)
# Define X & Y values
position = (0, 100)
# Set node position
NodegraphAPI.SetNodePosition(primNode, position)
-
NodegraphAPI.
GetNodePosition
(node)¶ Get the 2D position of the node. Created nodes have the position (0, 0). The position is in y-down integers.
Return type: ( int
,int
)
-
NodegraphAPI.
SetNodePosition
(node, xy)¶ Set the 2D position of the node. The position is in y-down integers.
Parameters: xy ( int
,int
) – the new node position
Instance Methods¶
Flags¶
-
Node3D.
isAutoRenameAllowed
() → bool¶ True if the node is locked from auto-name changes.
-
Node3D.
setAutoRenameAllowed
(bool) → bool¶ Locks or unlocks the node from auto-name changes.
-
Node3D.
isBypassed
() → bool¶ True if the node state is set to bypassed.
-
Node3D.
setBypassed
(state)¶ Enables or disables the node according to the given bypassed state.
-
Node3D.
isLocked
(considerParents=False) → bool¶ True if the node is locked to prevent changes, otherwise False. The considerParents flag controls whether the content-locked states of ancestor nodes are taken into account: child nodes of content-locked ancestor nodes are locked against edits in the UI, but can still be modified using the NodegraphAPI (unless they are locked themselves).
-
Node3D.
setLocked
(bool)¶ Locks or unlocks the node to prevent or allow changes.
-
Node3D.
isMarkedForDeletion
() → bool¶ True if the node has been deleted (node.delete), but hasn’t yet been deallocated by the deletion queue.
-
Node3D.
delete
()¶ Deletes the node and any children it contains.
-
Node3D.
isResetPossible
() → bool¶ True if the node can be reset (either by a generic parameter reset or by calling the customReset() method).
-
Node3D.
customReset
() → bool¶ Resets node parameters to factory settings. Returns true if a customReset is implemented. If false is returned, a generic parameter-by-parameter sync will be attempted.
Name¶
Each node has a name, which is unique within the bounds of a Katana recipe. Name-spacing does not exist for node names, which means that a call to:
node = NodegraphAPI.GetNode('PrimitiveCreate')
node.setName("Teapot")
print(node.getName())
It may not behave as expected if the chosen name is already in use by another
node in the scene. In that case setName()
finds a similar - but unique -
name, uses that, and returns the new unique node name.
It’s possible to store a string user attribute on a node that utilities can search for in order to reference a node in a smaller context. This is a simple pattern that can provide a more localized pseudo node name. See Parameters for more on adding parameters.
Warning
Node names cannot contain spaces. Any spaces or invalid characters that are used in the node name are converted into underscores. For example, the node name “Material Plastic” becomes “Material_Plastic”.
-
Node3D.
getName
() → str¶ Returns the unique name for the node.
-
Node3D.
setName
(name)¶ Sets the name for a node. The real unique name is returned.
Type¶
-
Node3D.
getBaseType
()¶ Returns a string naming the real base type of this node.
-
Node3D.
getType
() → str¶ Returns a string naming the registered type of this node.
-
Node3D.
setType
(typeName)¶ Sets a string naming the registered type of this node.
Parameters¶
See Parameters.
Parents¶
-
Node3D.
setParent
(groupNode) → bool¶ Sets the new parent group for this node. Can be None for no parent. Returns True if reparent successful.
-
Node3D.
getParent
() → Node¶ Returns the GroupNode that is the parent of this node, or None.
Attributes¶
Caution
Node attributes should not be confused with scene graph attributes
-
Node3D.
getAttributes
() → dict¶ Returns a dictionary of named static values that are persistent with the node.
-
Node3D.
setAttributes
(dict)¶ Assigns new named persistent values to the node with a string keyed dictionary.