Tải bản đầy đủ (.ppt) (22 trang)

Bài giảng đồ họa máy tính biểu diễn vật thể 3d

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (164.56 KB, 22 trang )

3D Modeling

1


Biểu diễn vật thể 3D








Point
Vector
Line
Ray
Polygon
Spline
Surface

- Điểm
- Vectơ
- Đường thẳng
- Tia
- Đa giác
- Mặt cong

– Quadric surface
– Ruled surface



- Mặt bậc 2
- Mặt qui luật

2


3D Point
Mô tả một vị trí trong không gian
struct
{
double
double
double
} Point3D;

x;
y;
z;

P(x,y,z)

3


3D Vector
Mô tả hướng và độ lớn.
struct
{
double

dx;
double
dy;
double
dz;
} Vector3D;
– Xác định bởi tọa độ dx, dy, dz
– Độ lớn ||V|| = (dx2 + dy2 + dz2) 1/2

V(dx,dy,dz)

Tích vô hướng của 2 vector:
V1 . V2 = dx1dx2 + dy1dy2 + dz1dz2 = ||V1|| ||V2|| cos(V1,V2)

4


3D Segment
Nối 2 điểm trong không gian

P2

struct
{
Point3D P1;
Point3D P2;
} Segment3D;

Biểu diễn dưới dạng tham số:


P
P1

P = P1 + t (P2 – P1), (0 <= t <= 1)

5


3D Segment
Nối 2 điểm trong không gian

P2

struct
{
Point3D P1;
Point3D P2;
} Segment3D;

Biểu diễn dưới dạng tham số:

P
P1

P = P1 + t (P2 – P1), (0 <= t <= 1)

6


3D Ray

struct
{
Point3D P;
Vector3D V;
} Ray3D;

Biểu diễn dưới dạng tham số:
P’ = P + t V , t >=0

V
P’
P

7


3D Line
struct
{
Point3D P;
Vector3D V;
} Line3D;

Biểu diễn dưới dạng tham số:
P’ = P + t V

V
P’
P


8


Plane
struct
{
Vector
double
} Plane;

N;
d;

// Vector pháp tuyến
// Khoảng cách2 đến gốc tọa độ

Phương trình chính tắc của mặt phẳng:
P.N + d = 0
ax + by + cz + d =0

N

9


3D Polygon
Các điểm trên đa giác đồng phẳng
struct
{
Point3D

int
} Plane;

points[MAXPOINTS];
n;

10


Surfaces
Phương trình tham số - parametric equation:
P(u,v) = (x(u,v), y(u,v), z(u,v)) = x(u,v) I + y(u,v) J + z(u,v) K
Phương trình ẩn – implicit equation:
f(x, y, z) = 0

Biểu diễn mặt tròn:
P(u,v) = ( R cos(v) cos(u), R sin(v), R cos(v) sin(u))
Phương trình ẩn :
f(x, y, z) = x2 + y2 + z2 – R2
11


Curve Surfaces
• Ruled Surfaces: Mặt cong tạo bởi di chuyển một đường thẳng
trong không gian theo một kiểu nào đó.
• Surfaces of Revolution: Mặt cong tạo bởi di chuyển một đường
cong theo một trục.
• Quadric Surfaces: Mặt cong bậc hai theo x, y, z.
• Mặt cong được định nghĩa theo hàm số: z = f(x,y)


12


Ruled Surfaces
Định nghĩa:
Bất kì một điểm nào trên mặt cong đều thuộc một đường thẳng
nằm hoàn toàn trên mặt cong.
Cách tạo mặt cong:
• Xây dựng một đường thẳng xác định bởi 2 điểm p0 và p1:
p(v) = (1-v) p0 + v p1

• Do p0 và p1 di chuyển trong không gian, nên chúng di chuyển trên
một đường cong khác: p0 trở thành p0(u) và p1 trở thành p1(u).
• Khi p0 và p1 di chuyển sẽ tạo nên mặt có qui luật được xác định:
p(u,v) = (1-v) p0(u) + v p1(u)

p1

p0

P1(u)

P0(u)

13


Ruled Surfaces
Định nghĩa:
Bất kì một điểm nào trên mặt cong đều thuộc một đường thẳng

nằm hoàn toàn trên mặt cong.
Cách tạo mặt cong:
• Xây dựng một đường thẳng xác định bởi 2 điểm p0 và p1:
p(v) = (1-v) p0 + v p1

• Do p0 và p1 di chuyển trong không gian, nên chúng di chuyển trên
một đường cong khác: p0 trở thành p0(u) và p1 trở thành p1(u).
• Khi p0 và p1 di chuyển sẽ tạo nên mặt có qui luật được xác định:
p(u,v) = (1-v) p0(u) + v p1(u)

p1

p0

p1(u)

p0(u)

14


Ruled Surfaces - Cylinders
Định nghĩa:
Cylinder được tạo bởi đường thẳng L (generator) di chuyển theo
một đường cong p(u) - directrix. Khi L di chuyển, nó luôn song
song với nhau.

p(u)

15



Ruled Surfaces - Cones
Định nghĩa:
Cylinder được tạo bởi đường thẳng di chuyển theo một đường
cong phẳng. Nhưng khi di chuyển nó đi qua một điểm cố định.

p1(u)

p0(u)
16


Ruled Surfaces – Bilinear Patches
Định nghĩa:
Mặt song tuyến tính được tạo bởi đường thẳng di chuyển mà mỗi
đầu của nó di chuyển theo một đường thẳng.
Xét 4 điểm p00, p01, p10, p11:
Xây dựng đường thẳng L qua p00 và p01.
Khi L di chuyển, điểm p00 di chuyển trên đường thẳng qua p00 và
p10, điểm p10 di chuyển trên đường thẳng qua p10 và p11.

p10
p00
p11
p01

17



Surfaces of Revolution
Định nghĩa:
Mặt cong được tạo bởi quay một đường cong quay một trục.

18


Quadric Surfaces
Định nghĩa:
Mặt cong được tạo phương trình bậc 2 theo x, y, z:
Ax2 + By2 + Cz2 + D = 0
• Ellipsoid
• Hyperbolic of one sheet
• Hyperbolic of two sheets
• Elliptic cone
• Elliptic paraboloid
• Hyperbolic paraboloid

19


Quadric Surfaces

• Ellipsoid
• Hyperbolic
• Elliptic cone
• Elliptic paraboloid
• Hyperbolic paraboloid

20



Wire Frame – Mô hình khung lưới
Mô tả hình dạng của đối tượng bằng 2 danh sách:
• Vertex List : Lưu trữ tọa độ các đỉnh
• Edge List
: Kết nối giữa các đỉnh với nhau
Vertex List
4
7

5
6

0
3

1
2

Vertex

x

y

z

0


0

0

0

1

1

0

0

2

1

0

1

3

0

0

1


4
5
6
7

21


Wire Frame – Mô hình khung lưới
Edge List

4
7

5
6

0
3

1
2

Edge

Vertex 1

Vertex 2

0


0

1

1

1

2

2

2

3

3

3

1

4

4

5








22



×