pymel.core.windows.hyperGraph¶
- hyperGraph(*args, **kwargs)¶
The following is an overview of the basic features of the hypergraph. A more detailed description is given in the user manuals. The hypergraph provides the user with the ability to view and edit the maya scene graph. The hypergraph supports two types of graphs: the DAG or scene hierarchy and the dependency graph. The default view of the hypergraph editor is the DAG view. The user can show the dependency graph for a collection of nodes by first selecting the nodes and navigating to the dependency graph using one of the graph options. The user can save any view by setting a bookmark to that view. The user can also show previous views using the view options provided. The hypergraph supports a simple editing mechanism for editing hierarchy in the DAG view and connections in dependency graph view. In the DAG view, the user can reparent or reorder nodes in the graph using drag-and-drop. In the dependency graph view, the user can select connections and delete them or make new connections by dragging and dropping nodes or existing connections. The hypergraph supports two layout modes in the DAG view: automatic and freeform. In automatic mode, the graph nodes are automatically positioned according to the layout preferences. In freeform mode, the user can position nodes manually. The node position is saved in the scene. A background image can be placed behind DG or DAG in freeform mode. This can be used as a template for positioning nodes in a user-defined layout. Nodes in the DAG view can be expanded or collapsed. The state is saved in the scene. The performance of the graph drawing will increase as hierarchies are collapsed. In addition to hierachy relationships, the hypergraph can show expression, constraint and deformation relationships in the DAG. These can be enabled/disabled through the options provided. There are also additional filters for showing shape nodes and invisible nodes. The amount of detail show may affect the speed of the display of the graph. Most of the UI features of the hypergraph are addressable through the hypergraph command-line interface. The available command-line options are described in the next section.
Flags:
Long Name / Short Name Argument Types Properties addBookmark / abk bool
Create a bookmark for the current hypergraph view. addDependGraph / adg PyNode
Add a dependency graph starting at the named node to the view addDependNode / adn PyNode
Add a dependency node to the dependency graph view animateTransition / atr bool
Turns animate transitions off and on. attributeEditor / ae unicode
Launches attribute editor on selected node. backward / bak bool
Navigate backward one step. bookmarkName / bn bool
Returns the bookmark name for the most recently created bookmark. breakConnectionCommand / bco unicode
Specify the command to call when a connection is broken. clear / clr bool
Clears the current hypergraph view and deletes the graph UI. (see also -rebuild flag) collapseContainer / cc bool
Collapses containers selected in DG graph. connectionDrawStyle / cds unicode
Specify how connections between nodes should be drawn. Valid values are center(draws connection lines from the center of one node to the center of the other) and side(draws connection lines from the right side of the source node to the left side of the destination node). The default is center. This flag does not apply to Hypershade graphs, which are always drawn with the sideconnection draw style. 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. currentEdge / ced unicode
Return the current edge name. currentNode / cno unicode
Return the current node name. debug / deb unicode
Run a debug method on the graph 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. deleteBookmark / dbk unicode
Delete the bookmark with the corresponding node name. dependGraph / dg bool
Displays dependency graph iterated from specified node. dependNode / dn unicode
Displays dependency node in view. directoryPressCommand / dp unicode
Specify a command to run when a directory is pressed. docTag / dtg unicode
Attaches a tag to the editor. down / do bool
Navigate down to the dependency graph containing the current selection. Shows upstream and downstream connections. downstream / ds bool
Show downstream dependency graph of selected node(s). dragAndDropBehaviorCommand / ddc unicode
Mel proc called when a drag and drop onto a hyperGraph node has occurred. Proc signature is procName (string $editor, string $sourceNode, string $destinationNode). dropNode / dr unicode
Returns the name of the source node in a drag and drop connection, when called during processing of a drop. dropTargetNode / drt unicode
Returns the name of the destination node in a drag and drop connection, when called during processing of a drop. edgeDblClickCommand / edc unicode
Mel proc called when an edge is double clicked. Proc signature is procName (string $editor, string $edge). edgeDimmedDblClickCommand / edd unicode
Mel proc called when a dimmed edge is double clicked. Proc signature is procName (string $editor, string $edge). edgeDropCommand / edr unicode
Command to execute when an edge drop occurs. edgePressCommand / ep unicode
Command to execute when an edge press occurs. edgeReleaseCommand / er unicode
Command to execute when an edge release occurs. enableAutomaticLayout / eal bool
Rebuild the graph if a node is added or removed from the graph via drag and drop or dg messages. Default is true. exists / ex bool
Returns whether the specified object exists or not. Other flags are ignored. expandContainer / ec bool
Expands containers selected in DG graph. feedbackGadget / fbg unicode
Returns the name of the current gadget. feedbackNode / fbn unicode
Returns the name of the current feedback or highlight node. 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. filterDetail / fd unicode, bool
This flag is obsolete. Use the showConstraints, showExpressions, showDeformer, showInvisible, showShapes and showUnderworld flags instead. fitImageToHeight / fih bool
Changes position and scale of background image, so its height fits current editor view. fitImageToWidth / fiw bool
Changes position and scale of background image, so its width fits current editor view. focusCommand / fc unicode
Mel proc to be run when the mouse is clicked in the hyper graph. Primarily of use in setting the window focus. fold / fo bool
Folds (Collapses) selected object. 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. forceRefresh / frf bool
Forces the hypergraph to refresh (redraw) its contents. forward / fow bool
Navigate forward one step. frame / fr bool
Frames the selected objects frameBranch / frb bool
Frames the the branch from the selected node on downward. frameGraph / fg bool
Frames the entire graph. frameGraphNoRebuild / fgn bool
Specify that on zoom out the graph should not rebuild; for efficiency. frameHierarchy / frh bool
Frames the hierarchy that contains the selected node. freeform / fre bool
Enable freeform layout mode. fromAttr / fat unicode
Returns the name of the source attribute in a drag and drop connection, when called during processing of a drop. fromNode / frn unicode
Returns the name of the source node in a drag and drop connection, when called during processing of a drop. getNodeList / gnl bool
Returns a string array that represents a list of all the nodes in the graph. getNodePosition / gnp unicode
Returns the position of a specified node in x,y graph coords. This flag and its argument must be passed to the command before the -q flag (see examples). In query mode, this flag can accept a value. graphDescription / gd bool
When used, return a description of the current graph. graphLayoutStyle / gls unicode
This flag is obsolete. The only supported graph layout style is hierarchicalLayout. Use of any other style will trigger a warning. graphType / gt unicode
Returns the type name of the current graph in the view (either DAG or DG). heatMapDisplay / hmd bool
Specify whether the heat map should be shown or not. 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. iconSize / ics unicode
Set or query the icon size for this hyper graph editor. The currently allowed icon sizes are smallIcons, mediumIcons, largeIconsand superIcons. image / img unicode
Specify background image to be loaded from the project image directory. imageEnabled / ime bool
Enable display of a loaded background image (Freeform DAG view or DG view) imageForContainer / ifc bool
Specify that the following flags work on selected containers instead of the whole image: -imageScale,-imagePosition, fitImageToWidth, -fitImageToHeight, -image imagePosition / imp float, float
Position of the background image. imageScale / ims float
Uniform scale of the background image. initializeScript / ini unicode
Script to call when the graph is initialized. isHotkeyTarget / iht bool
For internal use. layout / lay bool
Perform an automatic layout on the graph. layoutSelected / lsl unicode
This flag is obsolete. The only supported graph layout style is hierarchicalLayout. Use of any other style will trigger a warning. layoutSubtree / lsb bool limitGraphTraversal / lgt int
Limit the graph traversal to a certain number of levels. 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. look / loo float, float
Look at a coordinate in the graph view 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. mergeConnections / mc bool
Merge groups of connections into ‘fat’ connections. navigateHome / hom bool
Navigate to the home (DAG) view. navup / nu bool
Navigate up to the dependency graph containing the current selection. Shows upstream and downstream connections. newInputConnection / nin unicode
Specify a new connection, input side newOutputConnection / nou unicode
Specify a new connection, output side nextView / nvw bool
Changes the view to the next DAG view. nodeConnectCommand / nco unicode
Command to call when a node is connected. nodeDblClickCommand / ndc unicode
Command to call when a node is double-clicked. nodeDropCommand / ndr unicode
Set the command to be called when a node is dropped in the hypergraph window. nodeMenuCommand / nm unicode
Command to call when a node menu is activated. nodePressCommand / np unicode
Set the command to be called when the user presses a mouse button while the cursor is over a node in the hypergraph window. nodeReleaseCommand / nr unicode
Set the command to be called when the user releases a mouse button while the cursor is over a node in the hypergraph window. opaqueContainers / opc bool
Sets expanded container background opacity. orientation / orientation unicode
Selects orientation style of graph: horiz|vert panView / pan float, float
Pan the view to a new center. 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. popupMenuScript / pms unicode
Set the script to be called to register the popup menu with the control for this hypergraph. The script will be called with a string argument which gives the name of the hypergraph whose control the popup menu should be parented to. previousView / pvw bool
Changes the view back to the previous DAG view. range / rg float, float
Limits the display of nodes to only those within the range. There are two float values expected, the first the lower threshold of the range and the second the upper threshold of the range. The values are absolute timing values, not percentages. rebuild / rb bool
Rebuilds graph removeNode / rmn unicode
Removes the node identified by string from the graph. rename / rn bool
Pops up text field over selected object for renaming resetFreeform / rf bool
Resets freeform position on all nodes. restoreBookmark / rbk unicode
Restore the view corresponding to the bookmark. scrollUpDownNoZoom / snz bool
Specify if we want to be in the scroll along y only with no free zooming mode. By default, hyper graph editor allows user to pan left and right. 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. setNodePosition / snp unicode, float, float
Sets the node identified by string to the (x,y) position in the window specified by the two floats. If the node is not in the graph than it will be added to the graph and then moved to the new position. showCachedConnections / scc bool
Specify whether cached connections should be shown. showConnectionFromSelected / scf bool
Show the connects (constraints, expresions, and deformers - see showConstraints for example) leaving from selected nodes. This can be combined with showConnectionToSelected to show both arrive and leaving connects. If both flags are false then all the connections will be shown. showConnectionToSelected / sct bool
Show the connects (constraints, expresions, and deformers - see showConstraints for example) arriving at selected nodes. This can be combined with showConnectionFromSelected to show both arrive and leaving connects. If both flags are false then all the connections will be shown. showConstraintLabels / scl bool
Specify whether constraint labels should be shown. showConstraints / shc bool
Show constraint relationships in the DAG. showDeformers / shd bool
Show deformer or geometry filter relationships in the DAG. showExpressions / shx bool
Show expression relationships in the DAG. showInvisible / shi bool
Show invisible nodes in the DAG. showRelationships / shr bool
Show relationship (message) connections. showShapes / shs bool
Show shape nodes in the DAG. showUnderworld / shu bool
Show underworld graphs in the DAG. 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. toAttr / tat unicode
Returns the name of the destination attribute in a drag and drop connection, when called during processing of a drop. toNode / ton unicode
Returns the name of the destination node in a drag and drop connection, when called during processing of a drop. transitionFrames / tfr int
Specify te number of transition frames for animate transitions. unParent / up bool
Specifies that the editor should be removed from its layout. This cannot be used in query mode. unfold / uf bool
Unfolds (expands) selected object. unfoldAll / ua bool
Unfolds everything under selected object. unfoldAllShapes / uas bool
Unfolds all shapes. unfoldHidden / ufh bool
Unfolds all hidden objects. 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. updateNodeAdded / una bool
Update graph when a new node is added to the database updateSelection / us bool
Update selection state in the graph when the selection state of database changes. upstream / ups bool
Show upstream dependency graph of selected node(s). useDrawOverrideColor / drc bool
Specify whether or not to use draw override coloring. useFeedbackList / ufl bool
Use feedback or highlight list as the target selection when processing other hypergraph command-line options. useTemplate / ut unicode
Forces the command to use a command template other than the current one. viewOption / vo unicode
Set or query the view option for this hyper graph editor. The currently allowed views are asIconsand asList. visibility / vis bool
Set the visible state of the selected node(s). zoom / zm float
Specify the zoom factor for animating transitions Flag can have multiple arguments, passed either as a tuple or a list. Derived from mel command maya.cmds.hyperGraph
Example:
import pymel.core as pm # The hyperGraph command is not one which would commonly be used # by the user. pm.polySphere( r=1, sx=20, sy=20, ax=(0, 1, 0), tx=2, ch=1 ) # Result: [nt.Transform(u'pSphere1'), nt.PolySphere(u'polySphere1')] # # Gets the position of the node in the graph. maya.mel.eval( "HypergraphHierarchyWindow" ) position = pm.hyperGraph( 'hyperGraphPanel1HyperGraphEd', query=True, getNodePosition='pSphere1' ) print position