slike bài giảng đồ hoạ và hiện thực ảo - lê tấn hùng chương 7 nguyên lý về 3d và phép chiếu-projection - Pdf 23

Khoa CNTT – DHBK Hanoi

8682595
1
1
Bài 5
Nguyên lý về 3D và
phép chiếu-Projection
Lê Tấn Hùng
0913030731

2
Nguyên lý về 3D
z Ðồ họa3 chiều - 3D computer graphics bao gồmviệcbổ
xung kích thướcvề chiềusâucủa đốitượng, cho phép ta
biểudiễn chúng trong thế giớithựcmột cách chính xác
và sinh động hơn.
z Tuy nhiên các thiếtbị truy xuấthiệntại đềulà2 chiều, Do
vậyviệcbiểudiễn đượcthực thi thông qua phép tô chát
– render để gây ảo giác illusion
vềđộsâu
z 3D Graphics là việcchyểnthế giớitự nhiên dướidạng
cácmôhìnhbiểudiễntrêncácthiếtbị hiểnthị thông qua
kỹ thuật tô chát (rendering).
3
Ðặc điểmcủakỹ thuật đồ hoạ 3D
Có các đốitượng phức tapj hơncácđốitượng
trong không gian 2D
– Bao bởicácmặtphẳng hay các bề mặt
– Có các thành phần trong và ngoài
z Các phép biến đổihìnhhọcphứctạp

same but the location of the
eye moves.
z Human eyes are about 3
inches apart, therefore a good
value for D is 1.5
Khoa CNTT – DHBK Hanoi

8682595
2
7
Stereo Projections
eye=(0,-1,2.5) eye=(0.5,-1,2.5)
8
3D GRAPHICS PIPELINE
WORLD SCENE/OBJECT
3D MODELLING
3D CLIPPING
PROJECTION
RASTERIZATION
2D PIXELMAP DISPLAY
Modelling coordinates:
- world coordinate system,
- object coordinate system
Camera coordinates
Screen/Window coordinates
Device coordinates
VIEWING
9
3D - Modelling
3D Modelling

8682595
3
13
Phộp chiu
nh nghav phộp chiu
Mtcỏchtng quỏt, phộp chiu l phộp chuyn inhng
imca itng trong h thng ta nchiu thnh
nhng im trong h thng ta cú s chiunh hnn.
nh nghav hỡnh chiu
nh ca itng trờn mtphng chiu c hỡnh thnh t

phộp chiubicỏcng thng giltiachiu (projector)
xut phỏt t mt imgiltõmchiu (center of
projection) i qua cỏc imca itng giao vimt
chiu (projection plan).
14
Cỏc bc xõy dng hỡnh chiu
z 1. itng trong khụng gian 3Dvita thc cct theo mt khụng
gian xỏc nh gil view volume.
z 2. view volume cchiulờnmtphng chiu. Dintớch choỏnbiview
volume trờn mtphng chiu ú s cho chỳng ta khung nhỡn.
z 3. l vic ỏnh x khung nhỡnvotrongmtcng nhỡnbtk cho trctrờn
mnhỡnh hinth hỡnh nh
Cắt theo view
volum
Phép chiếu trên
mặt phẳng chiếu
Phép biến đổi vo
cổng nhìn của
tọa độ thiết bị

C

B

A

centre of
projection
at infinity
17
Phộp chiu trc giao (Orthographic
projection) l phộp chiu song song v
tia chiu vuụng gúc vi mt phng
chiu thng dựng mt phng z=0
ng vi mi mt phng chiu ta cú 1
ma trn chiu tng ng












=
1000









=
1000
0100
0010
0000
][
x
T
18
Taxonomy of Projections
z Orthographic Projections
Multiview Orthographic
Khoa CNTT – DHBK Hanoi

8682595
4
19
Phép chiếutrụclượng (Axonometric)
z Phép chiếutrụclượng là phép chiếumàhìnhchiếuthuđược
z Phép chiếu Trimetric
z Là phép chiếu hình thành từ việc quay tự do đốitượng trên mộttrục
hay tấtcả các trụccủahệ tọa độ và chiếu đốitượng đóbằng phép

10
10
10
][
1100
1010
1001
][
''
''
''
zz
yy
xx
yx
yx
yx
TU
20
Trimetric
[ U ] :là ma trận vector đơnvị
của các trụcx, y, zbấtbiến
[ T ] : là ma trậnchiếutổng hợp
tương ứng
SF- tỉ lệ co theo các trụclà:
2
x
2
xx
'y'xf +=






















=
1000
0000
0010
0001
1000
00
00
0001

00cos0
00sinsincos
][
ϕφφ
ϕ
ϕφφ
T
Là phép chiếu Trimetric với 2 hệ
số tỉ lệ co bằng nhau, giá trị thứ 3
còn lạilàtuỳ ý.
•Quay đốitượng quanh trụcytheo
một góc φ,
•Quay quanh x theo một góc ψ
•Chiếutrênmặtphẳng z = 0 vớitâm
chiếutại điểmvôhạn
22
ϕ
2222
cos)(
''
=+=
yyy
yxf
ϕφφ
222222
sincossin)(
''
+=+=
zzz
yxf

đốitượng trong các hệ
soạnthảo đồ họa
ϕ
ϕ
φ
2
2
2
1 sin
sin
sin

=
ϕ
ϕ
φ
2
2
2
1
21
sin
sin
sin


=
3
1
±=

8165.03/2cos
2
===
ϕ
f
24
.
Khoa CNTT – DHBK Hanoi

8682595
5
25
Taxonomy of Projections
z Oblique Projections
26
Parallel Projections
axonometric
orthographic
oblique
isometric
27
Taxonomy of Projections
z Oblique Projections
– Combine the properties of Orthographic and
Axonometric
– Preserves the object face; and
– Gives a better sense of the 3D nature.
28
Phép chiếuxiên-Oblique
z Phép chiếu Cavalier

f
=
=
cos a












−−
=
1000
00sincos
0010
0001
][
αα
ff
T
30
– f = 0, β = 90
0
phép

)
1
(cos
=
+
=
+
=


f
f
β
32
Oblique Projections
D/2
D
D
D
Cavalier Project
Cabinet Projection
33
Phép chiếuphốicảnh
Perspective Projection
z Phép chiếu phốicảnh là phép chiếumàcáctiachiếu không song
song với nhau mà xuấtpháttừ 1 điểmgọilàtâmchiếu.Phép chiếu
phốicảnh tạorahiệu ứng về luậtxagầntạocảmgiácvềđộsâu của
đốitượng trong thế giớithật mà phép chiếu song song không lộttả
được.
z Các đoạnthẳng song song của mô hình 3D sau phép chiếuhộitụ tại1

2-point perspective
1-point perspective
Khoa CNTT – DHBK Hanoi

8682595
7
37
Phép chiếuphốicảnh
38
Phép biến đổiphốicảnh
z Phépchiếuphốica?nhcủa
các điểmtrênđốitượng lên
trên mặtphẳng 2D thu được
từ phépchiếutrựcgiaovà
phépbiến đổiphốicảnh












=
1000
100

Perspective Projections
z Projecting a 3D Point
z We use similar triangles to project the point onto the plane
in the line of the eye.
– x’/x = N/-z (z in the negative direction)
– y’/y = N/-z
– Once projected onto a 2D plane the z coordinate is not needed.
near plane
Nz
(x,y,z)
(x’,y’)
41
Perspective Projections
Consider a perspective projection with the viewpoint at the origin
and a viewing direction oriented along the positive -z axis and the
view-plane located at z = -d
y
y
p
dz
y
y
d
y
z
y
P
P
=⇒=
-z





























=


y
x
P
P
P
divide by homogenous ordinate to
map back to 3D space
a similar construction for x
p

42
Perspective Projection Details



















d
dz
y
dz
x
z
y
x
P
P
P
1
1


















z
y
x
Flip z to transform to a left handed co-ordinate
system ⇒ increasing z values mean increasing
distance from the viewer.
PROJECTION
matrix
perspective
division
Khoa CNTT – DHBK Hanoi

8682595
8
43
Phép chiếuphốicảnh 1 tâm
Giả sử khi mặtphẳng được đặttại z = 0 và tâm phép chiếu
nằmtrêntrục z , cách trụcz mộtkhoảng zc = -1/r.
Nếu đốitượng cũng nằmtrênmặtphẳng z = 0 thì đốitượng
sẽ cho hình ảnh thật.
Phương trình biến đổi:
[ x y z 1 ][ Tr ] = [ x y z rz+1 ]
ma trậnbiến đổimột điểmphốicảnh [ Tr ] có dạng:
















=




























rzyx
r
zyx
[]






++
= 10
11
1'''
rz
y
rz
x
zyx
45
Phép chiếuphốicảnh 2 tâm












qypxzyx
q
p
zyx
Y’
VP ≡ y = 10
D’ H’
C’,G’
VP
X=10
A’, E’B’, F’x’
VP (y=10)
D’, H’C’, G’
VP( x = 10)
A’, E’B’, F’
46
z [ Tc ] = [ Tpq ][ Tz ]
z
2 tâm chiếu:
z [ -1/p 0 0 1 ]
z [ 0 -1/q 0 1 ]
z VP (Vanishing point) tương ứng trên 2 trụcxvàylà


=
























=
1000
0000
010
































1000
100
010
001
1 +++=












rzqypxzyx
r
q
p
zyx
48
[]







G'
F'
E'
Khoa CNTT – DHBK Hanoi

8682595
9
49
z 3 tâm chiếu:
– trên trụcxtại điểm [ -1/p 0 0 1 ],
– ytại điểm [ 0 -1/q 0 1 ]
– ztại điểm [ 0 0 -1/r 1 ].
z VP sẽ tương ứng vớicácgiátrị :
– [ 1/p 0 0 1 ], [ 0 1/q 0 1 ] [ 0 0 1/r 1 ]
z [ Tc ] = [ Tpqr ][ Tz ]












=



0001
.
1000
100
010
001
r
q
p
r
q
p
50
Đặc tính của phép chiếu phối cảnh
1. Parallel lines in 3D will
meet at a vanishing point
2. Lines that pass behind the
eye of the camera cause a
catastropic “passage
through infinity”.
3. Perspective projections
usually produce
geometrically realistic
pictures.
51
Taxonomy of Projections
z Perspective
– Three Point
M.C. Escher: Ascending and Descending
52

Viewing in OpenGL
z OpenGL has multiple matrix stacks - transformation
functions right-multiply the top of the stack
z Two most important stacks: GL_MODELVIEW and
GL_PROJECTION
z Points get multiplied by the modelview matrix first, and
then the projection matrix
z GL_MODELVIEW: Object->Camera
z GL_PROJECTION: Camera->Screen
z glViewport(0,0,w,h): Screen->Device
Khoa CNTT – DHBK Hanoi

8682595
10
55
OpenGL Example
void SetUpViewing()
{
// The viewport isn’t a matrix, it’s just state
glViewport( 0, 0, window_width, window_height );
// Set up camera->screen transformation first
glMatrixMode( GL_PROJECTION );
glLoadIdentity();
gluPerspective( 60, 1, 1, 1000 ); // fov, aspect, near, far
// Set up the model->camera transformation
glMatrixMode( GL_MODELVIEW );
gluLookAt( 3, 3, 2, // eye point
0, 0, 0, // look at point
0, 0, 1 ); // up vector
glRotatef( theta, 0, 0, 1 ); // rotate the model


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status