Rachid Gherbi
LIMSI-CNRS, Université Paris-Sud
BP 133, 91403 Orsay cedex
Tel.: +33 1 69 85 81 64
Fax.: +33 1 69 85 80 88
Email: gherbi@limsi.fr
Joan Hérisson
LIMSI-CNRS, Université Paris-Sud
BP 133, 91403 Orsay cedex
web: http://www.limsi.fr
Email: herisson@limsi.fr
Contents
Figure 1: The DNA is a double strand
We refer to reading a nucleotide when one strand of the DNA is read; but our application also requires reading the two strands bound together and we will then speak about how to read a "plate".
2.2 The Functional Architecture of the ADN_Viewer
Figure 2: Functional architecture of ADN_Viewer
2.3 Input Data 2.3.1 The DNA Sequence
The nucleic sequence is small and doesn't generally exceed about fifteen nucleotides which often represent the vicinity close to a start codon (or a stop codon) of a gene,

Figure 3: Sequence + rules = 3D visualization

Figure4:
Genomic representation of a sequence including 80.000 nucleotides.


Figure6: Nucleic representation of a sequence including 11 bases
3.2 Visualization

Figure 7: Visualization according to 4 views
3.2.2 The Full-Screen Mode

Figure 8: Full-screen with menu

Figure 9: Full-screen without menu
3.3 Stereoscopic visualization
![]() |
![]() |
![]() |
![]() |

Figure 10: Rotations are carried out according to a sphere model.
The mouse also gives access to the contextual menu that manages the levels of details and the output of the application.
3.4.2 The keyboard
This line is inserted in the three-dimensional representation of the sequence, which provides additional information on spatiality: orientation and distribution of the molecule in space.
3.4.5 Documents produced by ADN_Viewer
Figure 12: Principe of coordinates computing
Once again this phase of pre-computing saves invaluable time, because, with each movement of the scene, the latter must be entirely recomputed. In the present case, it is enough to traverse the table in which are stored the coordinates of the points and to display the graphic objects according to the level of desired detail (genomic or genic). Once these coordinates are computed, we deduce the coordinates from nucleotides forming the other strand.
For the nucleic representation, the transformation matrices are propagated to each scene display in the following way: first, we compute the coordinates of the two points modeling each nucleotide on the nucleotide plate; second, three rotations and the translation of each plate are obtained by consulting the transformation matrices, but, for a given plate, the third rotation (that around axis Ox) is not represented; finally, the translation between the genomic and the genic levels of representation is obtained by using the points on the spheres modeling the nucleotides but not the rotation around their axis Ox. Indeed, a dumbbell (genic representation) that rotates around axis Ox remains identical to itself (cf. Figure 13).

Figure 13: Alter turning around Ox axis
On the other hand, in the nucleic representation where the layout of the spheres modeling the atoms creates a parallelepiped structure, rotation around Ox axis causes slopes of the plate that must absolutely be represented (cf. Figure 14).

Figure 14: Parallelepiped turning around Ox axis
4.2 Visualization of a SequenceWe saw above that a table is generated to display a DNA sequence. This table is dynamically processed by sampling it to render the complexity of the scenes which have to be visualized. For example, if the represented molecule is big and at a distance, we will not display all its points but perhaps only one out of twenty in order to manage the granularity of the scene. This process applies to all levels of detail; representations of each sphere take into account the distance to the object on the screen.
Our technique for visualization is a box which fixes the limits of the scene visualized - a "bounding box"- and which is dynamically calculated and adjusted for each sequence that has to be shown.. The box is designed to represent all possible spatial orientations of a molecule, providing a cone of visualization which can be parametrized.. When a zoom is carried out, the box moves with the sequence.
The video presented here below shows an anaglyph-based stereoscopic animation .
For the moment, we do not engage in 3D object clipping because clipping greatly increases computation time and thus causes a corresponding loss in real time interactivity. Clipping would probably be appropriate to help manage the granularity of scenes, for example, in order to display more details during zooms.
Two approaches exist:
·downstream clipping,
·and upstream clipping.
Downstream clipping is carried out after the matrix has been produced, i.e. when objects are calculated but not yet displayed. The method is not selective and because all the objects are calculated there is no saving in calculation time.
Upstream clipping, on the other hand, is carried out before the matrix is produced and concerns only the objects which will be shown on the screen.A real economy of calculation time can thus be obtained.
This last approach to clipping interests us since it will enable us to solve the problem stated above.
When a rotation is carried out, the scene turns around a pre-computed fixed point that is the center of the bounding box (we can assimilate this point to the center of gravity of the molecule). On a sequence of small size or an overall visualization of an unspecified molecule, no problem of ergonomics arises. But, when, on a sequence of huge size, we visualize part of the molecule which is far away from the center of rotation, the movements undergo an arm of lever such as it becomes very difficult to control the least small movement.
Biologists like to work simultaneously with several sequences which requires placing these sequences in the same frame of reference (but in distinct windows) and synchronizing the movements displayed on the screen (i.e. showing the different sequences moving in the same way at the same time).
Biologists who analyze the geometrical structures of DNA often work rather on the corresponding cards of a fold. These cards have two dimensions provide partial information on the 3D fold of DNA. This is why it is necessary to integrate a fold map generator [4] within ADN_Viewer. These data will be used as if they were training corpus in systems of pattern recognition applied to the genome.
In certain sequence files the position of genes are within the sequence but our goal is to be able to graphically visualize genes on a molecule.
In the case of a standard graphical workstation, the user interface can be included in the graphical window of the application itself and often this is a good solution for the ease of use. But in the case of a platform of virtual reality, for example the HoloBench (cf. Figure 15) which is a semi-immersion environment, integrating a small 2d menu in the stereoscopic scene is not possible. This problem is even more critical in full-immersion environments (cf. Figure 15) such as the CAVE (Cave Automatic Virtual Environment)
Figure 15: HoloBench© and CAVE© plate-forms
The solution to this problem is generally to create a stereoscopic 3d menu, however, this solution greatly diminishes the full interaction potential of a stereoscopic scene, especially if the application environment allows a full-immersion
Users need to interact with a scene naturally, a goal which can be achieved if the interface is dissociated from the scene display. For example, one technical solution is the multi-display which locates the control of the interface at a workstation while displaying the scene on the screens of another workstation or platform.
The interface can then more easily evolve by the incorporation of new multi-modal functions such as menu access through vocal commands [3] in order, for example, to change levels of representation, points of view, data extraction parameters, etc.
Immersion-based navigation [1] makes it possible to eliminate all the classical input devices (3d mouse, Joystick, Keyboard, etc.) used for navigation within a virtual scene. For instance, with a tracking system using stereoscopic glasses, it is enough to perform head movements in order to navigate in the virtual scene (cf. Figure 16).
Figure 16: Shutter-Glass© + Headphone© + Tracker© (CrystalEyes, Inc.)
Gesture interactions [10] can be very useful when the user wants to manipulate, to describe or point to a molecule or to a part of a molecule. It is much more ergonomic to consider the molecule as being a single object rather than representing the problem of exploring its structure as being a navigational one.
A data glove would be perfectly appropriate for this type of design. One could also use a device with tactile feedback, as shows it the Figure 17.
Figure 17: CyberGrasp© with feedback
(Virtual Technologies, Inc.)
This paper described a software framework for 3d modeling and stereoscopic visualization of scientific information dealing with genomic data. This work is based on close cooperation between biologists and computer scientists because, as we've shown in this paper, its through our work together that we have designed a first version of LIMSI's ADN_Viewer and are starting to augment its functionalities. Biologists on the Orsay campus are currently using the Viewer to analyze the 3d structures and folds of DNA taken from different organisms. In the very near future, the tool will become a part of LIMSI's new virtual reality platform and biologists will be able to access it from their standard graphical workstation.
[1] P. Bourdot and M. Dromigny and L. Arnal", "Virtual Navigation Fully controlled by Head Tracking", in proc. ofinternational scientific symposium on Virtual Reality, June 1999, Laval, France.
[2] E.S. Shpigelman and E.N. Trifonov and A. Bolshoy, ?CURVATURE~: software for the analysis of curved DNA", CABIOS journal, Oxford University Press, 1993, pp. 435-440.
[3] P. Bourdot and M. Krus and R. Gherbi, ?Cooperation between Reactive 3D Objects & a Multimodal X Window Kernel for CAD?, in Multimodal Human-Computer Communication, Lecture Notes in Artificial Intelligence 1374, Subseries of Lecture Notes in Computer Science, H. Bunt & RJ. Beun & T. Borghuis Eds. Springer-Verlag, 1998, pp 188-212.
[4] L. Sicaud and R. Simermann and R. Gherbi, "Algorithmes de segmentation et de calcul de courbures~: application au génome",
Technical Report, LIMSI-CNRS, to appear.
[5] P. Pasero, "L'organisation du chromosome eucaryote et ses implications dans le contrôle de l'activité génique et la transmission des patrons d'expression", PhD thesis in cellular Biology and Microbiology, University of Aix-Marseille II, Luminy", 1993, France.
[6] M. Roux-Rouquié and M. Marilley, "Modeling of DNA local parameters predicts encrypted architectural motifs in Xenopus laevis ribosomal gene promoter", 2000, Nucleic acids research.
[7] M. Marilley and P. Pasero, "Common DNA structural features exhibited by eukaryotic ribosomal gene promoters." Nucleic Acids Res. 1996 Jun 15;24(12):2204-11
[8] R. Sayle, "RasMol : software tool for protein visualization", http:://www.chemie.fu-berlin.de/chemnet/use/rasmol.html, 1995.
[9] Silicon Graphics, "OpenGL Reference Manual",
http://shiva.missouri.edu:88/SGI\_Developer/OpenGL\_RM/6300.toc\#X",Silicon Graphics publication.
[10] A. Braffort and R. Gherbi and S. Gibet and J. Richardson and D. Teil (Eds.), "Gesture-Based Communication in Human-Computer Interaction", Lecture Notes in Artificial Intelligence, number 1739, Springer, 1999.
[11] JM. Lackie and JAT Dow, ?The dictionary of cell and molecular biology?, Academic Press,London, 1999.
[12] J-P. Boden and J-N. Cloarec and all, "Biologie Terminale D", collection Tavernier, Bordas editor, 1989.
[13] P. Fuchs, "Les interfaces de la Réalité Virtuelle", AJIIMD", 1996.
[14] H. Rheingold, "Virtual Reality", Touchstone Books, 1992.
About the authors
Rachid Gherbi is an associated professor at LIMSI (Engineering Science laboratory of National Center for Scientific Research) and Computer Science Department of Paris-Sud University. His main interests are in the fields of computer vision and 3d modeling, virtual and augmented reality, and pattern recognition focused on applications in human-computer interaction and bioinformatics.
Joan Hérisson is a master student in computer science at Paris-Sud University. He will start a PhD work, at LIMSI, on virtual reality and, more particularly, the management of complex and rich graphical data for bioinformatic applications in genomics.