1 / 18

# Chapter 2 - PowerPoint PPT Presentation

Chapter 2 Graphics Programming 24 Jan 20067 Sierpinski Gasket pre-Mandelbrot classic found by W. Sierpinski around World War I. generated by recursivly dividing a triangle into four congruent smaller triangles think of the interior triangles as "holes”

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Chapter 2

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

### Chapter 2

• Graphics Programming

• 24 Jan 20067

• pre-Mandelbrot classic

• found by W. Sierpinski around World War I.

• generated by recursivly dividing a triangle into four congruent smaller triangles

• think of the interior triangles as "holes”

• they occupy more and more of the total area, while the "solid" portion becomes as hopelessly fragile

### Pseudocode

1. Pick a point at random inside the triangle

2.Select one of the three vertices at random

3. Find a point halfway between the initial point and the randomly selected vertex

4. Display this new point by putting some sort of marker, such as a small circle, at its location

5. Replace the initial point with this new point

• moveto(x,y)

• lineto(x,y)

### Problems with Pen-Plotter model

• 3D difficult

• must convert 3d world to 2d projection explicitly

• OpenGL allows us to focus on building 3D world and let computer handle projections

### Display funtion

Check programs online - lectures/chapter1/lab, boat

### Coordinate System

3D COORDINATE SYSTEMS

Y

Y

Z

X

X

LEFT HANDED

RIGHT HANDED

Z

### Coordinate System in OpenGL

• What units are x, y, and z?

• device independent

• world coordinate system

• Before displaying on output device, world coordinates must be converted to device or raster or screen coordinates

### POINT TO REMEMBER

• We are studying computer graphics

• We are not studying OpenGL

• won’t cover all functions in OpenGL

Function Calls

Output

User

Program

Graphics

System

Input/Output

Devices

Data

Input

### API Functions

• Primitive Functions

• Attribute Functions

• Viewing Functions

• Transformation Functions

• Input Functions

• Control Functions

### OpenGL - What is it?

• A graphics rendering library

• API to produce high-quality, color images from geometric and raster primitives

• Window System and Operating System independent

• OpenGL “doesn’t do windows”

### OpenGL

• Most widely adopted graphics standard

• Introduced in 1992

• High visual quality and performance

• Industry standard

• Stable

• Reliable and portable

• Evolving

• Scalable.

• Easy to use.

• Well-documented.

### Related APIs

• GLU (OpenGL Utility Library)

• guaranteed to be available

• tesselators

• NURBs, etc.

• some surprisingly common operations, such as projection transformations (such as gluPerspective)

### Related APIs

• GLX or WGL

• bridge between window system and OpenGL

• GLUT

• portable bridge between window system and OpenGL

• not “standard”, but uniformly popular

### Homework

• Assignment 2 - Program due 01/31/2007

• Display your scene in 3D. Use at least 5 different graphics primitives.

### glOrtho (GLdouble left, GLdouble right, GLdouble, bottom, GLdouble top, GLdouble near, GLdouble far)

• Creates a viewing volume with a box shape.

• Direction of projection is parallel to z axis.

• Viewpoint faces -z axis.

• glOrtho (0.0, (GLdouble) w, 0.0, (GLdouble) h, -500.0, 500.0);