Open the kinemage file (*.kin) in MAGE.
Rotate by dragging.
Identify by clicking.
Buttons: on/off data structures, animate.
Pulldown menus: choose view or new kinemage.
Read the text window, for author's suggestions.
Kinemages are the concept (and an individual kinemage is an annotated display-list file), and MAGE is the program that displays them. This combination constitutes a "word-processor" for 3D graphics.
Kinemages are designed to illustrate: to develop a story and allow exploration in the world of that story.
A "kinemage" (kinetic image) is an authored illustration presented as an interactive computer display. Operations on the displayed kinemage respond immediately: the entire image can be rotated in real time, parts of the display can be turned on or off, points can be identified by picking them, and the change between different forms can be animated. The image can be recentered, zoomed, put in stereo, or the front and back clipped away; distances, angles, and dihedrals can be measured. The kinemage can be edited on-screen: colors changed, multiple viewpoints saved, button names edited, lines pruned away or new ones drawn, etc.
A kinemage can be of anything that can be illustrated or drawn in 3D (or 2D). They were first used to illustrate protein molecules, so many of the examples and usual ways of describing them involve molecules as a historical artifact. Biochemists, of the Hacker's general category of the "Chemists" who tie up computers with calculations, will thus feel like a privileged audience. (The programmer of MAGE was indeed one of them chemists.) Kinemages are now also used to show nucleic acids, small molecules, other biochemical data such as Ramachandran plots, and even networks of relationships in ecology and social science.
A kinemage is prepared and specified by the author(s) of a journal article, lecture, class lesson, or a research "notebook" in order to better communicate ideas that depend on 3D information. Viewpoint, emphasis, and selection are an integral part of a kinemage just as they are for any successful presentation or study. A distinguishing characteristic of kinemages is the plain text file of commented display lists and accompanying explanations, which serve as the distribution form as well as an easily modified, human-readable, human-editable represention that embodies the data structure and 3D plotting information chosen by its author. Kinemages are viewed and explored in an open-ended way using a simple graphics program, such as MAGE.
MAGE has no internal knowledge of molecular structure or any other kind of architecture beyond the simple presumption of Cartesian space. A collaboration between the author and the authoring program (e.g., PREKIN) builds data organization into the kinemage itself. This two-layer approach has great advantages in flexibility, since an author can show things the programmer never imagined, including non-molecular 3D relationships. Overall, kinemages demand less work and less expertise from the reader/viewer than do traditional graphics programs, but that ease of use depends on the effort involved in thoughtful authoring choices, aided by the extensive on-screen editing capabilities described below.
The word processing and spreadsheet programs that have become so popular, as well as the programs for creating and modifying 2D illustrations, all allow the author to save an electronically readable form of the final result that can later be read back in to make a revised or even much changed result. That form can be taken up by someone else for revision and changes, often independently of platform or even of originating program. MAGE and kinemages enable this same process for 3D graphics. In addition, the kinemage file itself is editable. Overall, the possibilities for revision go far beyond the read-in scripts that some 3D graphics programs can write as a way of reproducing an illustration.
MAGE has been designed to optimize visual comprehension: the understanding and communication of specific 3D relationships, for instance, those within complex molecules. Display speed has been given priority, to ensure good depth perception from smooth real-time rotation. The interface is extremely simple and transparent, and the color palette is tuned for comparisons, contrasts, and depth cueing. Immediate identification and measurement are always active; views, animations, or rotations around specific axes or bonds can be built in by the kinemage author. Text and caption windows explain the intentions of the author, while a simple hypertext capability allows the reader to jump to the specific view and display objects being described; however most kinemages can also be successfully understood just by exploring what is available within the graphics window.
Kinemages are suitable for structure-browsing or producing static 2D presentation graphics, but those aspects have been kept secondary to effectiveness for interactive visualization and flexibility of author specification. Features and representations have deliberately been chosen to be fast, simple, and informative rather than either showy or traditional, as illustrated by the following examples and their rationales. Mouse-controlled rotation in MAGE depends only on the direction of drag, so that behavior of the image is independent of absolute cursor position within the window. Labels are available but seldom needed, since the data structure builds in a "pointID" that is displayed whenever the point is picked. Instead of using half-bond coloring which tends to chop up the image, PREKIN provides separate colors and button controls for main chain vs. side chains, and it can prepare a partial "ball & stick" representation with color-coded balls on all atoms except carbon and hydrogen.
(Since integer arithmetic at least used to be much faster than floating point calculations on small computers, MAGE builds a centered, scaled display list of integer coordinates and uses integer arithmetic for interactive display rotations. The size of an integer and the granularity of integers cause occasional visualization artifacts. The granularity of pixel raster displays are also evident, and MAGE does not do anti-aliasing. Thus Postscript output (or output through Raster3D or POV-Ray), which does a floating-point recalculation of the current screen image, is preferred for both precision and smoothness of final 2D images.)
Details like hydrogen atoms are crucial for some research uses, but to minimize the clutter from twice as many atoms, PREKIN sets up their display under button control. In addition, a "lens" parameter can be specified for the list, allowing display only within a radius of the last picked center point. To keep up speed for complex kinemages, the "detail" parameter for a list turns that list off when the interactive rotaion rate falls below a Menu-controlled rate. That parameter can be added by an author, but a built-in function in MAGE reverts ribbonlists to their outlines and spherelists to ballists under such conditions.
For effective perception of conformational change, while avoiding either the confusion of overlays or the potential misrepresentation of computed interpolation, MAGE features simple animation switching between two or more known conformations. Animation is controlled by the reader using either a button or the "a" key. This is a powerful way to show any changing structure or comparisons of structure where it is mostly the same components that move relative to one another.
What we are used to seeing in the real world is surfaces, and we are quite used to needing to infer underlying structure. Photo-realistic surface graphics are very appealing and much work has been done to bring them conveniently to the screen. However, there are times when we need to directly know underlying 3D structure. Surface graphics really show one the pilot's view as he screams down the canyon of the Death Star, but Luke's computer correctly showed him a wire-frame 3D graphics image to guide him to the hidden target. Of course, in the end he relied on the Force, just as we in our lesser tasks have to build our instincts and 3D literacy.
Similarly and very importantly, since molecular information resides mostly in chemical bonds and spatial proximity, kinemages were developed to emphasize fully 3D representations, such as vectors, dots, or "ball & sticks", rather than surface graphics that obscure internal structure. The analogy in architecture is an interest in the supports and plumbing of a building rather than its appearance: the engineer's view rather than the visitor's view. A space-filling representation (the "spherelist") is available in kinemages, but suggested for very sparing use - such as to show the size and shape of a small-molecule ligand. If an extensive surface is needed, a dot surface is more informative, since the underlying atoms and bonds can be seen at the same time. Nothing matches a well-rendered ribbon for conveying overall "fold"; PREKIN calculates and MAGE displays simple ribbon schematics, which can be rendered by Raster3D (http://www.bmsc.washington.edu/raster3d) or POV-Ray (http://www.povray.org) to make a static 2D illustration, but for interactive use ribbons serve mainly as introduction and context for more detailed "ball & stick", vector, and dot representations.
These same 3D tools and techniques work well for anything for which we need to appreciate internal structure or multi-dimensional relationships.
A kinemage should be designed to be explored interactively. This process is orthogonal to the canned sequences of "movies". Movies are indeed a powerful way to tell a story, but kinemages are for a reader to explore the world of a story. Reader exploration of a series, set up as animations by the author, takes the place of reader-selectable movie clips.
For kinemages the representation style is not a global choice that applies to everything shown, but rather is a set of local options (varied across space or sequence), chosen to provide appropriate emphasis and comprehensible detail within context.
Viewing a pre-existing kinemage file requires almost no learning process: the interface is sufficiently "transparent" that interaction is mainly with the subject rather than with the program. Six simple operations cover all basic functionalities: 1) drag with the mouse to rotate the displayed object; 2) click on a point to identify it; 3) turn things on or off, or animate if that option is present, with labeled buttons; 4) choose pre-set views from the Views pulldown menu; 5) read the author's explanations in the text and caption windows; 6) change to the next kinemage in the file with the Kinemage pulldown menu. At a slightly more complex level, one can recenter, zoom the scale, move the clipping planes, and save a view; measure distances, angles, and dihedrals or "Find" by point name (from the Tools pulldown menu); change Display menu options such as stereo or perspective; or consult the Help menu. There are keyboard shortcuts for convenience (such as "a" to animate or "c" for cross-eye vs wall-eye stereo), but they are never the only method and they are defined on the menus. Demo5_4a.kin provides a brief, guided introduction to using kinemages.
Simplicity of interface, attention to presentation issues, and free cross-platform availability make MAGE and kinemages especially well-suited for teaching and learning.
For general molecular-structure studies, kinemages act as a 3D lab notebook where author and reader are the same person. Those kinemages keep a visual record of the research process with selections, views, labels, measurements, superpositions, etc., plus a descriptive record in the text and caption windows. Setting up an animation between conformations or between related structures is an easy and very sensitive way of seeing changes, including correlated motions. Completely new display objects and organizations can be added to kinemages, such as 3D plots of related non-molecular data. Kinemages are an easy and platform-independent way of sharing ideas with collaborators, either side-by-side or at a distance with simultaneous discussion, or just by sending a kinemage with its preset views and notes. Later, the working research kinemages can be used to produce either static 2D or interactive illustrations for lectures or publication.
Within MAGE one can move group(s) with respect to others. This allows visual docking or superposition, or just convenient rearrangement of parts of the illustration.
In addition, MAGE incorporates research tools not yet available in other display systems. PROBE analyzes molecular interactions by calculating small-probe contact dots wherever two atoms are within 0.5 Angstroms of van der Waals contact (J. Mol. Biol. 285, 1711-33) for numerical scoring or for display in MAGE, where the three types of contacts (H-bonds, favorable van der Waals contacts, and unfavorable "clash" overlaps) are under separate control. Contact-dot analysis requires all hydrogen atoms; they are added by REDUCE (J. Mol. Biol. 285, 1735-47), which optimizes the positions of OH, SH, NH3, and Met CH3 hydrogens and possible 180° flips of Asn, Gln, or His, considering both van der Waals clashes and H-bonds analyzed combinatorially in local networks. These all-atom contact tools have research uses that fall into two distinct categories: one is study of the patterns and causes of particular structural features in molecules (best done on atomic-resolution structures); the other is sensitive testing, validating, and adjusting of an individual molecular model, either computational or experimental. As an example of the latter type, MAGE can call PROBE interactively for a real-time update of the all-atom contacts as bonds are rotated to find the best predicted position for a mutated side chain (Protein Sci., in press.).
Making a kinemage for teaching, publication, or distribution is an iterative and deliberate process. One can just type plotting commands into a text file, but often there is pre-existing data that needs to be transformed to make the raw image. Very convenient is a mediating computer program between the organization and format of the originating data and the organization and format of the kinemage. PREKIN is one such program for macromolecular data in the form archived by the Protein Data Bank (PDB). For a first look at what is in a PDB file, accept the default "backbone browser" option in PREKIN, which will produce alpha carbon backbone (virtual backbone for nucleic acids), disulfides, and non-water het groups for all subunits in the file and will automatically launch MAGE, where one can decide what else to add. In a second PREKIN run, one can choose from a menu of built-in scripts such as main chain plus H-bonds, ribbons, or alpha-carbons plus all side chains grouped and colored by type. Or one can ask for specified items in a "focus" around a chosen residue. Alternatively, in the "New Ranges" dialog box one can specify combinations of main chain, side chain, hydrogen-bonds, hydrogen atoms, waters, non-water het-atoms, balls, ribbons, rotatable or mutated side chains, etc. for any set of residue ranges. Subunits (or models, if NMR) are chosen in a final dialog. The resulting kinemage file can then be displayed and modified in MAGE.
On-screen editing of a kinemage in MAGE usually begins with setting up a few good views: rotate, pickcenter, zoom, and clip to optimize each one, and save it with "Keep Current View" on the Edit pulldown menu; it then shows up on the Views pulldown, with the given label. Turning on "Change Color" (Edit menu), then picking any point in an object, allows selection of a new color from the scrollable choices. Demo5_4b.kin shows the palette of colors with their names and gives some guidelines for choosing effective colors. MAGE_5_73 and later versions can internally produce a kinemage that shows this palette. Context is important for a kinemage (usually at least the major structural framework like the overall chain of alpha carbons for a protein), but as much as possible should be deleted that is not directly relevant, while the features of current interest are emphasized. This selection process is like the simplification and emphasis needed for a good 2D illustration, but in this case it applies to the fully interactive 3D form. For a kinemage, however, it is both possible and advantageous to include some additional details for further exploration, controlled by a button which can start out turned off. For deleting things, "Prune" on the Edit menu places new buttons on the right-hand panel: "punch" removes the vectors on either side of a picked point, "prune" removes an entire connected line segment, "auger" removes everything within a marked circle on the screen, and "undo p" recovers from a mistake, back for ten steps. If, for example, side chains are being shown in a focus around the active site, one could prune away those that don't interact at all, and then in later editing of the kinemage file, move the second-shell side chains to a separate list with the word "off" in its first line. "Text Editable" (Edit menu) enables writing explanations into the text and caption windows, while the graphics window is still active for reference. "Save As" (File menu) will save the whole edited kinemage file and reload to show the revised kinemage in its startup view. A Postscript file can also be written to print out a 2D picture of the current graphics window, perhaps after setting"black on white", "multi-width", and "stereo" on the Display menu.
At this stage, a word-processor can be used to look at the plain (ascii coded) text kinemage file, with its text, its views, and the hierarchy of group, subgroup, and list display objects, in human-readable and clearly-identified forms. Lists (e.g., @vectorlist {name}) can be of vectors, dots, labels, words, balls, spheres, triangles, ribbons, or arrows. Any part of the file can be edited, using its existing format as a guide or looking at another kinemage file that provides a desired template. Among the few operations that currently must be edited outside rather than inside MAGE are moving things between different lists or groups (for instance, setting up a new list of just active-site side chains in a different color and controlled by their own button), and adding "master" buttons that control object display independent of the group heirarchy (e.g., side chains can be turned off and on together for all subunits or models if "master= {side ch}" is added to the first line of each of those lists). The kinemage should be saved without formatting, as a plain text file.
More complex modifications are possible in MAGE, using advanced on-screen editing and construction features from the Edit menu. "Draw new" activates tools that can add labels, draw H-bonds (with shortened, unselectable lines), and make a variety of geometrical constructs by building out from the original points (e.g., add a beta carbon to a Glycine, or draw helix axes and measure their distance and angle). "Show Object Properties" lets one see, and edit, the names and parameters of the object hierarchy for any point picked, which allows renaming buttons, simplifying the button panel, adding animation, editing labels, or deleting entire display objects. "Remote Update", on the Tools menu, can call PREKIN to set up rotations for the last-picked side chain or a mutation of it, and can then call PROBE to interactively update all-atom contacts as the angles are changed.
The latest versions (currently 5.7) of MAGE and PREKIN are available free for Mac, PC, or UNIX from the kinemage Web site (http://kinemage.biochem.duke.edu). The programs operate very nearly equivalently on different platforms and, by policy, later versions of MAGE can display all older kinemages. A Java "Magelet" can show small kinemages directly in suitable Web browsers, with their first-level interactive capabilities of rotation, identification, measurement, views, and animation.
On the kinemage Web site, Demo5_4a.kin includes an introduction to the drawing tools and Demo5_4b.kin to the format and to editing. Make_kin.txt is a more complete tutorial on the process of constructing kinemages. Pkin_5_4.txt and Mage_5_4.txt document the features of the MAGE and PREKIN programs. File KinFmt5_4 (which also constitutes the Mime standard chemical/x-kinemage) is a formal description of the kinemage format for 3D display. The latest versions of MAGE have many categories under the the Help Menu, as well as provision for writing format and keyword listings to the text window which can then be saved and printed.
All in all, making an initial kinemage is trivially easy, but making a really good one for use by others is very much like making a good Web page. There are tools that make the individual steps easy, but one needs to exercise restraint to keep it simple enough to be both fast and comprehensible, patience to keep looking at the result and modifying it where needed, and judgment about both content and aesthetics.