Download presentation
Presentation is loading. Please wait.
Published byPhoebe Chambers Modified over 9 years ago
1
Overview of Computer Graphics Chapter 1
2
Bird’s Eye View Overview of Computer Graphics –Basic concept of computer graphics, system, programming platforms, and standard 2D Graphics: Basics 2D Graphics: Rendering Details 2D Graphics: Advanced topics 2
3
Objectives To understand the basic objectives and scope of computer graphics To identify computer graphics applications To understand the basic structures of 2D and 3D graphics systems To understand evolution of graphics programming environments To identify common graphics APIs To understand the roles of Java language, Java 2D and Java 3D packages To identify computer graphics related fields 3
4
Computer Graphics 4 Modeling: Creating a virtual world. Rendering: Generating a visual image of a scene.
5
Graphics System: Components and Functions Modeler Renderer Hardware device Virtual World View Geometry Transformation Illumination Interaction Animation 5
6
Applications User interface Computer Aided Design Medical systems Video games Movies … 6
7
Graphics Programming Environment 7 Hardware (direct register/video buffer programming) OS (WIN32, X, Mac OS) Graphics Standard (GKS, PHIGS, OpenGL) Platform Independent (Java 3D)
8
Hardware Level 8 Determination of the pixels on a circle. From the current pixel, the next pixel will be either to the “east” or to the “southeast”. F Program the graphics hardware directly F Typically written in low-level languages F Manipulate the hardware registers and video buffers F Highly machine-dependent F Example: MS-DOS graphics program Source
9
Operating System Level 9 F Program through OS graphics support F Do not directly manipulate graphics hardware F Portable on the same platform F Example: WIN32 SourceRun hdc = BeginPaint (hwnd, &ps); GetClientRect (hwnd, &rc); cx = (rc.left + rc.right)/2; cy = (rc.top + rc.bottom)/2; if (rc.bottom - rc.top < rc.right - rc.left) r = (rc.bottom - rc.top) / 2 - 20; else r = (rc.right - rc.left) / 2 - 20; Ellipse(hdc, cx-r, cy-r, cx+r, cy+r); EndPaint (hwnd, &ps);
10
GKS and PHIGS 10 Graphics Kernel System Programmer’s Hierarchical Interactive Graphics System F International standard (ISO 7942 1985) F 2D graphics F Common language binding: FORTRAN F Example: A FORTRAN GKS program to draw a circle F ISO 9592 1991 F 3D graphics Source
11
OpenGL 11 Source F Popular 2D/3D graphics API F over 200 functions F Common language binding: C F Example: An OpenGL program to draw a circle GLU GLUT GL Run
12
OpenGL 12 Source 3D Example: A spinning sphere Run
13
Java 13 Java 3D OpenGL Java APIs Display driver Graphics card Display Graphics application Java VM OS Java 3D based graphics systems
14
Java Programming Languages Simple Object Oriented (OOP) Write once, run anywhere Multithreaded 14 Java graphics: AWT / Swing Source
15
JOGL OpenGL Java language binding No OOP modeler 15 Source 1.Create a GLCanvas or GLJPanel object through the GLDrawableFactory class. 2.Add a GLEvent listener to the canvas object. 3.Implement the listener by implementing the four methods: init, display, reshape, and displayChanged.
16
Steps Required to Set Up GUI Event Handling Several coding steps are required for an application to respond to events –Create a class for the event handler –Implement an appropriate event-listener interface –Register the event handler 16
17
Events and Listeners 17 Component A component object may generate an event Listener A corresponding listener object is designed to respond to the event Event When the event occurs, the component calls the appropriate method of the listener, passing an object that describes the event
18
Java 2D Standard package of Java 2 platform Improvements over AWT Graphics2D class 18 Source
19
Java 3D High-level API Scene graph Modeler/Renderer Java Integration 19 Source
20
Other Fields Related to Graphics Image processing Computer vision Mathematics –Analytic geometry –Linear algebra 20
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.