pymel.core.windows.nodeEditor¶
- nodeEditor(*args, **kwargs)¶
This command creates/edits/queries a nodeEditor editor. The optional argument is the name of the control.
Flags:
Long Name / Short Name Argument Types Properties activeTab / at int Gets/sets the index of the tab widget’s (active) visible tab. Note: the index is zero-based. addNewNodes / ann bool New nodes should be added to the graph, default is on. addNode / an unicode Adds a specified node to the graph. Passing an empty string means the current model selection will be added to the graph. additiveGraphingMode / agm bool When enabled, the graphing will add node networks to the existing graph instead of replacing it. allAttributes / ala bool Attributes should not be filtered out of the graph, default is off. allNodes / aln bool Nodes should not be filtered out of the graph, default is off. allowNewTabs / ant bool 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 bool Control whether or not the tabs can be torn off and floated. Defaults to true. autoSizeNodes / asn bool When enabled, default node widths will be dynamically determined by the node name length, default is on. backToParentView / bpv bool beginCreateNode / bcn bool 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 unicode Begin a new interactive connection at the given attribute. breakSelectedConnections / bsc bool Break the selected attribute connections. closeAllTabs / cat bool Close all tabs on the tab widget. closeTab / clt int 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. connectNodeOnCreation / cno bool connectOnDrop / cod bool connectSelectedNodes / csn bool 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. connectionMinSegment / csm float Sets the minimum segment length ratio of the connection leaving an output port. Applies to straight, cornerand s-shapeconnection styles. Value must be between 0.0 and 1.0. connectionOffset / cso float Sets the offset length for each connection edges. Applies to cornerand s-shapeconnection styles. Value must be between 0.0 and 1.0. connectionRoundness / csr float Sets the roundness factor for each connection edges. Applies only to s-shapeconnection style. Value must be between 0.5 and 1.0. connectionStyle / cs unicode Sets how the connection between nodes are drawn. Mode values are: bezier, straight, cornerand s-shape. In query mode, returns current connection style. connectionTension / cst int Sets where the vertical line should be drawn on connection edge, 0 being in the middle. Applies to cornerand s-shapeconnection styles. Value must be between -100 and 100. consistentNameSize / cns bool 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 Specifies a function to be called whenever the contents of the node editor changes. control / ctl bool 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 NONEif no control is present. copyConnectionsOnPaste / ccp bool createInfo / ci unicode Creates or modifies a hyperGraphInfo network to save the state of the editor. createNodeCommand / cnc script 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 createNodeis used. createTab / ct int, unicode 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 bool Toggle crosshair cursor during edge dragging on/off. customAttributeListEdit / cal unicode, unicode Create/Edit the custom attribute list for the given node by entering a special Edit Modefor 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 bool Change the HUD to the next state. defaultPinnedState / dps bool Sets default pinned state of all nodes, 1 for pinned, 0 for unpinned. default value 0 defineTemplate / dt unicode 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 / deleteSelected bool Delete the selected nodes and break the selected connections. docTag / dtg unicode Attaches a tag to the editor. dotFormat / dot unicode 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 plainformat. 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. downstream / ds bool Include nodes that are downstream of the root nodes. duplicateTab / dpt int, int 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. editorMode / em unicode enableOpenGL / egl bool 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 bool Returns whether the specified object exists or not. Other flags are ignored. extendToShapes / ets bool Include child shapes for each selected transform. feedbackConnection / fbc bool 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 bool Returns the name of the node at the current mouse position in the editor view, if any. feedbackPlug / fbp bool Returns the name of the plug (attribute) at the current mouse position in the editor view, if any. feedbackTabIndex / fbi bool Returns the index of the tab at the current mouse position in the editor view, if any. feedbackType / fbt bool 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, connectionor an empty string. Use the other feedback* flags to query the item description. filter / f unicode 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 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 Specifies a function to be called whenever focus changes for the node editor. forceMainConnection / fmc unicode 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 bool Frame all the contents of the node editor. frameModelSelection / fms bool Frame the current model selection. frameSelected / fs bool Frame the selected contents of the node editor. getNodeList / gnl bool Returns a list of all nodes displayed in the editor. graphSelectedConnections / gsc bool Graph the nodes connected by the selected attribute connections. graphSelection / gsl bool Graph the nodes that are currently selected. gridSnap / gs bool Toggle grid snapping on/off. gridVisibility / gv bool Toggle grid visiblity on/off. highlightConnection / hlc unicode 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 unicode, bool Sets if selecting a node should highlight its connections for the specified editor, which can be regularor bifrost. hudMessage / hm unicode, int, float Display the given message on the editor HUD. The flag arguments are (message, type, duration), where type is:upper-left corner.top center.upper-right corner.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 bool Deprecated. Do not use in scripts. inContainerView / icv bool isContainerNode / icn unicode island / isl bool Deprecated. Do not use in scripts. keyPressCommand / kpc script 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 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 bool Perform an automatic layout of the graph. layoutCommand / lc script 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 bool 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 unicode 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 unicode Sets the icon swatch size of selected nodes in the active scene (all nodes if none are selected). Size values are smalland large. nodeTitleMode / ntm unicode 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 unicode 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). openContainerView / ocv unicode, bool panView / pv float, float Pan the view by the given amount. Arguments of 0 0 will reset the view translation. panel / pnl unicode 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 unicode Specifies the parent layout for this editor. This flag will only have an effect if the editor is currently un-parented. pinSelectedNodes / psn bool Pins or unpins the selected nodes. If no nodes are selected, this will apply to all displayed nodes. popupMenuScript / pms script 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 bool Query only. Returns whether this node editor is the primaryone. The primary editor is the only one that will show and allow tabs. redockTab / rdt bool 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 bool Removes all items downstream to the currently active selection. removeNode / rem unicode Removes a node from the graph. An empty string indicates that currently selected nodes should be removed. removeUnselected / run bool Removes unselected nodes from graph. removeUpstream / ru bool Removes all items upstream to the currently active selection. renameNode / ren unicode 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, unicode 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 unicode Restores the editor state corresponding to supplied hyperGraphInfo node. restoreLastClosedTab / rlt bool 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 unicode 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 bool Specify that the root nodes for the graph should taken from the currently active selection. scaleView / sv float Scales the graph view by the given factor. An argument of zero means reset to default. selectAll / sa bool Select all items in the graph. selectConnectionNodes / scn bool Select the nodes connected by the selected attribute connections. selectDownstream / sd bool Select all items downstream to the currently active selection. selectFeedbackConnection / sfc bool Select the feedback connection(s) in the editor view, if any. selectNode / sln unicode 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 bool Select all items upstream to the currently active selection. selectionConnection / slc unicode 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. settingsChangedCallback / scc script Specifies a function to be called whenever settings for the node editor get changed. shaderNetworks / sns bool Graph the shader network for all the objects on the selection list that have shaders. showAllNodeAttributes / saa unicode 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 bool Specifies whether nodes will have their namespace displayed if they are not in the root namespace. showSGShapes / ssg bool Show shapes that are connected to the network through a shading group. showShapes / ss bool Show shape nodes. showTabs / tab bool 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 bool Show transforms. stateString / sts bool 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 bool Keep the graph selection in sync with the model selection. tabChangeCommand / tcc script 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 bool 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 bool 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 unicode 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 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 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 bool Specifies that the editor should be removed from its layout. This cannot be used in query mode. unlockMainConnection / ulk bool Unlocks the mainConnection, effectively restoring the original mainConnection (if it is still available), and dynamic updates. updateMainConnection / upd bool Causes a locked mainConnection to be updated from the orginal mainConnection, but preserves the lock state. upstream / ups bool Include nodes that are upstream of the root nodes. useAssets / ua bool Use assets and published attributes instead of contents and actual attributes. useTemplate / ut unicode Forces the command to use a command template other than the current one. Flag can have multiple arguments, passed either as a tuple or a list. vnnCompound / vc bool vnnDgContainer / vd bool vnnRuntime / vr bool Derived from mel command maya.cmds.nodeEditor
Example:
import pymel.core as pm pm.window() # Result: ui.Window('window1') # form = pm.formLayout() p = pm.scriptedPanel(type="nodeEditorPanel", label="Node Editor") pm.formLayout(form, e=True, af=[(p,s,0) for s in ("top","bottom","left","right")]) # Result: ui.FormLayout('window1|formLayout66') # pm.showWindow()