by: sean cain

22
Rendering Differences Between Three-Dimensional Geometric Objects and Two-Dimensional Geometric Objects Using a DNA Rendering Program Written with the OpenGL Graphics Library By: Sean Cain

Upload: eris

Post on 18-Mar-2016

45 views

Category:

Documents


0 download

DESCRIPTION

Rendering Differences Between Three-Dimensional Geometric Objects and Two-Dimensional Geometric Objects Using a DNA Rendering Program Written with the OpenGL Graphics Library. By: Sean Cain. Goals. Create a program able to render B-DNA in three dimensions accurately - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: By: Sean Cain

Rendering Differences Between Three-Dimensional Geometric Objects

and Two-Dimensional GeometricObjects Using a DNA Rendering

Program Written with the OpenGL Graphics Library

By: Sean Cain

Page 2: By: Sean Cain

Goals Create a program able to render B-DNA in

three dimensions accurately

Determine differences between rendering three-dimensional and two-dimensional geometric objects (lines vs cylinders)

Page 3: By: Sean Cain

Background DNA

Forms a double helical structure Purines: Adenine (A) and Guanine (G) Pyrimidines: Cytosine (C) and Thymine (T)

Base-pairs Adenine only pairs with Thymine Guanine only pairs with Cytosine Adjacent pairs connected with a sugar

phosphate backbone

Page 4: By: Sean Cain

Parameters

Page 5: By: Sean Cain

DNA Rendering Program Tool to render B-DNA in three dimensions

Written in C# with OpenGL graphics library Input

DNA base abbreviations (A, C, G, or T) Output

A double helical strand of DNA based on input

Page 6: By: Sean Cain

Program Issues Different sources for backbone and bases

The coordinates don't match up Bases

Plotted according to the coordinates in [4] Not all base-pair parameters, step

parameters, or local helical parameters were taken into account outside of the provided coordinates

Page 7: By: Sean Cain

Issues cont. Backbone

Plotted according to the coordinates in [5] Translations were performed to line up the

backbone with the bases Rotations were not performed

A source with proper angles between adjacent backbones could not be found

Hydrogen atoms not rendered No exact coordinates Bond distance was the only measurement

obtained

Page 8: By: Sean Cain

Issues cont.

Page 9: By: Sean Cain

Two-dimensional Geometric Objects

Lines – bonds between atomsglBegin(GL_LINES);glVertex(x, y, z);glVertex(x, y, z);glEnd();

No extra operations are required to get proper placement and alignment of lines

Page 10: By: Sean Cain

Three-dimensional Geometric Objects

Require a quadric object in OpenGL Quadric objects are defined in [5] by the

following quadratic equationa1x

2 + a2y2 + a3z

2 + a4xy + a5yz + a6zx + a7x + a8y + a9z + a10 = 0

Page 11: By: Sean Cain

Three-dimensional Geometric Objects cont.

Cylinder – bonds between atomsgluCylinder( quadric, base, top, height, slices, stacks);

Cylinders aren't drawn with endpoints as lines are

A function renderCylinder() needed to be created to obtain proper alignment of each cylinder

Page 12: By: Sean Cain

Three-dimensional Geometric Objects cont.

Sphere – atomsgluSphere(quadric, radius, slices, stacks);

Drawn at the origin Translations required to get proper placement

Page 13: By: Sean Cain

Experimental Setup DNA Rendering Program was modified

Added a timer Strands were input before execution to avoid

user delay Strands were rendered with lines or cylinders

and with or without spheres Each strand was rotated 360° around the z-axis

49 different times The program rotated the strand 1° for every

call of the OnPaint() function independently with no user input

Page 14: By: Sean Cain

Results Average timing differences between lines

and cylinders with and without spheres are represented in the following graphs

Page 15: By: Sean Cain
Page 16: By: Sean Cain
Page 17: By: Sean Cain
Page 18: By: Sean Cain
Page 19: By: Sean Cain
Page 20: By: Sean Cain

Future Work Properly align sugar phosphate backbones Include base-pair, step, and local helical

parameters Include different ways for user to input data

Mouse translations and rotations Collect more data with different operations

– Translations

Page 21: By: Sean Cain

Bibliography1.) Neon Helium Productions". May 06 2010 <http://nehe.gamedev.net/>

2.) CodeGuru". May 06 2010

<http://www.codeguru.com/forum/archive/index.php/t-228231.html>

3.) Olson, Wilma et. al.. "A Standard Reference Frame for the Description of Nucleic Acid Base-pair Geometry". Journal of Molecular Biology 2001: 229-237

4.) Parkinson, G., Vojtechovsky, J., Clowney, L., Brunger, A.T. and Berman H. M. "New parameters for the refinement of nucleic acid-containing structures". Acta. Cryst. D52 1996: 57-64

5.) May 06 2010 <http://www.movesinstitute.org/~mcdowell/mv4202/notes/lect11.pdf>

6.) May 06 2010 <http://www.chemicalgraphics.com/paul/images/DNA/BallAndStick.jpg>

Page 22: By: Sean Cain

Questions?