SuperTool API

This page provides an API reference for the SuperTool-specific parts of the NodegraphAPI Python package. See How To Write a SuperTool for more information.

NodegraphAPI.RegisterSuperTool(name, superToolClass)

Register a new SuperTool. Give the name of the node and a class derived from SuperTool.

class NodegraphAPI.SuperTool

Bases: PythonGroupNode

Class used for super tool plugins. Each SuperTool instance is attached to a SuperTool delegate. The delegate is a set of functions that are presented as methods on the SuperTool instance.

__init__()

Called to initialize a newly created supertool node. This is not called for loading existing nodes. It must not call the base class constructor.

getNodesCreatingSceneGraphLocations()
Return type:

list of NodegraphAPI.Node or None

Returns:

A list of internal nodes that implement getScenegraphLocation() and are desirable to access from outside of the SuperTool.

Since:

Katana 4.0v1

hideNodegraphGroupControls()

Remove the group-like controls for this node from the Node Graph tab. Should be called from the init method.

isChildNodePersistent(node)
Parameters:

node (NodegraphAPI.Node) – A child node of the SuperTool.

Return type:

bool

Returns:

True if the child node should be saved to the Katana document, otherwise False.

isExplodable()
Return type:

bool

Returns:

Always False. By default, SuperTools are not explodable. Behavior may be overridden by derived classes.

isUserParameterEditingAllowed()
Return type:

bool

Returns:

True if this node supports editing of user parameters in the Parameters tab, otherwise False. By Default, All Super Tools support User Parameters unless this method is overridden in the Super Tool concrete implementation.

Since:

Katana 4.5v1

polish()

This method is automatically called on the SuperTool after it has finished loading and initialization. It will only be called once.

classmethod superToolRegistered()