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) |
boolean |
 |
|
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) |
boolean |
  |
|
Specifies that the editor should be removed from its layout.
This cannot be used with query. |
|
control(ctl) |
boolean |
 |
|
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) |
boolean |
  |
|
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) |
boolean |
 |
|
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) |
boolean |
  |
|
Unlocks the mainConnection, effectively restoring the original
mainConnection (if it is still available), and dynamic
updates. |
|
updateMainConnection(upd) |
boolean |
  |
|
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) |
boolean |
  |
|
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) |
boolean |
 |
|
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) |
boolean |
  |
|
Clears the current hypergraph view and deletes the graph UI.
(see also -rebuild flag) |
|
collapseContainer(cc) |
boolean |
  |
|
Collapses containers selected in DG graph. |
|
deleteBookmark(dbk) |
string |
  |
|
Delete the bookmark with the corresponding node name. |
|
dependGraph(dg) |
boolean |
  |
|
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) |
boolean |
  |
|
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) |
boolean |
 |
|
Changes position and scale of background image, so its width
fits current editor view. |
|
fitImageToHeight(fih) |
boolean |
 |
|
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) |
boolean |
  |
|
Folds (Collapses) selected object. |
|
forceRefresh(frf) |
boolean |
  |
|
Forces the hypergraph to refresh (redraw) its contents. |
|
frame(fr) |
boolean |
  |
|
Frames the selected objects |
|
frameBranch(frb) |
boolean |
  |
|
Frames the the branch from the selected node on downward. |
|
frameGraph(fg) |
boolean |
  |
|
frameHierarchy(frh) |
boolean |
  |
|
Frames the hierarchy that contains the selected node. |
|
graphLayoutStyle(gls) |
string |
   |
|
Selects the graph layout style :
"circularLayout"|"hierarchicalLayout"|"orthogonalLayout"|"symmetricLayout"|"treeLayout" |
|
getNodeList(gnl) |
boolean |
 |
|
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) |
boolean |
 |
|
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) |
boolean |
   |
|
Specify that the following flags work on selected containers
instead of the whole image: -imageScale,-imagePosition,
fitImageToWidth, -fitImageToHeight, -image |
|
layout(lay) |
boolean |
  |
|
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) |
boolean |
  |
|
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) |
boolean |
  |
|
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) |
boolean |
  |
|
Changes the view to the next DAG view. |
|
opaqueContainers(opc) |
boolean |
  |
|
Sets expanded container background opacity. |
|
orientation(orientation) |
string |
   |
|
Selects orientation style of graph: "horiz"|"vert" |
|
previousView(pvw) |
boolean |
  |
|
Changes the view back to the previous DAG view. |
|
|
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) |
boolean |
  |
|
rename(rn) |
boolean |
  |
|
Pops up text field over selected object for renaming |
|
resetFreeform(rf) |
boolean |
  |
|
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) |
boolean |
  |
|
Unfolds (expands) selected object. |
|
unfoldAll(ua) |
boolean |
  |
|
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) |
boolean |
  |
|
Show upstream dependency graph of selected node(s). |
|
downstream(ds) |
boolean |
  |
|
Show downstream dependency graph of selected node(s). |
|
useFeedbackList(ufl) |
boolean |
   |
|
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 |
|