Go to: Synopsis. Return value. Flags. MEL examples.

Synopsis

nodeEditor [-activeTab int] [-addNewNodes boolean] [-addNode string] [-additiveGraphingMode boolean] [-allAttributes boolean] [-allNodes boolean] [-allowNewTabs] [-allowTabTearoff boolean] [-autoSizeNodes boolean] [-beginCreateNode] [-beginNewConnection string] [-breakSelectedConnections] [-closeAllTabs] [-closeTab int] [-connectSelectedNodes] [-connectedGraphingMode boolean] [-connectionMinSegment float] [-connectionOffset float] [-connectionRoundness float] [-connectionStyle string] [-connectionTension int] [-consistentNameSize boolean] [-contentsChangedCommand script] [-control] [-createInfo string] [-createNodeCommand script] [-createTab int [ string ]] [-crosshairOnEdgeDragging boolean] [-customAttributeListEdit string [ string ]] [-cycleHUD] [-defaultPinnedState boolean] [-defineTemplate string] [-deleteSelected] [-docTag string] [-dotFormat string] [-downstream] [-duplicateTab int [ int ]] [-enableOpenGL boolean] [-exists] [-extendToShapes boolean] [-feedbackConnection] [-feedbackNode] [-feedbackPlug] [-feedbackTabIndex] [-feedbackType] [-filter string] [-filterCreateNodeTypes script] [-focusCommand script] [-forceMainConnection string] [-frameAll] [-frameModelSelection] [-frameSelected] [-getNodeList] [-graphSelectedConnections] [-graphSelection] [-gridSnap boolean] [-gridVisibility boolean] [-hasWatchpoint] [-highlightConnection string] [-highlightConnections string boolean] [-hudMessage string int float] [-ignoreAssets boolean] [-island boolean] [-keyPressCommand script] [-keyReleaseCommand script] [-layout] [-layoutCommand script] [-lockMainConnection] [-mainListConnection string] [-nodeSwatchSize string] [-nodeTitleMode string] [-nodeViewMode string] [-overrideNodeDropPosition float float] [-panView float float] [-panel string] [-parent string] [-pinSelectedNodes boolean] [-popupMenuScript script] [-primary] [-redockTab] [-removeDownstream] [-removeNode string] [-removeUnselected] [-removeUpstream] [-renameNode string] [-renameTab int [ string ]] [-restoreInfo string] [-restoreLastClosedTab] [-rootNode string] [-rootsFromSelection] [-scaleView float] [-selectAll] [-selectConnectionNodes] [-selectDownstream] [-selectFeedbackConnection] [-selectNode string] [-selectUpstream] [-selectionConnection string] [-setWatchpoint boolean] [-settingsChangedCallback script] [-shaderNetworks] [-showAllNodeAttributes string] [-showNamespace boolean] [-showSGShapes boolean] [-showShapes boolean] [-showTabs boolean] [-showTransforms boolean] [-showUnitConversions boolean] [-stateString] [-syncedSelection boolean] [-tabChangeCommand script] [-toggleAttrFilter] [-toggleSelectedPins boolean] [-toggleSwatchSize string] [-toolTipCommand script] [-traversalDepthLimit int] [-unParent] [-unlockMainConnection] [-updateMainConnection] [-upstream] [-useAssets boolean] [-useLongName int] [-useTemplate string] [string]

nodeEditor is undoable, queryable, and editable.

This command creates/edits/queries a nodeEditor editor. The optional argument is the name of the control.

Return value

stringThe name of the created control.

In query mode, return type is based on queried flag.

Flags

activeTab, addNewNodes, addNode, additiveGraphingMode, allAttributes, allNodes, allowNewTabs, allowTabTearoff, autoSizeNodes, beginCreateNode, beginNewConnection, breakSelectedConnections, closeAllTabs, closeTab, connectSelectedNodes, connectedGraphingMode, connectionMinSegment, connectionOffset, connectionRoundness, connectionStyle, connectionTension, consistentNameSize, contentsChangedCommand, control, createInfo, createNodeCommand, createTab, crosshairOnEdgeDragging, customAttributeListEdit, cycleHUD, defaultPinnedState, defineTemplate, deleteSelected, docTag, dotFormat, downstream, duplicateTab, enableOpenGL, exists, extendToShapes, feedbackConnection, feedbackNode, feedbackPlug, feedbackTabIndex, feedbackType, filter, filterCreateNodeTypes, focusCommand, forceMainConnection, frameAll, frameModelSelection, frameSelected, getNodeList, graphSelectedConnections, graphSelection, gridSnap, gridVisibility, hasWatchpoint, highlightConnection, highlightConnections, hudMessage, ignoreAssets, island, keyPressCommand, keyReleaseCommand, layout, layoutCommand, lockMainConnection, mainListConnection, nodeSwatchSize, nodeTitleMode, nodeViewMode, overrideNodeDropPosition, panView, panel, parent, pinSelectedNodes, popupMenuScript, primary, redockTab, removeDownstream, removeNode, removeUnselected, removeUpstream, renameNode, renameTab, restoreInfo, restoreLastClosedTab, rootNode, rootsFromSelection, scaleView, selectAll, selectConnectionNodes, selectDownstream, selectFeedbackConnection, selectNode, selectUpstream, selectionConnection, setWatchpoint, settingsChangedCallback, shaderNetworks, showAllNodeAttributes, showNamespace, showSGShapes, showShapes, showTabs, showTransforms, showUnitConversions, stateString, syncedSelection, tabChangeCommand, toggleAttrFilter, toggleSelectedPins, toggleSwatchSize, toolTipCommand, traversalDepthLimit, unParent, unlockMainConnection, updateMainConnection, upstream, useAssets, useLongName, useTemplate
Long name (short name) Argument types Properties
-activeTab(-at) int queryedit
Gets/sets the index of the tab widget's (active) visible tab. Note: the index is zero-based.
-addNewNodes(-ann) boolean createqueryedit
New nodes should be added to the graph, default is on.
-addNode(-an) string editmultiuse
Adds a specified node to the graph. Passing an empty string means the current model selection will be added to the graph.
-additiveGraphingMode(-agm) boolean createqueryedit
When enabled, the graphing will add node networks to the existing graph instead of replacing it.
-allAttributes(-ala) boolean createqueryedit
Attributes should not be filtered out of the graph, default is off.
-allNodes(-aln) boolean createqueryedit
Nodes should not be filtered out of the graph, default is off.
-allowNewTabs(-ant) query
Query only. Returns whether this Node Editor is allowed to have new tabs added, either by creating a new tab or duplicating an existing one.
-allowTabTearoff(-att) boolean createedit
Control whether or not the tabs can be torn off and floated. Defaults to true.
-autoSizeNodes(-asn) boolean createqueryedit
When enabled, default node widths will be dynamically determined by the node name length, default is on.
-beginCreateNode(-bcn) edit
Begin interactive node-creation at the mouse position. This will create a control which allows quick creation of a node in the editor.
The actual creation is delegated to the createNodeCommand.
-beginNewConnection(-bnc) string edit
Begin a new interactive connection at the given attribute.
-breakSelectedConnections(-bsc) edit
Break the selected attribute connections.
-closeAllTabs(-cat) edit
Close all tabs on the tab widget.
-closeTab(-clt) int edit
Closes the tab on the tab widget at the specified index. Note: using this flag on a torn-off tab will close the node editor since there can be only a single tab. In this case the index argument is ignored.
-connectSelectedNodes(-csn) edit
Creates a connection between all selected nodes in the editor. The default output port of one node is connected to the default input port of the next node in the selection order.
-connectedGraphingMode(-cgm)
2023
boolean createqueryedit
When enabled, connected nodes will be re-graphed when new nodes are added to the graph.
-connectionMinSegment(-csm) float queryedit
Sets the minimum segment length ratio of the connection leaving an output port. Applies to "straight", "corner" and "s-shape" connection styles. Value must be between 0.0 and 1.0.
-connectionOffset(-cso) float queryedit
Sets the offset length for each connection edges. Applies to "corner" and "s-shape" connection styles. Value must be between 0.0 and 1.0.
-connectionRoundness(-csr) float queryedit
Sets the roundness factor for each connection edges. Applies only to "s-shape" connection style. Value must be between 0.5 and 1.0.
-connectionStyle(-cs) string queryedit
Sets how the connection between nodes are drawn. Mode values are: "bezier", "straight", "corner" and "s-shape". In query mode, returns current connection style.
-connectionTension(-cst) int queryedit
Sets where the vertical line should be drawn on connection edge, 0 being in the middle. Applies to "corner" and "s-shape" connection styles. Value must be between -100 and 100.
-consistentNameSize(-cns) boolean createqueryedit
When enabled, the size of the node name will consistently match the current zoom level. When disabled, the node name size will remain the same after zooming out past a certain level. Default is on.
-contentsChangedCommand(-cc) script createqueryedit
Specifies a function to be called whenever the contents of the node editor changes.
-control(-ctl) query
Query only. Returns the top level control for this editor. Usually used for getting a parent to attach popup menus. Caution: It is possible for an editor to exist without a control. The query will return "NONE" if no control is present.
-createInfo(-ci) string createedit
Creates or modifies a hyperGraphInfo network to save the state of the editor.
-createNodeCommand(-cnc) script createqueryedit
Specifies a function to be used to create nodes through the editor. The function will be passed the name of the chosen node type. This is used by the tab-create workflow. By default createNode is used.
-createTab(-ct) int [ string ] createedit
Create a new tab inserting it into the tab widget at the specified index. If index is out of range (such as -1), the tab is simply appended. You can optionally (Python only) specify a tab label, otherwise it will be set with a default name. In Mel using an empty string ("") for the tab label will set it with a default name. The new tab becomes the current (active) tab. Note: Only certain Node Editors are allowed to create new tabs, which can be checked by using the -allowNewTabs flag.
-crosshairOnEdgeDragging(-ced) boolean createqueryedit
Toggle crosshair cursor during edge dragging on/off.
-customAttributeListEdit(-cal) string [ string ] queryedit
Create/Edit the custom attribute list for the given node by entering a special "Edit Mode" for the node. Note: only one node in the node editor can be in this edit mode at a time. If another node is selected the edit mode will end automatically. To end the edit mode use an empty string for node.
Takes an optional edit mode command which accepts: "hideall" (sets all the attributes to hidden), "showall" (sets all the attributes to visible), "preview" (temporarily shows only the visible attributes), "revert" (restores the visibility settings of the attributes to what they were before edit mode) and "reset" (the visible attributes are reset so that only the interesting attributes are displayed).
In query mode returns the name of the node, if any, in edit mode. Note: the optional string argument is ignored in query mode.
-cycleHUD(-ch) createedit
Change the HUD to the next state.
-defaultPinnedState(-dps) boolean createqueryedit
Sets default pinned state of all nodes, 1 for pinned, 0 for unpinned. default value 0
-defineTemplate(-dt) string create
Puts the command in a mode where any other flags and arguments are parsed and added to the command template specified in the argument. They will be used as default arguments in any subsequent invocations of the command when templateName is set as the current template.
-deleteSelected(-del) edit
Delete the selected nodes and break the selected connections.
-docTag(-dtg) string createqueryedit
Attaches a tag to the editor.
-dotFormat(-dot) string queryedit
In query mode:
Get the graph information in DOT format. The flag argument specifies a file path to write to.
If "-" is supplied, the data is returned as a string, otherwise the size in bytes of the written file is returned.
In edit mode:
Sets the positions of nodes in the graph from a Graphviz output file in plain format. Only the node position, width and height information is used.
If the argument starts with "graph ", it will be treated as the plain data instead of a filename.

In query mode, this flag needs a value.

-downstream(-ds) createedit
Include nodes that are downstream of the root nodes.
-duplicateTab(-dpt) int [ int ] createedit
Duplicates the tab at the specified index, placing it at the second optional (Python only) specified index. To place duplicated tab at the end use -1. The duplicated tab becomes the current (active) tab. Note: Only certain Node Editors are allowed to duplicate tabs, which can be checked by using the -allowNewTabs flag.
-enableOpenGL(-egl) boolean createqueryedit
Specifies if OpenGL should be used to render the node editor view. When enabled this will greatly improve performance but is still a work in progress.
-exists(-ex) create
Returns whether the specified object exists or not. Other flags are ignored.
-extendToShapes(-ets) boolean createqueryedit
Include child shapes for each selected transform.
-feedbackConnection(-fbc) query
Returns a description of the connection(s) at the current mouse position in the editor view, if any. The connection(s) will be returned as a list of strings, which are pairs of plugs for each connection.
-feedbackNode(-fbn) query
Returns the name of the node at the current mouse position in the editor view, if any.
-feedbackPlug(-fbp) query
Returns the name of the plug (attribute) at the current mouse position in the editor view, if any.
-feedbackTabIndex(-fbi) query
Returns the index of the tab at the current mouse position in the editor view, if any.
-feedbackType(-fbt) query
Returns the most specific type of the feedback item (item at the current mouse position) in the editor view, if any. Will be one of "plug", "node", "tab", "connection" or an empty string. Use the other feedback* flags to query the item description.
-filter(-f) string createqueryedit
Specifies the name of an itemFilter object to be used with this editor. This filters the information coming onto the main list of the editor.
-filterCreateNodeTypes(-fcn) script createqueryedit
Specifies a function to be used to filter the list of node types which appear in the inline-creation menu (tab key). The function should accept one string array argument and return a string array.
-focusCommand(-fc) script createqueryedit
Specifies a function to be called whenever focus changes for the node editor.
-forceMainConnection(-fmc) string createqueryedit
Specifies the name of a selectionConnection object that the editor will use as its source of content. The editor will only display items contained in the selectionConnection object. This is a variant of the -mainListConnection flag in that it will force a change even when the connection is locked. This flag is used to reduce the overhead when using the -unlockMainConnection , -mainListConnection, -lockMainConnection flags in immediate succession.
-frameAll(-fa) edit
Frame all the contents of the node editor.
-frameModelSelection(-fms) edit
Frame the current model selection.
-frameSelected(-fs) edit
Frame the selected contents of the node editor.
-getNodeList(-gnl) query
Returns a list of all nodes displayed in the editor.
-graphSelectedConnections(-gsc) edit
Graph the nodes connected by the selected attribute connections.
-graphSelection(-gsl) edit
Graph the nodes that are currently selected.
-gridSnap(-gs) boolean createqueryedit
Toggle grid snapping on/off.
-gridVisibility(-gv) boolean createqueryedit
Toggle grid visiblity on/off.
-hasWatchpoint(-hw) query
Returns if the selected connection has a watchpoint set.
-highlightConnection(-hlc) string createqueryedit
Specifies the name of a selectionConnection object that the editor will synchronize with its highlight list. Not all editors have a highlight list. For those that do, it is a secondary selection list.
-highlightConnections(-hc) string boolean createqueryeditmultiuse
Sets if selecting a node should highlight its connections for the specified editor, which can be "regular" or "bifrost".
-hudMessage(-hm) string int float edit
Display the given message on the editor HUD. The flag arguments are (message, type, duration), where type is:
  1. upper-left corner.
  2. top center.
  3. upper-right corner.
  4. center.
Duration 0 means the message stays until removed. Duration > 0 means it stays for that number of seconds.
An empty message erases whatever is currently displayed for the given type.
-ignoreAssets(-ia) boolean createqueryedit
Deprecated. Do not use in scripts.
-island(-isl) boolean queryedit
Deprecated. Do not use in scripts.
-keyPressCommand(-kpc) script createqueryedit
Specifies a function to be called when a key is pressed and the editor has focus.

The function will be passed the name of the editor and an (uppercase) string representation of the key that was pressed, and should return true if the key was handled, and false if it was not.

Note: `getModifiers` can be used to query the current state of key modifiers.
-keyReleaseCommand(-krc) script createqueryedit
Specifies a function to be called when a key is released and the editor has focus.

The function will be passed the name of the editor and an (uppercase) string representation of the key that was released, and should return true if the key was handled, and false if it was not.

Note: `getModifiers` can be used to query the current state of key modifiers.
-layout(-lay) edit
Perform an automatic layout of the graph.
-layoutCommand(-lc) script createqueryedit
Specifies a function to override the default action when a graph layout is required. The function will be passed the name of editor. The function should arrange the nodes in the graph.
-lockMainConnection(-lck) createedit
Locks the current list of objects within the mainConnection, so that only those objects are displayed within the editor. Further changes to the original mainConnection are ignored.
-mainListConnection(-mlc) string createqueryedit
Specifies the name of a selectionConnection object that the editor will use as its source of content. The editor will only display items contained in the selectionConnection object.
-nodeSwatchSize(-nss) string edit
Sets the icon swatch size of selected nodes in the active scene (all nodes if none are selected). Size values are "small" and "large".
-nodeTitleMode(-ntm) string createqueryedit
Gets/sets the node title display mode of the current scene. Mode values are: "name" (Display node names), "type" (Display node types), "none" (Do not display titles)
-nodeViewMode(-nvm) string edit
Sets the attribute view mode of selected nodes in the active scene (all nodes if none are selected). Mode values are: "simple" (no attributes displayed), "connected" (connected attributes only), "all" (all interesting attributes displayed) and "custom" (use custom attribute view).
-overrideNodeDropPosition(-onp) float float edit
Specifies the override position for new node. Values are respectively the width and height ratio; 0.0, 0.0 corresponds to the top left corner of the view, 1.0, 1.0 corresponds to the bottom right corner of the view, 0.5, 0.5 corresponds to the center of the view.
-panView(-pv) float float edit
Pan the view by the given amount. Arguments of 0 0 will reset the view translation.
-panel(-pnl) string createquery
Specifies the panel for this editor. By default if an editor is created in the create callback of a scripted panel it will belong to that panel. If an editor does not belong to a panel it will be deleted when the window that it is in is deleted.
-parent(-p) string createqueryedit
Specifies the parent layout for this editor. This flag will only have an effect if the editor is currently un-parented.
-pinSelectedNodes(-psn) boolean edit
Pins or unpins the selected nodes. If no nodes are selected, this will apply to all displayed nodes.
-popupMenuScript(-pms) script createqueryedit
Set the script to be called to register the popup menu with the control for this editor. The script will be called with a string argument which gives the name of the editor whose control the popup menu should be parented to.
-primary(-pr) query
Query only. Returns whether this node editor is the primary one. The primary editor is the only one that will show and allow tabs.
-redockTab(-rdt) queryedit
If this tab was torn-off from the primary node editor, then the tab and all its data will be re-docked back into the primary editor and this node editor will be closed. In query mode returns whether this tab was torn-off and is available to be re-docked.
-removeDownstream(-rd) edit
Removes all items downstream to the currently active selection.
-removeNode(-rem) string editmultiuse
Removes a node from the graph. An empty string indicates that currently selected nodes should be removed.
-removeUnselected(-run) edit
Removes unselected nodes from graph.
-removeUpstream(-ru) edit
Removes all items upstream to the currently active selection.
-renameNode(-ren) string edit
Rename a node in the graph. Depending on the zoom level of the view, an edit field will either appear on the node item or in a popup dialog to allow the new name to be entered.
-renameTab(-rt) int [ string ] edit
Renames the tab at the specified index with the (optional) name. If no name is specified (Python only) or an empty string ("") is used then an inline edit field is opened to rename the tab.
-restoreInfo(-ri) string createedit
Restores the editor state corresponding to supplied hyperGraphInfo node.
-restoreLastClosedTab(-rlt) queryedit
If this node editor is the primary one, then restore the last closed tab (if any). In query mode returns whether there is a tab available to restore.
-rootNode(-rn) string createeditmultiuse
Add a node name as a root node of the graph. Passing an empty string clears the current root node list. When queried, returns the list of current root nodes.
-rootsFromSelection(-rfs) createedit
Specify that the root nodes for the graph should taken from the currently active selection.
-scaleView(-sv) float edit
Scales the graph view by the given factor. An argument of zero means reset to default.
-selectAll(-sa) edit
Select all items in the graph.
-selectConnectionNodes(-scn) edit
Select the nodes connected by the selected attribute connections.
-selectDownstream(-sd) edit
Select all items downstream to the currently active selection.
-selectFeedbackConnection(-sfc) edit
Select the feedback connection(s) in the editor view, if any.
-selectNode(-sln) string queryeditmultiuse
Select a node in the graph. Passing an empty string clears the current selection. When queried, returns the list of currently selected nodes.
-selectUpstream(-su) edit
Select all items upstream to the currently active selection.
-selectionConnection(-slc) string createqueryedit
Specifies the name of a selectionConnection object that the editor will synchronize with its own selection list. As the user selects things in this editor, they will be selected in the selectionConnection object. If the object undergoes changes, the editor updates to show the changes.
-setWatchpoint(-sw) boolean createedit
Adds or removes the watchpoint on the selected connections.
-settingsChangedCallback(-scc) script createqueryedit
Specifies a function to be called whenever settings for the node editor get changed.
-shaderNetworks(-sns) edit
Graph the shader network for all the objects on the selection list that have shaders.
-showAllNodeAttributes(-saa) string edit
Display all attributes for the given node, not just primary attributes. Passing an empty string will apply this to all currently selected nodes. If no nodes are selected, this will be applied to all displayed nodes in the graph.
-showNamespace(-sn) boolean createqueryedit
Specifies whether nodes will have their namespace displayed if they are not in the root namespace.
-showSGShapes(-ssg) boolean createqueryedit
Show shapes that are connected to the network through a shading group.
-showShapes(-ss) boolean createqueryedit
Show shape nodes.
-showTabs(-tab) boolean create
Creation time flag to explicitly control the visibility of the tabs. If this is set to true or false the tabs visibility will respect that setting. If this flag is not explicitly set then the tabs will be visible in the primary node editor and tear off tabs, but will not be visible for other editors that are not the primary editor.
-showTransforms(-st) boolean createqueryedit
Show transforms.
-showUnitConversions(-suc)
2023
boolean createqueryedit
Show unit conversion nodes.
-stateString(-sts) query
Query only flag. Returns the MEL command that will create an editor to match the current editor state. The returned command string uses the string variable $editorName in place of a specific name.
-syncedSelection(-ssl) boolean createqueryedit
Keep the graph selection in sync with the model selection.
-tabChangeCommand(-tcc) script createedit
Command executed when the current (active) tab is changed. Re-selecting the current tab will not invoke this command. NOTE: This command will also be executed when switching into, out of, and between compound views.
-toggleAttrFilter(-taf) edit
Toggles the display of the attribute filter field on selected nodes. If any of the selected nodes have the field displayed, this operation will hide the field for all nodes in the selection. If no nodes are selected, this will apply to all displayed nodes.
-toggleSelectedPins(-tsp) boolean edit
Toggles pinned state on selected nodes. If any selected nodes are unpinned, this operation will choose to pin all nodes. If no nodes are selected, this will apply to all displayed nodes.
-toggleSwatchSize(-tss) string edit
Toggles the swatch size of the given node between small and large. If supplied node name was empty, this will be applied to selection, and if no nodes are selected this is applied to all nodes in editor. When selection is a combination of small and large swatch sizes, this will set selection to large swatch mode.
-toolTipCommand(-ttc) script createqueryedit
Specifies a function to override the tooltip that is displayed for a node. The function will be passed the name of the node under the cursor, and should return a text string to be displayed. A simple HTML 4 subset is supported.
-traversalDepthLimit(-tdl) int createqueryedit
Specify the maximum number of edges which will be followed from any root node when building the graph. A negative value means unlimited. Default is unlimited.
-unParent(-up) createedit
Specifies that the editor should be removed from its layout. This cannot be used in query mode.
-unlockMainConnection(-ulk) createedit
Unlocks the mainConnection, effectively restoring the original mainConnection (if it is still available), and dynamic updates.
-updateMainConnection(-upd) createedit
Causes a locked mainConnection to be updated from the orginal mainConnection, but preserves the lock state.
-upstream(-ups) createedit
Include nodes that are upstream of the root nodes.
-useAssets(-ua) boolean createqueryedit
Use assets and published attributes instead of contents and actual attributes.
-useLongName(-uln) int createqueryedit
Specifies how attribute names should be displayed. 0 = Display using short attribute names. 1 = Display using nice/UI attribute names. 2 = Display using long attribute names.
-useTemplate(-ut) string create
Forces the command to use a command template other than the current one.

Flag can appear in Create mode of command Flag can appear in Edit mode of command
Flag can appear in Query mode of command Flag can be used more than once in a command.

MEL examples

window;
string $form = `formLayout`;
string $p = `scriptedPanel -type nodeEditorPanel -label "Node Editor"`;
formLayout -e
    -af $p "top" 0 -af $p "bottom" 0 -af $p "left" 0 -af $p "right" 0 $form;
showWindow;