Вы находитесь на странице: 1из 16

IT- 601: Computer Graphics

Lecture-00

Jesmin Akhter
Lecturer,IIT
Jahangirnagar University,
Savar, Dhaka,Bangladesh

07/28/16

Course Overview

Tutorial 01
Introduction(L00)
Scan Conversion(L01+L02+L03)

Two Dimnnsional Traformations(L04+L05+L06).


--------------------------------------------------------------- Tutorial 02

Two Dimnnsional Viewing and Clipping (L07+L08+L09)

Three Dimnnsional Traformations(L10+L11+L12)


Mathematics of Projection(L13+L14+L15)
---------------------------------------------------------------- Tutorial 03
Geometric Representation(L16+L17)
Hidden Surfaces(L18+L19))
Color Model(L20)
-------------------------------------------------------------- Mathematics for two dimensional Computer Graphics(L21)
Image Representation(L22)

2.5
Sets
2 Sets

1.5
Sets
1 Set

Course Policy
No late homework is acceptable.
Cheating directly affects the reputation
of Department and the University and
lowers the morale of other students.
Cheating in homework and exam will not
be tolerated.
An automatic grade of 0 will be assigned
for any student caught cheating.
Presenting another persons work as
your own constitutes cheating.

Primary Focus
Develop thinking ability.
problem solving skills.
formal thinking.

Goals
Be very familiar with a collection of
Computer Graphics algorithms.
Be intimately familiar with mathematics for
Computer Graphics
Be able to apply techniques in practical
problems.

Intro 5

Textbook & References


Schaums ouTlines series, THEORY AND
PROBLEM OF COMPUTER GRAPHICS ,Second
Edition,McGraw Hill.

How to Succeed in this


Course
Start early on all assignments. DON'T
procrastinate.
Complete all reading before class.
Participate in class.
Think in class.
Review after each class.
Be formal and precise on all problem
sets and in-class exams.

IT- 601: Computer Graphics


Chapter 3
Scan Conversion
Lecture-01
Jesmin Akhter
Lecturer,IIT
Jahangirnagar University,
Savar, Dhaka,Bangladesh

07/28/16

Scan Conversion
Graphics System convert
each primitive(points ,lines, circles,
ellipses etc.) from its geometric
definition into a set of pixels that make
up the picture in the image space.
This Conversion task is referred to as
Scan Conversion.

Scan Converting a point


(x,y) where x and y are real numbers
within an image area.
Need to be scan converted at pixel
location
( x, y)

Scan Converting a line


Line drawing is accomplished by calculating
intermediate positions along the line path
between two specified end points.
It is defined by the line equation y=mx+b, m
is slope and b the y intercept of the line.
Two end points are p1(x1,y1) and p2(x2,y2)
Line equation describes the coordinates of all
the points that lie between the two end points.
y
y=mx+b

p2(x2,y2)

p1(x1,y1)

Direct use of the Line Equation


Scan convert p1 and p2 to pixel coordinates

(x1 , y1 ) and (x 2 , y2 ) then set m (y2 - y1 )/(x 2 - x1 )


and b y1 mx1 .

If | m | 1, then for every integer value of x between


and excluding
calculate the corresponding
x1 andx 2,
value of y using the equation and scan convert (x,y).
If | m | 1, then for every integer value of x between
and excluding
calculate the corresponding

y1andy 2,
value of x using
the equation and scan convert (x,y).

DDA Algorithm

The digital differential analyzer (DDA) is an incremental


scan-conversion method.
Characterized by Performing calculations at each step using
results from the preceding step.
At each step i calculate (xi,yi) point on the line.
Next point (xi+1,yi+1)

y / x m, wherey yi 1 yi andx xi 1 xi , We have

yi 1 yi mx
or
xi 1 xi y / m

DDA Algorithm
Desired
Line

(xi+1,
Round(yj+m))
(xi, yj)

(xi+1, yj+m)

(xi, Round(yj))
y2

y1

x1

x2

DDA Algorithm
DDA (Digital Differential Analyzer)
Assume 0 m 1 .
yi 1 mxi 1 B
m( xi x) B
yi mx
yi 1 yi m

x 1

(xi,Round(yi+m))

Desired Line

(xi,yi)

(xi,Round(yi))

(xi,yi +m)

void Line(int x0, int y0, int x1, int y1, int value) {
double y = y0;
double m = (y1 y0) / (x1 x0);
// 0 <= m <= 1
for (int x = x0; x <= x1; x++) {
WritePixel(x, Round(y), value);
y += m;
}
Require to eliminate floating point operations & variables
}

DDA ALGORITHM

DDA algorithm is faster than the direct use of the line


equation since it calculates points on the line without any
floating point multiplication
Cumulative error occurs.

Вам также может понравиться