1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer...
-
Upload
jonathan-charles -
Category
Documents
-
view
216 -
download
3
Transcript of 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer...
![Page 1: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/1.jpg)
1Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Chapter 1 Overview of Computer Graphics
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 understand the roles of Java language, Java 2D and Java 3D
packages To identify computer graphics related fields
![Page 2: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/2.jpg)
2Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Computer Graphics
Modeling: Creating a virtual world.
Rendering: Generating a visual image of a scene.
Rendering
Virtual world model Image of a scene
![Page 3: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/3.jpg)
3Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Applications
User interface Computer Aided Design Medical systems Video games Movies …
![Page 4: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/4.jpg)
4Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Graphics Programming Environment
Hardware (direct register/video buffer programming)
OS (WIN32, X, Mac OS)
Graphics Standard (GKS, PHIGS, OpenGL)
Platform Independent (Java 3D)
![Page 5: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/5.jpg)
5Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Hardware Level
Determination of the pixels on a circle. From the current pixel, the next pixel will be either to the “east” or to the “southeast”.
E
SE
Program the graphics hardware directly Typically written in low-level languages Manipulate the hardware registers and video buffers Highly machine-dependent Example: MS-DOS graphics program
![Page 6: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/6.jpg)
6Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Operating System Level Program through OS graphics support Do not directly manipulate graphics hardware Portable on the same platform Example: WIN32
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);
![Page 7: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/7.jpg)
7Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
GKS and PHIGSGraphics Kernel System
Programmer’s Hierarchical Interactive Graphics System
International standard (ISO 7942 1985) 2D graphics Common language binding: FORTRAN Example: A FORTRAN GKS program to draw a circle
ISO 9592 1991 3D graphics
![Page 8: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/8.jpg)
8Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
OpenGL
Popular 2D/3D graphics API over 200 functions Common language binding: C Example: An OpenGL program to draw a circle
GLU
GLUT
GL
![Page 9: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/9.jpg)
9Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Java
Java 3D
OpenGL
Java APIs
Display driver
Graphics card
Display
Graphics application
Java VM
OS
Java 3D based graphics systems
![Page 10: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/10.jpg)
10Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Java Programming Languages
Simple Object Oriented (OOP) Write once, run anywhere Multithreaded
Java graphics: AWT / Swing
AWT Example
![Page 11: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/11.jpg)
11Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Java 2D
Standard package of Java 2 platform Improvements over AWT Graphics2D class
![Page 12: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/12.jpg)
12Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Java 3D High-level API Scene graph Modeler/Renderer Java Integration
TG
Rotator
Appearance
Texture2D
Background
Bounds Sphere
Geometry
Texture coordinates
TG
Appearance Text3D
L
BG
L
S
Material
View
Branch
![Page 13: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/13.jpg)
13Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Other Fields Related to Graphics
Image processing Computer vision Mathematics
– Analytic geometry– Linear algebra
![Page 14: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/14.jpg)
14Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
![Page 15: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/15.jpg)
15Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
Graphics System:Components and Functions
Modeler Renderer Hardware device Virtual World View
Geometry Transformation Illumination Interaction Animation
![Page 16: 1 Chapter 1 Overview of Computer Graphics To understand the basic objectives and scope of computer graphics To identify computer graphics applications.](https://reader036.fdocuments.net/reader036/viewer/2022083008/56649e9c5503460f94b9d2d4/html5/thumbnails/16.jpg)
16Zhang & Liang, Computer Graphics Using Java 2D and 3D (c) 2007 Pearson Education, Inc. All rights reserved.
JOGL
OpenGL Java language binding No OOP modeler
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.