Top Banner
ÑOÀ HOÏA RASTER ÑOÀ HOÏA RASTER CAÙC THUAÄT TOAÙN CAÙC THUAÄT TOAÙN VEÕ ÑÖÔØNG THAÚNG VEÕ ÑÖÔØNG THAÚNG Giaûng vieân : Buøi Tieán Leân
22

chuong_1a [Compatibility Mode].pdf

Dec 22, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: chuong_1a [Compatibility Mode].pdf

ÑOÀ HOÏA RASTERÑOÀ HOÏA RASTER

CAÙC THUAÄT TOAÙNCAÙC THUAÄT TOAÙNVEÕ ÑÖÔØNG THAÚNGVEÕ ÑÖÔØNG THAÚNG

Giaûng vieân : Buøi Tieán Leân

Page 2: chuong_1a [Compatibility Mode].pdf

Baøi toaùn veõ ñöôøng thaúngBaøi toaùn veõ ñöôøng thaúngInput

(X1, Y1) (X2, Y2)Output

{(x1, y1) (x2, y2) … (xn, yn)} laø nhöõng ñieåm saùng “naèm treân” ñöôøng thaúng

Trang Trang 22

(X1, Y1)

(X2, Y2)

Page 3: chuong_1a [Compatibility Mode].pdf

Moät soá coâng thöùc cô baûn cuûa ñöôøng thaúngMoät soá coâng thöùc cô baûn cuûa ñöôøng thaúng

mb

my

x

bmxy

−=

+=

(X2, Y

2)

Trang Trang 33

11

12

12

mXYbxy

XXYY

m

mm

−=

∆=

−=

(X1, Y

1)

Page 4: chuong_1a [Compatibility Mode].pdf

Phaân loaïi ñöôøng thaúngPhaân loaïi ñöôøng thaúng

Taêng chaäm Taêng nhanh

Trang Trang 44

Giaûm chaäm Giaûm nhanh

Page 5: chuong_1a [Compatibility Mode].pdf

Giaûi quyeátGiaûi quyeátThuaät toaùn DDAThuaät toaùn Bresenham

Trang Trang 55

Page 6: chuong_1a [Compatibility Mode].pdf

Thuaät toaùn DDAThuaät toaùn DDA

Page 7: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 1Tröôøng hôïp 1Ñoaïn thaúng taêng chaäm vaø ñieåm ñaàu ôû beân traùi.Thuaät toaùn

Böôùc 1 Xaùc ñònh ñieåm ñaàu tieânx1 = X1

y1 = Y1

Böôùc 2 Xaùc ñònh nhöõng ñieåm tieáp theo

1

2 3 n…

Trang Trang 77

Böôùc 2 Xaùc ñònh nhöõng ñieåm tieáp theoLaëp xi < X2

xi+1 = xi + 1y = mxi+1 + byi+1 = Round(y)

2 3 n…

Page 8: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 1Tröôøng hôïp 1Caûi tieán tính y

Xeùt hai ñieåm saùng lieân tieáp nhau

i

i+1

(xi, ycuõ)

(xi+1, ymôùi)

Trang Trang 88

Coâng thöùc lieân heä

y ñaàu laø Y1ymôùi = ycuõ + m

Page 9: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 2Tröôøng hôïp 2Ñoaïn thaúng taêng nhanh vaø ñieåm ñaàu ôû beân döôùi.Thuaät toaùn

Böôùc 1 Xaùc ñònh ñieåm ñaàu tieânx1 = X1

y1 = Y1

Böôùc 2 Xaùc ñònh nhöõng ñieåm tieáp theo

Trang Trang 99

Böôùc 2 Xaùc ñònh nhöõng ñieåm tieáp theoLaëp yi < Y2

yi+1 = yi + 1x = yi+1/m – b/mxi+1 = Round(x)

Page 10: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 2Tröôøng hôïp 2Caûi tieán tính x

Xeùt hai ñieåm saùng lieân tieáp nhau

Coâng thöùc lieân heä

i

i+1

(xc, yi)

(xmôùi, yi+1)

Trang Trang 1010

Coâng thöùc lieân heä

x ñaàu laø X1xmôùi = xcuõ + k

12

12

YYXX

k−

−=

Page 11: chuong_1a [Compatibility Mode].pdf

Baøi toaùn môû roängBaøi toaùn môû roängInput

(X1, Y1, C1) (X2, Y2, C2)Output

{(x1, y1, c1) (x2, y2, c2) … (xn, yn, cn)} laø nhöõng ñieåm saùng “naèm treân” ñöôøng thaúng vaø coù maøu khaùc nhau

(X2, Y2, C2)

Trang Trang 1111

(X1, Y1, C1)

(X2, Y2, C2)

Page 12: chuong_1a [Compatibility Mode].pdf

Thuaät toaùn BresenhamThuaät toaùn Bresenham

Page 13: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 1Tröôøng hôïp 1Döï ñoaùn ñieåm saùng thöù i+1

B

Trang Trang 1313

i A

Page 14: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 1Tröôøng hôïp 1Xaây döïng bieán pi

y = m(xi+1) + bd1 = y - yi

d2 = yi + 1 - ypi = ∆x(d1 - d2)

Byi+1

yC

d2

d1

Trang Trang 1414

i A

xi xi+1

yi

Page 15: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 1Tröôøng hôïp 1Khoaûng caùch d1, d2 hay khoaûng caùch h1, h2 ?

B

C

d2

h2

Trang Trang 1515

A

xi+1

C

d1

h1

Page 16: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 1Tröôøng hôïp 1Caùch tính pi

pi = 2∆yxi – 2∆xyi + 2∆xY1 – 2∆yX1 + 2∆y – ∆x

Trang Trang 1616

Page 17: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 1Tröôøng hôïp 1Ñoaïn thaúng taêng chaäm vaø ñieåm ñaàu ôû beân traùi.Thuaät toaùn

Böôùc 1 Xaùc ñònh ñieåm ñaàu tieânx1 = X1

y1 = Y1

Böôùc 2 Xaùc ñònh nhöõng ñieåm tieáp theoLaëp x < X

Trang Trang 1717

Laëp xi < X2

pi = …pi < 0

xi+1 = xi + 1yi+1 = yi

pi >= 0xi+1 = xi + 1yi+1 = yi + 1

Page 18: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 1Tröôøng hôïp 1Caùch tính pi caûi tieán

p1 = 2∆y - ∆xpi < 0 :

pi+1 = pi + 2∆ypi >= 0 :

p = pi + 2∆y - 2∆x

Trang Trang 1818

pi+1 = pi + 2∆y - 2∆x

Page 19: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 2Tröôøng hôïp 2Döï ñoaùn ñieåm saùng thöù i+1

A B

Trang Trang 1919

i

Page 20: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 2Tröôøng hôïp 2

A Byi+1C

d2d1

i2

i1

i

i

x1xd

xxdmb

m1y

x

p bieán döïng Xaây

−+=

−=

−+

=

Trang Trang 2020

i

xi xi+1

yi

x

( )21i

i2

ddyp −∆=

Page 21: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 2Tröôøng hôïp 2Caùch tính pi

p1 = 2∆x - ∆ypi < 0 :

pi+1 = pi + 2∆xpi >= 0 :

p = pi + 2∆x - 2∆y

Trang Trang 2121

pi+1 = pi + 2∆x - 2∆y

Page 22: chuong_1a [Compatibility Mode].pdf

Tröôøng hôïp 2Tröôøng hôïp 2Thuaät toaùnBöôùc 1 Xaùc ñònh ñieåm ñaàu tieân

x1 = X1

y1 = Y1

Böôùc 2 Xaùc ñònh nhöõng ñieåm tieáp theoLaëp xi < X2

Trang Trang 2222

Laëp xi < X2

pi < 0 xi+1 = xi

yi+1 = yi + 1pi >= 0

xi+1 = xi + 1yi+1 = yi + 1