Use Case Name : Groups of Graphical Elements |
For Feature : Groups |
Editors: Kristina Hanspers |
<<TableOfContents: execution failed [Argument "maxdepth" must be an integer value, not "[2]"] (see also the log)>>
Summary
To facilitate pathway editing, grouping of graphics lets the user move around a set of graphics that have already been optimally aligned, to avoid having to move each graphic separately. It also effectively enables the user to create custom graphics, by combining various graphics. This should be very similar to how grouping works in Powerpoint. This implementation of Groups will not necessarily use collapse and expand.
Step-by-Step User Action
Creating a New Grouping of Graphics
- Select two or more graphics
- Choose "Group” from a context menu, main menu or toolbar
- Be able to move the group around the canvas
- Be able to un-group (destroy) the individual graphics to move them separately or delete particular graphics in the group
Visual Aides
The below figure shows and example from GenMAPP where a number of separate graphical objects (lines, arcs, rectangles) are joined to form a larger custom graphic, in this case an illustration of a striated muscle fiber.
Requirements for Cytoscape
- The Group API can handle this one in terms of create and destroy
- A simple GUI for create and destroy should be sufficient.
- Need to support the storage of groups in a pathway file format. xGMML and GenMAPP's GPML?
Importance
Using a grouping feature, users will be able to create much more sophisticated custom graphics by joining existing simpler graphics together. Handling groups of graphics is important for effective pathway editing.
Other Examples
- Illustrator and other such programs have a grouping function that mimics the restriction on children once a group is formed. You cannot move the children relative to each other, for example. If you want to treat them independently, you have to ungroup.
Comments
AllanKuchinsky - 2006-11-27 16:18:03
How would one add a child to a group? Would you need to destroy the group then build a new group that includes the new member?
Can groups be nested?