hyperGraph is undoable, queryable, and editable.
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.
In query mode, return type is based on queried flag.
Long name (short name) |
Argument types |
Properties |
-exists(-ex)
|
|
|
|
Returns true|false depending upon whether the
specified object exists. Other flags are ignored.
|
|
-defineTemplate(-dt)
|
string
|
|
|
Puts a command in a mode where any other flags and args 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.
|
|
-useTemplate(-ut)
|
string
|
|
|
Force the command to use a command template other than
the current one.
|
|
-panel(-pnl)
|
string
|
|
|
Specifies the panel that the editor belongs to. By default if
an editor is created in the create callback of a scripted panel it
will belong to that panel. If an editor doesn't belong to a panel
it will be deleted when the window that it is in is deleted.
|
|
-parent(-p)
|
string
|
|
|
Specifies the parent layout for this editor. This flag will only
have an effect if the editor is currently un-parented.
|
|
-unParent(-up)
|
|
|
|
Specifies that the editor should be removed from its layout.
This cannot be used with query.
|
|
-control(-ctl)
|
|
|
|
Query only. Returns the top level control for this editor.
Usually used for getting a parent to attach popup menus.
Caution: It is possible, at times, for an editor to exist without a
control. This flag returns "NONE" if no control is present.
|
|
-mainListConnection(-mlc)
|
string
|
|
|
Specifies the name of a selectionConnection object which the
editor will use as its source of content. The editor will
only display items contained in the selectionConnection object.
|
|
-forceMainConnection(-fmc)
|
string
|
|
|
Specifies the name of a selectionConnection object which 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.
|
|
-selectionConnection(-slc)
|
string
|
|
|
Specifies the name of a selectionConnection object which 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 change.
|
|
-highlightConnection(-hlc)
|
string
|
|
|
Specifies the name of a selectionConnection object which
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.
|
|
-filter(-f)
|
string
|
|
|
Specifies the name of an itemFilter object to be placed on this editor.
This filters the information coming onto the main list
of the editor.
|
|
-lockMainConnection(-lck)
|
|
|
|
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.
|
|
-stateString(-sts)
|
|
|
|
Query only flag. Returns the MEL command that will edit an
editor to match the current editor state. The returned command string
uses the string variable $editorName in place of a specific name.
|
|
-unlockMainConnection(-ulk)
|
|
|
|
Unlocks the mainConnection, effectively restoring the original
mainConnection (if it is still available), and dynamic updates.
|
|
-updateMainConnection(-upd)
|
|
|
|
Causes a locked mainConnection to be updated from the orginal
mainConnection, but preserves the lock state.
|
|
-docTag(-dtg)
|
string
|
|
|
Attaches a tag to the Maya editor.
|
|
-addBookmark(-abk)
|
|
|
|
Create a bookmark for the current hypergraph view.
|
|
-addDependNode(-adn)
|
name
|
|
|
Add a dependency node to the dependency graph view
|
|
-addDependGraph(-adg)
|
name
|
|
|
Add a dependency graph starting at the named node to the view
|
|
-animateTransition(-atr)
|
boolean
|
|
|
Turns animate transitions off and on.
|
|
-attributeEditor(-ae)
|
string
|
|
|
Launches attribute editor on selected node.
|
|
-bookmarkName(-bn)
|
|
|
|
Returns the bookmark name for the most recently created bookmark.
|
|
-connectionDrawStyle(-cds)
|
string
|
|
|
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 "side" connection draw style.
|
|
-clear(-clr)
|
|
|
|
Clears the current hypergraph view and deletes the graph UI.
(see also -rebuild flag)
|
|
-collapseContainer(-cc)
|
|
|
|
Collapses containers selected in DG graph.
|
|
-deleteBookmark(-dbk)
|
string
|
|
|
Delete the bookmark with the corresponding node name.
|
|
-dependGraph(-dg)
|
|
|
|
Displays dependency graph iterated from specified node.
|
|
-dependNode(-dn)
|
string
|
|
|
Displays dependency node in view.
|
|
-dropNode(-dr)
|
string
|
|
|
Returns the name of the source node in a drag and drop connection,
when called during processing of a drop.
|
|
-dropTargetNode(-drt)
|
string
|
|
|
Returns the name of the destination node in a drag and drop
connection, when called during processing of a drop.
|
|
-dragAndDropBehaviorCommand(-ddc)
|
string
|
|
|
Mel proc called when a drag and drop onto a hyperGraph
node has occurred. Proc signature is
procName (string $editor, string $sourceNode, string $destinationNode).
|
|
-edgeDblClickCommand(-edc)
|
string
|
|
|
Mel proc called when an edge is double clicked. Proc signature is
procName (string $editor, string $edge).
|
|
-edgeDimmedDblClickCommand(-edd)
|
string
|
|
|
Mel proc called when a dimmed edge is double clicked. Proc signature is
procName (string $editor, string $edge).
|
|
-enableAutomaticLayout(-eal)
|
boolean
|
|
|
Rebuild the graph if a node is added or removed from the graph
via drag and drop or dg messages. Default is true.
|
|
-expandContainer(-ec)
|
|
|
|
Expands containers selected in DG graph.
|
|
-fromAttr(-fat)
|
string
|
|
|
Returns the name of the source attribute in a drag and drop
connection, when called during processing of a drop.
|
|
-feedbackGadget(-fbg)
|
string
|
|
|
Returns the name of the current gadget.
|
|
-fitImageToWidth(-fiw)
|
|
|
|
Changes position and scale of background image, so its width fits current editor view.
|
|
-fitImageToHeight(-fih)
|
|
|
|
Changes position and scale of background image, so its height fits current editor view.
|
|
-feedbackNode(-fbn)
|
string
|
|
|
Returns the name of the current feedback or highlight node.
|
|
-focusCommand(-fc)
|
string
|
|
|
Mel proc to be run when the mouse is clicked in the hyper
graph. Primarily of use in setting the window focus.
|
|
-filterDetail(-fd)
|
string boolean
|
|
|
This flag is obsolete. Use the showConstraints, showExpressions,
showDeformer, showInvisible, showShapes and showUnderworld flags
instead.
|
|
-fold(-fo)
|
|
|
|
Folds (Collapses) selected object.
|
|
-forceRefresh(-frf)
|
|
|
|
Forces the hypergraph to refresh (redraw) its contents.
|
|
-frame(-fr)
|
|
|
|
Frames the selected objects
|
|
-frameBranch(-frb)
|
|
|
|
Frames the the branch from the selected node on downward.
|
|
-frameGraph(-fg)
|
|
|
|
-frameHierarchy(-frh)
|
|
|
|
Frames the hierarchy that contains the selected node.
|
|
-graphLayoutStyle(-gls)
|
string
|
|
|
Selects the graph layout style :
"circularLayout"|"hierarchicalLayout"|"orthogonalLayout"|"symmetricLayout"|"treeLayout"
|
|
-getNodeList(-gnl)
|
|
|
|
Returns a string array that represents a list
of all the nodes in the graph.
|
|
-getNodePosition(-gnp)
|
string
|
|
|
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.
|
|
-graphType(-gt)
|
string
|
|
|
Returns the type name of the current graph in the view
(either DAG or DG).
|
|
-iconSize(-ics)
|
string
|
|
|
Set or query the icon size for this hyper graph editor.
The currently allowed icon sizes are "small", "medium" and
"large".
|
|
-viewOption(-vo)
|
string
|
|
|
Set or query the view option for this hyper graph editor.
The currently allowed views are "asIcons" and "asList".
|
|
-isHotkeyTarget(-iht)
|
|
|
|
-image(-img)
|
string
|
|
|
Specify background image to be loaded from the project image directory.
|
|
-imageEnabled(-ime)
|
boolean
|
|
|
Enable display of a loaded background image (Freeform DAG view or DG view)
|
|
-imagePosition(-imp)
|
float float
|
|
|
Position of the background image.
|
|
-imageScale(-ims)
|
float
|
|
|
Uniform scale of the background image.
|
|
-imageForContainer(-ifc)
|
|
|
|
Specify that the following flags work on selected containers instead of the whole image:
-imageScale,-imagePosition, fitImageToWidth, -fitImageToHeight, -image
|
|
-layout(-lay)
|
|
|
|
Perform an automatic layout on the graph.
|
|
-layoutSelected(-lsl)
|
string
|
|
|
Perform an automatic layout on the selected object.
"circularLayout"|"hierarchicalLayout"|"orthogonalLayout"|"symmetricLayout"|"treeLayout"
|
|
-look(-loo)
|
float float
|
|
|
Look at a coordinate in the graph view
|
|
-down(-do)
|
|
|
|
Navigate down to the dependency graph containing the current selection.
Shows upstream and downstream connections.
|
|
-mergeConnections(-mc)
|
boolean
|
|
|
Merge groups of connections into 'fat' connections.
|
|
-navigateHome(-hom)
|
|
|
|
Navigate to the home (DAG) view.
|
|
-nodeDropCommand(-ndr)
|
string
|
|
|
Set the command to be called when a node is dropped in the
hypergraph window.
|
|
-nodePressCommand(-np)
|
string
|
|
|
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)
|
string
|
|
|
Set the command to be called when the user releases a mouse button
while the cursor is over a node in the hypergraph window.
|
|
-nextView(-nvw)
|
|
|
|
Changes the view to the next DAG view.
|
|
-opaqueContainers(-opc)
|
boolean
|
|
|
Sets expanded container background opacity.
|
|
-orientation(-or)
|
string
|
|
|
Selects orientation style of graph: "horiz"|"vert"
|
|
-previousView(-pvw)
|
|
|
|
Changes the view back to the previous DAG view.
|
|
-popupMenuScript(-pms)
|
string
|
|
|
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.
|
|
-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)
|
|
|
|
-rename(-rn)
|
|
|
|
Pops up text field over selected object for renaming
|
|
-resetFreeform(-rf)
|
|
|
|
Resets freeform position on all nodes.
|
|
-freeform(-fre)
|
boolean
|
|
|
Enable freeform layout mode.
|
|
-restoreBookmark(-rbk)
|
string
|
|
|
Restore the view corresponding to the bookmark.
|
|
-removeNode(-rmn)
|
string
|
|
|
Removes the node identified by string from the graph.
|
|
-scrollUpDownNoZoom(-snz)
|
boolean
|
|
|
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.
|
|
-showConstraints(-shc)
|
boolean
|
|
|
Show constraint relationships in the DAG.
|
|
-showExpressions(-shx)
|
boolean
|
|
|
Show expression relationships in the DAG.
|
|
-showDeformers(-shd)
|
boolean
|
|
|
Show deformer or geometry filter relationships in the DAG.
|
|
-showInvisible(-shi)
|
boolean
|
|
|
Show invisible nodes in the DAG.
|
|
-showRelationships(-shr)
|
boolean
|
|
|
Show relationship (message) connections.
|
|
-showShapes(-shs)
|
boolean
|
|
|
Show shape nodes in the DAG.
|
|
-showUnderworld(-shu)
|
boolean
|
|
|
Show underworld graphs in the DAG.
|
|
-setNodePosition(-snp)
|
string 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.
|
|
-transitionFrames(-tfr)
|
int
|
|
|
Specify te number of transition frames for animate transitions.
|
|
-unfold(-uf)
|
|
|
|
Unfolds (expands) selected object.
|
|
-unfoldAll(-ua)
|
|
|
|
Unfolds everything under selected object.
|
|
-updateNodeAdded(-una)
|
boolean
|
|
|
Update graph when a new node is added to the database
|
|
-updateSelection(-us)
|
boolean
|
|
|
Update selection state in the graph when the selection state of
database changes.
|
|
-upstream(-ups)
|
|
|
|
Show upstream dependency graph of selected node(s).
|
|
-downstream(-ds)
|
|
|
|
Show downstream dependency graph of selected node(s).
|
|
-useFeedbackList(-ufl)
|
|
|
|
Use feedback or highlight list as the target selection when
processing other hypergraph command-line options.
|
|
-visibility(-vis)
|
boolean
|
|
|
Set the visible state of the selected node(s).
|
|
-zoom(-zm)
|
float
|
|
|
Specify the zoom factor for animating transitions
|
|