1. Trang chủ
  2. » Công Nghệ Thông Tin

Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)

75 316 2
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 75
Dung lượng 15 MB

Nội dung

Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính (LV thạc sĩ)

Trang 2

ĐẠI HỌC THÁI NGUYÊN

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYÈN THÔNG

MAI THỊ BÍNH

BIEU DIEN MO HINH 3D BANG KY THUAT NURBS TRONG MAY TINH

Chuyên ngành: KHOA HỌC MÁY TÍNH

Mã số: 60 48 01 01

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Trang 3

Tơi xin cam đoan luận văn là công trình nghiên cứu của riêng cá nhân tôi, kết quả của luận văn hoàn toàn là kết qua của tự bản thân tôi tìm hiểu, nghiên

cứu dưới sự hướng dẫn của giáo viên hướng dẫn PGS.7S Dé Năng Tồn

Tơi hoàn toàn chịu trách nhiệm về tính pháp lý quá trình nghiên cứu

khoa học của luận văn này

Thái Nguyên, tháng 4 năm 2016

HỌC VIÊN

Mai Thị Bính

Trang 4

il

LOI CAM ON

Lời đầu tiên, em xin gửi lời biết ơn sâu sắc đến PGS TS Đỗ Năng

Toàn người đã tận tình hướng dẫn, chỉ bảo, giúp đỡ em trong suốt quá

trình làm luận văn

Em cũng xin gửi lời cảm ơn đến các thầy cô giáo trường Đại học Công nghệ thông tin và Truyền thông - Đại học Thái Nguyên, các thầy cô Viện Công nghệ thông tin đã truyền đạt những kiến thức và giúp đỡ em trong suốt quá trình học của mình

Học viên cũng xin gửi lời cảm ơn tới Ban giám hiệu trường Trung cấp

Kinh tế Kỹ thuật Lạng sơn đã tạo điều kiện thuận lợi cho học viên tham gia khóa học vào quá trình hoàn thành luận văn

Và học viên cũng xin gửi lời cảm ơn tới các đồng nghiệp, gia đình và

bạn bè những người đã ủng hộ, động viên tạo mọi điều kiện giúp đỡ dé hoc

viên có được kết quả như ngày hôm nay

Thái Nguyên,l0 tháng 4 năm 2016 Học viên

Mai Thị Bính

Trang 5

MUC LUC

LY do Chon dé tai .ccccccccccssssesssessssesssecssesssseessecssecssesesseesseceseesneeeee

CHƯƠNG 1 KHÁI QUÁT VỀ ĐÓI TƯỢNG 3D

VÀ BÀI TOÁN BIÊU DIỄN NURBS 2-2¿©z+2z2xzze 1.1 Khái quát về đối tượng 3D 2¿2+z+2x+zrxzzrxsrrred 1.1.1 Một số khái niệm về đồ họa 3D 1.1.2 Khái niệm về một số chỉ tiết trong mô hình 1.1.2.1 Các điểm (Points) -2-2¿©25z+2zevcrxrerxeerreerree 1¿l:2.2: Gãc đường cong(CUTV©S Ìrsnsinunniiixodisxabs1461001146886888 1.1.2.3 Các SUTAC€ - - c1 112311 231111231 11811112 111g re DU 0n ha -

1.1.2.5 Tổng quan về mô hình hóa ¿- 2222

1.1.2.6 Hệ tọa độ trong không gian 3 chiều -

1.1.2.7 Quá trình xử lý hiển thị trong đồ họa 3D

1.2 Biểu diễn đối tượng 3D ¿-cs+xcsrseee 1.2.1 Biểu diễn mặt lưới 3D 1.2.2 Biểu diễn bề mặt trơn tham sỐ 2 2 ++c++xxerxerxeẻ 1.2.3 Đường cong tham số NURBS -2¿25¿©5z+cszczxez 1.2.4.Thư viện xử lý đồ họa OpenGL -z+s2szz 1.3 Kết luận chương -2- 22 + E+EESEESEEE2EEE2EEEEEEEEEerrkrrkerrx 009) 6225 -::ạ.a

MOT SO VAN DE TRONG BIEU DIEN MO HINH 3D BOI KY THUAT NURBS 2.1 Đường cong tham số NURBS 2- 2£ ©++xe+cxzecred 2.1.1 Đường cong — CƯRVE - 55c SH ri, 2.1.2 Điểm biểu diễn đường cong (curve represents points ) 2.1.3 Đường cong đa thức bậc ba tham biến .-. +:

Trang 6

IV

2.1.5 Đường cong B€ZI€T -.- G- << SH HTHn HH HH Hư 26 2.1.6 Đường cong B-SpÏn€s + + ni, 29 2.1.6.1 Đường cong bậc ba SpÏInes - se csxssseersresrxee 29 2¡0:1L22.ĐữỜñ8B SH sunaaeoaeaisbsassiisvESE514413005839484558055388/G18393 33

2.1.7 Đường cong tham số NURBS -2-2©£+2++£xzzrxzrred 40

2.2 Bề mặt NURBS

2.2.1 Mô hình bề mặt (Surface) và các phương pháp xây dựng 4I

2z2.1.1.;:Cc khái niệm cơ ĐẠN ssosessseoaacsostoiolillAESRRXEESEKESISNERRSsIASiSA 4I

2.2.1.2 Biểu diễn mảnh tứ giác . .-:-+©++22+++2cv++zcvsrrrrsee 41

2.2.1.3 Tam giác — TT1anØUÏAT- - xxx steitrirrreerre 43 2.2.2 Mặt từ các đường CONE - óc xxx HH ng re, 44

2:2.2.,1› Mặtcongbậc ba HETTG::¿-.s.csczszznssisscssix6400311480018531356589068865E 44

2:22.2.-Mat CONnP BO Z1GE crnissesososeeliooIEKEEEUAEESEESIEEEDDGSEXYEESSHESEESLUEESS 2.2.2.3 Mat cong B-spline

2.2.2.4 Bề mặt NURBS -cccc tre 2.2.2.5 Thuật toán NURBS biểu diễn bề mặt 52

CHƯƠNG 3 CHƯƠNG TRÌNH THỰC NGHIỆM - 54 3.1 Bal tO 54

3.2 Phan tich lura Chon CONG CU eeeeeseeseeseeeceeeeseeeaeeeeeseeseeeeeaeeeteeeneeeaees 55

3.3 Một số kết quả của chương trình -2- z2 +2sz+2zs+zzszz 57

0908.950097) 64 IV 108)9009°7)804 6 65

Trang 7

Hình 1.1 Minh hoạ tham số của đường cong tại một điểm 9 Hin, 1.2 NOtmal secis.vesesesssersrinesnesnreesveonessvessevenscvostvesenenneseesvoussevnvocrenvenrerovenees 10 Hình 1.3 Các thành phần chính của một đường cong . -s 11

Hình 1.4 Một cảnh biêu diễn đối tượng 3 chiều -2- 2252 12

Hình 1.5 Hệ tọa độ Descartes ba chiều với HUẾ ŸtstcnteoiseseeesilES0GG/11745E0256E 14

có chiều chạy xa người quan sát 2- 22 ©s+2+2+EE+EEE+EEE+EEzExsrrsrrkerree 14

Hình 1.6 Hệ tọa độ Descartes ba chiều với trục x -. -:+-s+c+zszzszxcrx 14

có chiều chạy về phía người quan sát 2-2-2 z+£+z+rs+zxezrxezrxee 14 Hình 1.7 Quá trình xử lý và hiển thị 3D -. ¿- 2 22+cxccrssrxesrserrxee 15 Hinh 1.8 Biéu diễn các đường cong và mặt COng .- - -s-x+sc+sc<+ 16 Hình 1.9 Lưới tam giác và lưới tứ giác

Hình 1.10 Biểu diễn mặt đa giác ¿- 2c 2e Ec‡EEeEEEEEEEEEEEEerkerrkerkeee

Hình 1.11 Minh hoạ tiến trình dựng một chiếc cốc đơn giản bằng NURBS 18

Hình 2.1 Đường cong đa thức bậc ba - <5 Set Skseereerkrrerreeee 23 Hình 2.2 Đường cong Hermi€ ¿+ 5c Set svEererkeererrekrrerree 24 Hình 2.3 Đường cong TH6TImlÍ:;¿‹::s:¿:::::::sxz::6155663260)516456163165043844111855556563133165 26 Hình 2.4 Đường cong B€ZI€T - + St ST HH tiệc 27 Hình 2.5 Hàm hợp của đường cong B€ZI€T - 5 5< + + s+eeesseree 27

Hình 2.6 Kết nối hai đường cong - 2-2 2++E++x£+EE£EE+EEerrxezrxrrreee 30

Hình 2.7 Phân đoạn của đường cong Spline — Hermite - - 31 Hình 2:8: Đường:cong B-SDÌÌN ;ssszz:scczs23556666185611506486165116300515143185556655835188 35

Hình 2.9 Biểu diễn mảng tứ giác . -2¿ + ©++2x++£x++cxxzrxeersee 42 Hình 2.10 Kết nối mảng tứ giác -. -¿- +©+++2++22+++2zv+scrxrerres 43

Hình 2.11.Mảnh tam gláC - c5 + 3 9 ng ngư, 44

Hình 2.12 Mặt cong Hermite và các điểm dữ liệu -2- ¿5+ 46

Trang 8

VI

Hình 2.13 Mặt cong B.€Z1eT ¿+ + nà ST HH HH HH HH Hit 47

Hình 2.14 Nối hai mảnh Bezier bậc ba -¿- 2 xxx 2EveEerkerxerkeree 49

Hình 2.15 Bề mặt NUR.BS 2¿22¿+++2EE+++EEE+tEEEeerEverrrrrrrree 51 Hinh 3.1 Biéu diễn mô hình bề mặt Nurbs . - -2- 222525252 57 Hình 3.2 Biểu diễn mô hình bề mặt Nurbs . - -¿- ¿2525252 58 Hình 3.3 Biểu diễn mô hình bề mặt Nurbs . 2- ¿25522 589

Trang 9

DANH MUC TU VIET TAT

STT| Ký hiệu Tiếng Anh Tiếng Việt

1 2D Two- dimensional Không gian hai chiều 2 3D Three-dimensional Không gian ba chiều

3 CAD Computer-aided design mg - cue ee heir Gus máy tính

: Một điểm điều khiển hình

4 CP Control point dạng của một đối tượng,

5 CPU Central Processing Unit | Bộ xử lí trung tam

6 CT Computed Tomography | chụp quét cắt lớp điện toán Một điêm mà điêu khiên Ts CV Control vertex hình dạng của đường cong

NURBS hay bê mặt

Một điêm mà năm trên ¬- đường cong là điêm nôi của

Trang 10

MO DAU

1 Lý do chọn đề tài

Trong những năm gần đây công nghệ thông tin đã đạt được những bước

phát triển nhảy vọt cả về phần cứng lẫn phần mềm Những ứng dụng của nó vào cuộc sống ngày càng phong phú, đa dạng và thiết thực hơn Từ các lĩnh vực cơ bản như khoa học cơ bản, kinh tế, kỹ thuật cho đến các lĩnh vực như giải trí, du lịch, không lĩnh vực nào không có sự ứng dụng thiết thực và hiệu quả của công nghệ thông tin Sự phát triển không ngừng của sức mạnh máy

tính đã làm cho một số lĩnh vực khó phát triển trước kia nay đã có khả năng phát triển và đã đạt được những thành tựu đáng kể Chúng ta có thê kể đến cả

các lĩnh vực như: các hệ chuyên gia, các hệ xử lý thời gian thực

Hiện nay, đồ họa máy tính đang là một lĩnh vực hết sức lý thú và được

ứng dụng rất nhiều trong cuộc sống, đặc biệt phương pháp mô hình hóa hình học các đối tượng 3 chiều dựa trên mặt cong NURBS đang được quan tâm nghiên cứu và triển khai trong đồ họa ba chiều Hơn thế, phương pháp này đang được ứng dụng để mô hình hóa các vật thể trong các hệ thống

CAD/CAM

Các đường cong và các surface NURBS có rất nhiều các ứng dụng và được ưa dùng trong thiết kế công nghiệp và tự động Đây là những nơi các

hình dạng trơn tru với lượng dữ liệu tối thiểu là yêu cầu đặt ra Các đường

cong NURBS phát huy hiệu quả trong việc tạo ra đường chuyên động liên tục của một đối tượng được hoạt hoá Trong quá trình tìm hiểu và nghiên cứu về đồ họa máy tính cùng cùng với gợi ý của thầy hướng dẫn học viên đã lựa

chọn dé tài “Biểu diễn mô hình 3D bằng kỹ thuật NURBS trong máy tính”

2 Đối tượng và phạm vi nghiên cứu + Đối tượng:

- Mô hình đối tượng 3D;

Trang 11

- Biễu diễn bởi kỹ thuật NURBS để biểu diễn đường cong và bề mặt

mô hình 3D trong máy tính

3 Ý nghĩa khoa học và thực tiễn của đề tài nghiên cứu:

- Hệ thống hóa kỹ thuật biểu diễn đối tượng 3D bởi đường cong NURBS và bề mặt NURBS

- Đề xuất hướng nghiên cứu hỗ trợ cho việc mô phỏng các đối tượng trong thế giới thực, mô phỏng hình học và đặc biệt trong thiết kế công nghiệp và tự động như sản xuất các hình dáng bên ngoài của tầu, của ô tô, tầu ngầm và máy bay và còn thiết kế phông chữ cho các ngôn ngữ khác nhau

4 Phương pháp nghiên cứu

- Phương pháp nghiên cứu lý thuyết: Tìm hiểu, tổng hợp tài liệu, phân tích, đánh giá các phương pháp

- Phương pháp trao đôi khoa học, lấy ý kiến chuyên gia

- Phương pháp thực nghiệm: xây dựng chương trình cụ thể để thử nghiệm, phân tích, đánh giá kết quả đạt được

5 Luận văn gồm ba phần chính:

Chương I Khái quát về đối tượng 3D và bài toán biểu diễn NURBS Chương 2 Một số vấn đề trong biểu diễn mô hình 3D bởi kỹ thuật

NURBS;

Chương 3 Chương trình thử nghiệm

Trang 12

CHƯƠNG 1

KHAI QUAT VE DOI TƯỢNG 3D

VA BAI TOAN BIEU DIEN NURBS

Nội dung chính của chương sẽ trình bày những khái niệm cơ

bản về đồ họa ba chiếu theo định hướng của đê tài và các khái niệm

biểu diễn mô hình 3D, biểu diễn đường cong và bê mặt

1.1 Khái quát về đối tượng 3D 1.1.1 Một số khái niệm về đồ họa 3D

Đồ họa máy tính là một lĩnh vực khoa học nghiên cứu về các thuật toán

cũng như kĩ thuật cho phép tạo, hiển thị và điều khiển hình ảnh trên màn hình máy tính Đồ họa máy tính có liên quan đến đại số, hình học giải tích, hình

học họa hình, quang học, kĩ thuật máy tính và chế tạo phần cứng (các loại

màn hình, các thiết bị xuất, nhập, các vi mạch đồ hoa )[1]

Hệ đồ họa bao giờ cũng có hai thành phần chính đó là phần cứng và phần mềm Phần cứng gồm thiết bị hiển thị và nhập dữ liệu, Phần mềm gồm công cụ lập trình và các trình ứng dụng đồ họa Công cụ lập trình cung cấp tập các hàm đồ họa có thể được dùng trong các ngôn ngữ lập trình cấp

cao như C, Pascal, Các hàm cơ sở của đồ hoạ bao gồm việc tạo đối tượng cơ sở của hình ảnh như đoạn thẳng, đa giác, đường tròn, ., thay đổi màu sắc,

chọn khung nhìn, áp dụng các phép biến đổi, .Ứng dụng đồ họa được thiết

kế cho những người dùng không phải là lập trình viên tạo được đối tượng,

hình ảnh, mà không cần quan tâm tới việc chúng được tạo ra như thế nào

Ví dụ như 1a Photoshop, AutoCAD,

Việc thể hiện các đối tượng 3D trên máy tính là cần thiết vì phần

lớn các đối tượng trong thế giới thực là đối tượng 3D còn thiết bị hiển thị chỉ hiển thị ảnh 2 chiều Do vậy muốn có hình ảnh 3 chiều ta cần phải giả

lập Biểu diễn đối tượng 3D bằng máy tính phải tuân theo quy luật về phối

Trang 13

ngày càng chỉ tiết hơn

Khi mô hình hóa và hiển thị một hình ảnh 3D chúng ta xét rất nhiều

khía cạnh và các vấn đề khác nhau không đơn giản là thêm một tọa độ thứ 3 cho các đối tượng Bề mặt đối tượng có thể được xây dựng bởi nhiều tổ hợp khác nhau của mặt phẳng và mặt cong, đôi khi chúng ta còn mô tả một số thông tin bên trong đối tượng Khi biểu diễn đối tượng 3 chiều bằng máy tính ta cần quan tâm các van dé sau:

— Phương pháp biểu diễn

Có 2 phương pháp biểu diễn đối tượng 3 chiều là phương pháp biểu

diễn bề mặt và biểu diễn theo phân hoạch không gian

Phương pháp biểu diễn bề mặt mô tả đối tượng bằng một tập hợp các bề mặt giới hạn phần bên trong của đối tượng với môi trường bên ngồi Thơng thường ta xấp xỉ các bề mặt phức tạp bởi các mảnh nhỏ hơn gọi là các patch (mặt vá) Các mảnh này có thể là các đa giác hoặc các mặt cong

Phương pháp phân hoạch không gian thường dùng đề mô tả các thuộc tính bên trong đối tượng

— Các phép biến đồi hình học

Khi áp dụng một dãy các phép biến đổi hình học có thể tạo ra nhiều

phiên bản của cùng một đối tượng Do đó có thể quan sát vật thể ở nhiều vị trí, nhiều góc độ khác nhau và cảm nhận về các hình ảnh vẽ ba chiều sẽ trực quan, sinh động hơn Các phép biến đổi thường được sử dụng là phép tịnh tiến, phép quy, phép biến dạng được mô tả bằng các ma trận Ma trận của mỗi phép biến đổi có các dạng khác nhau

— Van dé chiếu sáng

Tác dụng của việc chiếu sáng là làm cho các đối tượng hiển thị trong

Trang 14

máy tính giống với vật thể trong thé giới thực Đề thực hiện công việc này cần phải có các mô hình tạo sáng

Vật thê được chiếu sáng nhờ vào ánh sáng đến từ khắp mọi hướng gọi

là ánh sáng xung quanh (ambient light) hay ánh sáng nền (background light) Trên bề mặt có 2 loại hiệu ứng phát sáng là khuếch tán (diffuse light) - ánh sáng đi theo mọi hướng và phản xạ gương (specular light)

— Van dé tạo bóng

Để tạo bóng ta ứng dụng các mô hình xác định cường độ sáng theo nhiều kiểu khác nhau tùy thuộc bài toán cụ thể Các vật có bề mặt phẳng

chỉ cần tính cường độ sáng chung cho một bề mặt là có thể hiển thị đối

tượng tương đối thật Các vật có bề mặt cong phải tính cường độ sáng cho từng pixel trên bề mặt Đề tăng tốc độ ta xấp xỉ các mặt cong bởi một tập hợp các mặt phẳng Với mỗi mặt phẳng sẽ áp dụng mô hình cường độ không đổi (flat shading) hoặc cường độ nội suy (Gouraud shading, Phong shading) để tạo bóng

Các ứng dụng cơ bản của đồ họa 3D

3D là công nghệ được xây dựng từ các phần mềm máy tính, giúp người sử dụng có thể quan sát hình ảnh trong không gian ba chiều Ứng dụng của công nghệ này được sử dụng trong một số lĩnh vực đạt hiệu quả cao như Y học, xây dựng, kiến trúc, phim, trò chơi Tại Việt Nam công nghệ này chỉ mới được sử dụng phần lớn trong quảng cáo và kiến trúc

— Ung dung dé hoa 3D trong y tế

Ứng dụng công nghệ hình ảnh 3D thu hút sự chú ý của nhiều người trong lĩnh vực y học Nhiều bác sĩ cũng tận dụng công nghệ mới này phục vụ điều trị bệnh nhân giúp tăng độ chính xác và hiệu quả

Với phương pháp chụp cắt lớp điện toán (CT) hay chụp cộng hưởng từ (MRI) Bac si phai theo dõi hình ảnh 2D trên màn hình, vừa phải tưởng tượng

Trang 15

và tập trung hơn vào phẫu thuật

— Ứng dụng đồ hoạ 3D trong xây dựng kiến trúc

Đối với người thiết kế: có thể vẽ lên không gian 3 chiều, ứng dụng vật liệu thật vào không gian, phối trí và phân tích ánh sáng, thông gió hợp lý nhất cho công trình thiết kế xây dựng làm cho sự kết hợp giữa các yếu tố, bố trí các vật dụng trở nên hài hồ Tính tốn tải trọng kết cấu chính xác nhất, đưa ra giải pháp tiết kiệm vật tư và chỉ phí nhằm nâng cao năng lực cạnh tranh Đối với người khách hàng: ứng dụng 3D trong kiến trúc làm cho người xem như đứng ngay trong không gian trong thực tế

~ Ứng dụng đồ hoạ 3D trong phim, trò chơi

Công nghệ 3D trong phim ảnh đang là xu hướng phát triển của điện ảnh thế giới Ứng dụng tạo hình 3D mang đến cho người xem những trải nghiệm

thực sự, những hình ảnh sống động và hấp dẫn Nó cũng được sử dụng để tạo các hiệu ứng phim và thực tại ảo, khán giả sẽ trải nghiệm những hành động,

cử chỉ sống động như thật Trong game, ứng dụng công nghệ 3D để xây dựng mô hình, và chuyên động cho hình ảnh sắc nét giúp người chơi bao quát được

toàn bộ góc nhìn với chất lượng hình ảnh tốt nhất và không bị gián đoạn

— Ứng dụng đồ hoạ 3D trong mô phỏng, đào tạo

Hệ thống phần mềm mô phỏng các thí nghiệm bằng hình ảnh minh họa

sống động, giúp học sinh dễ nhận biết, tiếp thu và tạo sự hứng thú với môn

học Cho phép học sinh, sinh viên được quan sát trực quan các mô hình cụ thể, thấy được những hoạt động, chuyển động của các sự vật, sự kiện được giảng viên trình bày Học sinh được hình dung một cách rõ ràng và đầy đủ các khái niệm về hình học không gian, địa lý vũ trụ, mô hình sinh học hoặc các

khái niệm khó tưởng tượng ra trong thế giới hai chiều

Trang 16

~ Ứng dụng đồ hoạ 3D trong lĩnh vực quốc phòng và an ninh

Những sản phẩm mô phỏng sẽ được áp dụng trong giảng dạy các môn khoa học như Giáo dục quốc phòng, quân sự Người học có thể quan sát chỉ

tiết các hoạt động của các bộ phận cơ khí, quy trình hoạt động và tương tác,

những hiện tượng xảy ra trong các hoạt động của vũ khí Công nghệ mô phỏng 3D mô tả chi tiết cụ thể hiện tượng bắn, quá trình chuyển vận của các bộ phận trong tương tác sự vật, hiện tượng giúp cho học sinh dễ nhận biết, tiếp thu tạo sự hứng thú với môn học

Có thể nói các ứng dụng tiềm năng của công nghệ hình ảnh 3D là

vô hạn và để làm được điều đó ta phải biết cách biểu diễn mô hình 3D

trong máy tính

1.1.2 Khái niệm về một số chỉ tiết trong mô hình

1.1.2.1 Cac diém (Points)

Trong dựng hình, có nhiều thuật ngữ để nói về điểm Mỗi một thuật

ngữ lại được áp dụng trong các trường hợp khác nhau

- Control point (CP): Mot diém diéu khién hinh dạng của một đối tượng Ví dụ của CP là các điểm cia NURBS (control vertices - CVs), cdc

đỉnh của Polygon (polygonal vertices)

Một đối tượng phải có các điểm điều khién để biến đổi hình dạng - Control vertex (CV): Trong dựng hình, một điểm mà điều khiển hình

dạng của đường cong NURBS hay bề mặt thì gọi là control vertex

- Vertex: là một đỉnh Nhiều Vertex thì người ta sử dụng từ vertices

Nó là:

" Một điểm trong không gian 3D

= Trong dựng đa giác, nó là một góc giao của hai hoặc nhiều face của đa giác

- Edit point (EP): Trong dung hinh, một điểm mà nằm trên đường

Trang 17

Thêm các EP đối với một đường cong không ảnh hưởng tới hình dạng của đường cong nhưng tạo ra thêm đoạn (segment) cho đường cong và thêm phần (span) cho bề mặt

EP còn được gọi là các knot

- Multi-knot va CV Multiplicity: Multi-knot 1a nhiéu EP ở trong cùng một vi trí trong không gian CV multiplicity là nhiều CV ở trong cùng một ví trí trong không gian

Multi-knot và CV muliplicity thường không được mong muốn Vì lý do: thứ nhất là làm tăng dung lượng, thứ hai là không có tác dụng gì cho đường cong và thứ 3 là nhiều công cụ sẽ không làm việc chính xác khi có

chúng [2]

1.1.2.2 Các đường cong(Curves)

Đường cong để biểu diễn cho một biểu thức toán học Phương trình

biểu diễn đường cong dễ tính toán và biểu diễn trên đồ thị nhất là có dạng:

x=arbt + c + dẺ+ y=g+ht + j + kẺ+

Dạng biểu diễn này tiện lợi và phù hợp với tính chất 3 chiều của mô

hình

Các đường cong bậc càng cao thì càng phức tạp và càng đòi hỏi nhiều khối

lượng tính toán Vì thé dé biểu diễn các đường này thì người ta đã nghĩ ra cách

phân đoạn Có nghĩa là đường cong phức tạp được phân ra thành từng đoạn Mỗi

đoạn lại là một đường cong nhưng có bậc nhỏ hơn Điểm giao cua cac doan tao ra

đường cong đó người ta gọi 1a edit points, cOn mỗi đoạn đó người ta gọi là segment hay 1a span

Tuy nhiên không phải lúc nào các đường cong bậc cao cũng phải giảm

Trang 18

bớt bậc của nó đi Những đường cong bậc tầm 5 đến 7 có lợi là cho đường cong có vẻ trơn tru hơn và có độ căng Chúng thường được sử dụng trong thiết kế tự dong (automotive design)

Bậc của đường cong cũng xác định độ trơn của các điểm nối giữa các span:

e Đường bậc | (linear): các đường cong chỉ việc đặt ở các vị liên tiếp nhau

e_ Đường bậc 2 (squadratic): các đường cong đặt tiếp xúc với nhau e Duong bac 3 (cubic): các độ cong liên tiếp với nhau

- Bậc(degree): Đây là khái niệm để chỉ một span thì có bao nhiêu CV

e_ Đường bậc l: là các EP đặt thang hang

e_ Đường bậc 2: Có một phần cong giữa các EP

Các bề mặt thì có nhiều bậc theo chiều dài và chiều rộng Có thể chiều

rộng bậc 3 nhưng chiều dài lại bậc 4

-Parameter (tham số): Các tham số là các giá trị bằng số duy nhất của các điểm (giống như là toạ độ) nằm trên đường cong hay surface

parameter = 2.3

parameter = 0.0

Hình 1.1 Minh hoạ tham số của đường cong tại một điểm

» Tham số mà càng lớn thì điểm nằm càng cao trên đường cong

" Đối với đường cong, cần một tham số xác định dọc theo chiều dài

đường cong, đó là tham số U

« Déi véi surface can một tham số nữa để xác định theo bề rộng của surface, đó là tham số V

- Normail: Nó là đường trực giao tại một điểm nằm trên bề mặt hay

Trang 19

đường cong Nó dùng để xác định xem một mặt đang xét là mặt trong (inside) hay mặt ngoài (outside) của bề mặt

Hinh 1.2 Normal

- Có thể chia đường cong thành 3 loại: khép kín, đóng, mở (periodic,

closed, open)

* Khép kín: Có 2 phần đầu và cuối nằm gối lên nhau “ Đóng: Có 2 phan: đầu và cuối chung nhau tại một điểm

" Mở: Phần đầu và cuối không giao nhau

Đối với đường khép kín, khi dịch chuyên EP đầu thì EP cuối dịch theo

Một số đường cong cơ bản là theo kiểu này

Đối với đường cong đóng, khi dịch chuyển EP thì tính đóng bị mất

Nên tạo ra đường cong khép kín hơn là đường cong đóng - Các thành phần của một đường cong:

“ CV: Số CV trên một đoạn sẽ bằng bậc của đường cong tạo đoạn đó cộng với 1 Vi du như một đường cong bậc 3 thì cần đến 4 CV trên nó

= EP: CV va EP cho biét cé bao nhiêu đoạn tạo ra đường cong đó “ Hull: khi vẽ một số đường cong thì có đường nối giữa các CV đề thé hiện vết của hình đường cong, đó là hull

Trang 20

11

U Control Vertex ~,

Hull

6 Span

Hình 1.3 Các thành phần chính của một đường cong

Những thành phần này quyết định đến việc hién thị của đường cong: Curve direction : đường cong chỉ có một hướng U

Span : khoảng cách giữa 2 điểm Editpoint

Hull : đường nối giữa 2 điểm đã cho

Control Vertex(CV): điểm điều khiến

Biên tập một đường cong nên làm việc với các CV hơn là các EP vì các EP không làm thay đổi hình dạng của đường cong bằng các CV, dễ gây đồ vỡ

hình khối và tăng dung lượng

1.1.2.3 Các Surface

Tạm dịch là bề mặt Trong dựng hình, surface là một tập các đường cong liên kết với nhau

Trong tạo kết xuất, surface là một lớp bao phủ đối tượng đề xác định

xem đối tượng đó sẽ phản xạ ánh sáng như thế nào Có thể bề mặt chỉ có một

mau nao đó, hoặc có thể là một mẫu vật liệu, một vỏ xù xì, hoặc trơn nhẫn

Một số thành phần của surface:

- Isoparm: viết tắt từ cụm từ isoparametric curve Đó là một đường cong nằm trên surface hay ở một EP có giá trị U hoặc V là hằng số

Trang 21

- Đường cong trên bề mặt (curve-on-surface): Là một loại đường cong nằm trong một vùng tham số nào đó của đường cong Curve-on-surface

thường được sử dụng để cắt tỉa surface

Một đối tượng đồ hoạ là một tập các surface Có hai kĩ thuật hiển thị của surface là dạng đồ bóng (shaded surface) và dạng khung (wireframe)

- Shaded surface: Một kĩ thuật hiển thị cho phép một đối tượng hình

học được trình bày ở dạng đồ bóng kín một bề mặt

- Wireframe: Một kĩ thuật hiển thị cho phép một đối tượng hình học

được trình bày ở dạng là một tập các đường là khung của mô hình

1.1.2.4 Mô hình 3D

Mô hình 3 chiều mô tả, biểu diễn một đối tượng trong thế giới thực

bao gồm hình dạng bề mặt và hoạt động của đối tượng

Ví dụ con chìm bay, bướm lượn, ô tô chạy trên đường, toà nhà, mọi hoạt động của thế giới thực mà con người có thể nhận biết được

Mức cao nhất của việc tạo mô hình là tạo ra cả một cảnh phim chứa

đựng không gian, thời gian với môi trường cảnh quan với nhiều đối tượng

khác nhau cùng tồn tại như động vật, rừng núi, sông nước,

‘ XS“ g1 Sen Sea 7 rR

Hình 1.4 Một cảnh biểu diễn đối tượng 3 chiêu

Trang 22

13

Trong 3D đồ họa máy tính, mô hình 3D là quá trình phát triển một đại

diện toán học của bất kỳ ba chiều bề mặt của một đối tượng (hoặc là vô tri vô

giác, sinh sống) thông qua phần mềm chuyên dụng Sản phẩm này được gọi

là mô hình 3D

1.1.2.5 Tổng quan về mô hình hóa

Trong kỹ thuật biểu diễn, người ta phân thành hai nhóm: mô hình hóa vật thể và mô hình hóa hình học

Kỹ thuật mô hình hóa hình học được phát triển trong các ngành công nghiệp tự động hóa và chủ yếu được sử dụng để thiết kế các hình dạng của xe hơi Hiện nay, mô hình này còn được ứng dụng trong các ngành như công nghiệp hàng không, hải quân và một số lĩnh vực khác Mô hình này cũng hỗ trợ chính cho việc điều khiển về mặt hình dạng

Kỹ thuật mô hình hóa vật thể được xây dựng dựa trên các thông tin biểu diễn đầy đủ, chính xác, rõ ràng một đối tượng trong không gian chúng có thê tạo ra các mô hình trên máy tính với khả năng phân loại bat kỳ điểm nào trong không gian ba chiều: phía trong, phía ngoài, hoặc là trên bề mặt của đối tượng

1.1.2.6 Hệ tọa độ trong không gian 3 chiều

Không gian ba chiều là một mô hình hình học có ba thông số trong

đó bao gồm tất cả các vật chất được chúng ta biết đến Ba chiều được

nhắc đến ở đây thường là chiều dài, chiều rộng, chiều cao (hoặc chiều sâu) Ba hướng bất kì nào cũng có thể được chọn, miễn là chúng không nằm trong cùng một mặt phẳng

Là 3 trục vuông góc nhau từng đôi một x'Ox, y'Oy, z'\Oz mà trên đó đã chọn 3 véc-tơ đơn vị 1, J, k sao cho độ dài của 3 véc-tơ này bằng nhau

— Hệ tọa độ Descartes

Trang 23

_ Ì T 15 ; 3 + 5 Lũ 5 >/n,0,0] aay Bắc toa dé

Hình 1.5 Hệ tọa độ Descartes ba chiều với trục y có chiêu chạy xa người quan sát Zz Z-CcCao dé ® mai x-hoanh dé y-tung dé x

Hình 1.6 Hé toa d6 Descartes ba chiéu với trục x

có chiều chạy về phía người quan sát — Hệ tọa độ cực

Hệ tọa độ cực là một hệ tọa độ hai chiều trong đó mỗi điểm M bất kỳ

trên một mặt phẳng được biểu diễn bằng 2 thành phần:

Trang 24

15

— Khoảng cách từ điểm đó tới một điểm gốc O (gốc Cực) gọi là bán kính

— Góc tạo bởi đường thang OM với hướng gốc cho trước (trục Cực) Hệ tọa độ cực hữu ích trong những trường hợp trong đó quan hệ giữa hai điểm dễ được viết dưới dạng góc và khoảng cách Trong các hệ tọa độ thông thường như hệ tọa độ Descartes, quan hệ này chỉ có thể được biểu diễn dưới dạng công thức lượng giác

1.1.2.7 Quá trình xử lý hiển thị trong đô họa 3D

Biến đối mô hình Tối ưu hóa Chiếu sang đối tượng Đôi hệ quan sát Loại bỏ phần nằm ngồi khơng gian quan sát

Chiếu từ không gian quan sát

sang không gian màn “Chuyến đối tượng sang dạng điểm ảnh Hiến thị đối tượng Hình 1.7 Quá trình xử lý và hiển thị 3D 1.2 Biểu diễn đối tượng 3D

Khi biểu diễn một đối tượng ba chiều, ta cần phải xem xét nhiều khía

cạnh Cụ thể như đường cong, mặt cong của đối tượng Ngoài ra, cần thêm một số thông tin về thuộc tính của đối tượng

Có nhiều phương pháp khác nhau để mô tả các đối tượng 3D Tùy

thuộc vào từng đối tượng cụ thể, có thể dùng các phương pháp thích hợp với

thuộc tính của các loại đối tượng đó Chẳng hạn để biểu diễn các đối tượng

như mặt tròn xoay, các đối tượng dùng để thiết kế các mô hình máy bay, bánh răng thường được sử dụng thông qua mặt cong tham số

Trang 25

Các đối tượng trong thế giới thực phần lớn là các đối tượng ba chiều

còn các thiết bị hiển thị chỉ biểu diễn hai chiều Do vậy muốn có hình ảnh ba chiều ta cần phải tiến hành giả lập Ngoài ra khi chúng ta mơ hình hố và hiển

thị một đối tượng ba chiều, ta cần phải xem xét rất nhiều khía cạnh khác nhau như mặt phẳng, mặt cong và một số thông tin về bên trong các đối tượng

Biểu diễn mô hình ta có thể biểu diễn dưới dạng mô hình khung dây,

mô hình lưới đa giác,

Biểu diễn mô hình dạng khung dây cho ta thấy được các chỉ tiết bên

trong của mô hình, sử dụng các phương pháp di chuyển, xoay, xoá đi các

đường khuất (đề thê hiện mô hình dạng mặt)

Hình 1.8 Biểu diễn các đường cong và mặt cong

1.2.1 Biểu diễn mặt lưới 3D

Việc sử dụng mô hình khung lưới cho phép ta hình dung được kết cấu bên trong của một mô hình 3D bằng cách xoay chuyên đối tượng và chọn lựa xóa các đường ấn (những đường mà thường khi người ta không thể trông thấy thông qua các mặt phẳng cắt ngang)

Khi thể hiện bằng mô hình này, các đối tượng này không giống thực tế

lắm Vì vậy người ta dùng các kỹ thuật tạo bóng và loại bỏ các đường và mặt khuất Mô hình này thường nhanh nên người ta thường dùng nó trong việc xem phác thảo (preview) các đối tượng, đặc biệt là trong các hệ CAD

Trang 26

17

Một dạng thông thường của lưới đa giác là các dãy tam giác (triale

strip) Khi đa giác được mô tả bởi nhiều hơn ba đỉnh, các đỉnh của nó có thể

không đồng phẳng Điều này có thể dẫn đến các lỗi tính toán Một phương pháp đơn giản là phân đa giác này thành các tam giác

WY HEE Hình 1.9 Luoi tam giác và lưới tứ giác

Hình 1.10 Biểu diễn mặt ẩa giác

1.2.2 Biểu diễn bề mặt trơn tham số

Trong trường hợp các đối tượng thực sự phức tạp, người ta thường dùng một hay nhiều mặt cong trơn ghép nối lại với nhau Mỗi thành phần dùng đề ghép nối được gọi là mặt vá (patch)

1.2.3 Đường và mặt cong tham số NURBS

NURBS là từ viết tắt của Non-Uniform Rational B-Spline Đây là một kiểu hình khối bao gồm các đường cong (curves), các mảng ráp (patches), các

bề mặt (surfaces)

Trang 27

NURBS là một tập hợp rộng lớn các đường cong conic, splines va Bezier Chúng có khả năng phù hợp đặc biệt trong 3D bởi vì chúng cung cấp tính liên tục rất hoàn hảo với một lượng tối thiểu các điểm điều khiển (control points)

— Non-Uniform là phần tham số hoá của đường cong

— Rational là phương trình hữu tỉ của đường cong Tính chất này cho phép NURBS có thể thể hiện các đường conic cũng như các đường cong đa dạng khác một cách chính xác

— B-splines là các đường cong đa thức có thể hiện theo tham sé

— Điều đặc biệt của NURBS chính là sử dụng các phương trình tham

số để biêu diễn đường cong và các phương trình này phù hợp cho biểu diễn

trong 3D

Sử dụng các mô hình kiểu NURBS khi muốn dựng các bề mặt có độ

trơn nhẫn cao Ví dụ: hình cầu

Với tầm quan trọng của mình, NURBS đã được tập trung nghiên cứu trong 3 thập kỉ gần đây Khi dựng hình, thường dựng những phần đơn giản bằng Polygon còn những phần có nhiều đường cong, đòi hỏi độ nhẫn mịn cao thì thường người ta sử dụng NURBS

Hình 1.11 Minh hoạ tiến trình dựng một chiếc cốc đơn giản bằng NURBS

Trang 28

19

Các đường cong và các surface NURBS có rất nhiều các ứng dụng và được ưa dùng trong thiết kế công nghiệp và tự động Đây là những nơi các hình dạng trơn tru với lượng dữ liệu tối thiểu là yêu cầu đặt ra Các đường cong NURBS phát huy hiệu quả trong việc tạo ra đường chuyền động liên tục của một đối tượng được hoạt hoá

Tóm lại NƯRBS là một mô hình toán học được sử dụng trong kĩ

thuật đồ họa máy tính đề biểu diễn đường cong và bê mặt

Việc phát triên NURBS được bắt đầu từ những năm 1950 bởi những

kĩ sư cần các biểu diễn toán học chính xác của các bề mặt tự do như vỏ

của tàu thủy, bề mặt bên ngồi của tàu khơng gian vũ trụ và vỏ ôtô, những

thứ mà có thể sản xuất lại một cách chính xác bất cứ khi nào bằng kĩ

thuật Trước đó, loại bề mặt như vậy chỉ được biểu diễn bởi một mô hình

tạo bởi một người thiết kế mỹ thuật công nghiệp

Những người tiên phong cho cuộc phát triển nay co Pierre Bézier,

ky su cua Renault va Paul de Casteljau làm việc cho Citroen, ca hai đều

ở Pháp Bézier đã làm việc gần như đồng thời với de Casteljau, không ai biết về công việc của người kia Nhưng bởi vì Bézier đã công bố thành quả của ông ta, những người sử dụng công nghệ đồ họa máy tính ngày này công nhận đường Spline được biểu diễn với các điểm điều khiển giữ cữ cho đường cong là đường cong Bézier splines, Trong khi tên tuổi của de Casteljau chỉ được biết và dùng cho thuật toán mà ông ấy phát triển để

ước định bề mặt toán học điều khiển tham số Vào những năm 1960 mọi

việc đã trở nên rõ ràng rằng non-uniform rational B-splines là sự khái quát hóa của đường cong BézIer splines

Lúc đầu NURBS chỉ được sử dụng trong thuộc tính của gói phần mềm

CAD của các công ty ôtô Sau này chúng trở thành một phần của chuẩn gói

chuân đồ họa máy tinh

Trang 29

Quá trình dựng ảnh tương tác thời gian thực của đường cong và bề mặt

NURBS được tạo bởi máy trạm làm việc silicon vào năm 1989 Vào năm

1993 công cụ mô hình hóa tương tác NURBS cho máy tính cá nhân gọi là

NURBS, đã được phát triển bởi CAS Berlin, một công ty nhỏ mới hình thành

liên kết với trường đại học kĩ thuật Berlin Ngày nay hầu hết các ứng dụng đồ

họa máy tính chuyên nghiệp có sẵn cho máy tính để bàn đều sử dụng kỹ nghệ

NURBS, các ứng dụng này thông thường nhất được thực hiện bởi việc kết

hợp một công cụ NURBS từ một công ty chuyên sâu

Một đường cong NURBS được xác định bởi các thông số: bậc, tập

điểm điều khiển có trọng số và một vector knot Đường và mặt cong NURBS

là trường hợp tông quát của đường, mặt cong B-spline and Bézier, điểm khác

biệt cơ bản là các điểm điều khiển đã được gán trọng số, khiến cho đường

cong NURBS có tỉ lệ

1.2.4.Thựư viện xử lý do hoa OpenGL

OpenGL là một tiêu chuẩn kỹ thuật đồ họa nhằm mục đích tạo ra một

giao diện lập trình ứng dụng đồ họa 3D được phát triển dau tién boi Silicon

Graphic, Inc OpenGL đã trở thành một chuẩn công nghiệp và các đặc tính kỹ thuật của OpenGL do Uỷ ban kỹ thuật ARB OpenGL cho phép phát triển các ứng dụng đồ họa sử dụng nhiều ngôn ngữ lập trình khác nhau như C/C++, Java, Delphi, v.v , tuy nhiên OpenGL cũng có thể được dùng trong ứng dụng đồ họa 2D Giao diện lập trình này chứa khoảng 250 hàm đề vẽ các cảnh phức tạp từ những hàm đơn giản và được ứng dụng rộng rãi trong các trò chơi

điện tử Ngoài ra còn được dùng trong các ứng dụng CAD, thực tại ảo, mô

phỏng khoa học, mô phỏng thông tin, phát triển trò chơi OpenGL sử dụng hệ tọa độ theo quy tắc bàn tay phải

Trang 30

21

1.3 Kết luận chương

Trong chương này trình bầy các khái niệm lý thuyết về đồ họa, mô

hình, đối tượng 3D và phương pháp biểu diễn đối tượng 3D, quy trình xử lý

và hiển thị đối tượng trong không gian 3D Đồng thời nêu cách xây dựng các đối tượng là đường cong, mặt cong được xây dựng bởi phương trình không tham số

Tuy nhiên trong các ứng dụng đồ họa máy tính, hầu hết các đối tượng

được biểu diễn dưới dạng phương trình không tham số chưa thể hiện ý tưởng người thiết kế Với những bề mặt có độ lồi lõm bắt kỳ thì đòi hỏi khi thay đổi vị trí của một điểm điều khiển thì yêu cầu phải có sự thay đổi cục bộ chứ

không phải toàn cục trên bề mặt Để đáp ứng yêu cầu trên ta sử dụng kiểu vectơ nut (vector knot) không đều và mặt cong NURBS cho việc biểu diễn các đối tượng phức hợp 3D Do vậy trong chương 2 sẽ đưa ra phương pháp tong thê về những mô hình toán học đề biểu diễn và xây dựng các loại đường và mặt cong phức hợp trong không gian 3D trên máy tính mà ta gọi là đường cong và mặt cong tham số NURBS

Trang 31

CHƯƠNG 2

MOT SO VAN DE TRONG BIEU DIỄN

MƠ HÌNH 3D BỞI KỸ THUẬT NURBS

Nội dung chính của chương này hệ thống hóa một số vấn đề trong biểu diễn mô hình 3D bởi đường cong và mặt cong NURBS

2.1 Đường cong tham số NURBS 2.1.1 Đường cong - CURVE

Trong các ứng dụng của đồ hoạ máy tính, hầu như các thực thể là đường cong mềm và mặt cong, chúng dùng để mô tả thế giới thực: nhà cửa, xe cộ, núi non hay xây dựng nên các thực thể đang được thiết kế Nhưng ta thấy sử dụng các phương trình đường cong không thể hiện được hình ảnh thực hay ý tưởng của người thiết kế, còn nếu ta dùng tập hợp các điểm thì

thường cần nhiều dung lượng nhớ để lưu trữ cũng như tốc độ tính toán

2.1.2 Điểm biểu diễn dwong cong (curve represents points )

Ta thay qua hai điểm vẽ được một đường thăng Qua ba điểm vẽ được một đường cong trong mặt phẳng Qua bốn điểm vẽ được một đường cong trong không gian Dùng các phương trình đường cong như Hypebol, parabol, thi tinh toán phức tạp và không thê hiện được hình ảnh thực hay ý tưởng của người thiết kế

Chọn đường cong như thế nào để phù hợp với máy tính? Biểu diễn và điều khiển đường cong thông qua điểm điều khiển Đường cong là các đối

tượng cơ bản thường là kết quả của tiến trình thiết kế và các điểm đóng vai trò

là công cụ để kiểm sốt và mơ hình hoá đường cong Cách tiếp cận này là cơ

sở của lĩnh vực thiết kế mô hình hình học nhờ máy tính (Cømputer Aided

Geometric Design - CAGD)

Các cách để biểu diễn đường cong:

e Tường minh (Explicit functions): y = f(x), z = g(x)

Trang 32

23

e Không tường minh (Implicit equations): f(x,y,z) = 0

e Biểu diễn các đường cong tham biến (Parametric representation) x =x(t), y = y(t), z = z(t) trong do t € [0 1]

Han ché:

— Hệ đồ hoạ ứng dụng chỉ mô tả bó hẹp trong đoạn nào đấy

— Đường cong bậc cao với mỗi giá trị của x ta luôn có 2 tập giá trị của

y (thực tế chỉ cần 1)

- Chúng ta cần biểu diễn đường cong mềm (chỉ biễu diễn đường

“cong gay”)

2.1.3 Đường cong đa thức bậc ba tham biến

Phải đảm bảo là đường cong không gian với 3 tọa độ x, y, z Tránh được những tính toán phức tạp và những phần nhấp nhơ ngồi ý muốn xuất

hiện ở những đa thức bậc cao Công thức mô tả: Tường minh : y = Ÿ{x), z = g”(x) Không tường minh: f(x,y,z) = Ö

Hình 2.]I Đường cong ẩa thức bac ba Biểu diễn các đường cong tham biến:

x =0), y=(u),z=(u) trong đó u e[0, 1]

Theo Lagrange:

x=ai +bịu +c¡uˆ + dịu

Trang 33

y =a¿+ bạu + œuẺ + dạu?

z= a¿ + bạu + cau + dau” Ở đây ba phương trình với 12 ân số

Với bốn điểm Po, Pi, P2, p3 phuong trình xác định (vì bốn điểm thì xác

định một đường cong trong không gian)

Mỗi một điểm cho 3 cặp giá trị:

=|#a| B=|»| BE =|#: | =|2›

Zz = 24 23

Tất cả có 12 phương trình, thay vào 3 phương trình trên ta tính được 12 ấn ai đạ

Ghi chú: rõ ràng có sự thay đôi một chút về đường cong thì ta lại phải giải lại hệ phương trình để tính các tham số cho đường cong, dẫn đến tính

toán chậm

2.1.4 Dwong cong Hermite

Phuong phap Hermite dựa trên cơ sở của cách biểu diễn Ferguson hay Coons năm 60 Với phương pháp của Hermite đường bậc ba sẽ xác định bởi hai điểm đầu và cuối cùng với hai góc nghiêng tại hai điểm đó

P1

a

PO F1

Po

Hinh 2.2 Duong cong Hermite

Theo cơng thức tốn học hàm bậc ba được biểu diễn dưới dạng:

Trang 34

25

D = p(1) = kạ + kạu+ k„u? + KzuŠ

p(u) = > kyu; i€n (uỡi k, là câc tham số chưa biết)

Độ dốc của đường cong được đo bằng p'(u)

p' =p' (uw) =k, + 2k,ut 3k,u?

Pọ và p¡ ta có hai dé déc po’ va p:’ voi u = 0 va u = 1 tại hai điểm đầu,

cuối của đoạn [0, 1]: Đạ( = 0) = kọ po(u= 0)=k, pi(m = 1) = Ko + kị + kạ + kạ plw= l= iy +t 2k, 5k, Hay E— py tak = ph

ky = 3(P1— Po) — 2p) — py vaks = 2(M — Pi) + Po + Pi

Trang 35

Hình 2.3 Đường cong Hermite 2.1.5 Dwong cong Bezier

Việc sử dụng điểm với các vector kiểm soát được độ dốc của đường cong tại những điểm mà nó đi qua Tuy nhiên không được thuận lợi cho việc thiết kế tương tác, không tiếp cận với các độ dốc của đường cong bằng các giá trị số (Hermite)

Paul Bezier, nhân viên hãng RENAULT vào năm 1970 đi đầu trong việc ứng dụng máy tính cho việc xây dựng các bề mặt Hệ thống UNISURF của ông được áp dụng trong thực tế vào năm 1972 được thiết kế và kiểm xe Mezesez hay Renaut

Bezier đã sử dụng đa giác kiểm soát cho đường cong tại những đỉnh của đa giác và tiếp tuyến tại đó (po, Pu Pa P3)

Ta có po, ps tương tác với po, p¡ trên đường Hermite, điểm trung gian pi, p› được xác định bằng 1/3 theo độ dài của vector tiếp tuyến tại điểm po và pa

Trang 36

27 pl p2 po g3 Hình 2.4 Đường cong Bezier Độ = 3 — Dạ) Đi = 3Œ — D;) p = p(1) = pạ(1— 3u? + 2uŠ)+p;(3u? — 2u) + pạ (u — 2uˆ + uŠ +p{CHẺ + 2) p = p(w) = pạ(1— 3u + 3u? — u3) +p(3u — 6u”— 3uŠ) +p; (3u? — 3u? + pu? 1 0 0 0 Po ~ p(w) =Muu2wi| 3 3 9 «0 | | p=p(u) = [luv u*] ở củ 3 lbs —1 3-3 1! Ds Hình 2.5 Hàm hợp của đường cong Bezier Ưu điểm:

Dễ dàng kiểm soát hình dạng của đường cong hơn vector tiếp tuyến tại Po’ va p;’ cua Hermite;

Trang 37

Nằm trong đa giác kiểm soát với số điểm trung gian tùy ý (số bậc tùy

ý), có số bậc = số điểm kiểm soát -l;

Đi qua điểm đầu và điểm cuối của đa giác kiểm soát, tiếp xúc với cặp hai vector của đầu cuối đó

Biểu thức Bezier — Bernstain

Đường Bezier cũng có thê được biết đến như biểu thức Bezier Bernstain bởi kỹ thuật mà Bezier sử dụng là áp dụng công thức hóa các vector trong phép tính đa giác xấp xi được Berstain phát triền gần đây Phép toán đại số được xác định như sau: 0<u<1 O!=1, u=1 khi i=0 n p(w) = ) Bin (WR i=0 B;„(u) = CQ@,i) wid — uw)? n! C(n,i) = ————— =F»! Trong do Po, , Pn: vector vi tri cua da giac (n+1) dinh Tinh chat:

— Pp va P, nằm trên đường cong

— Đường cong liên tục và có đạo hàm liên tục tất cả các bậc

Trang 38

29

2.1.0 Đường cong B-Splines 2.1.6.1 Duong cong bac ba Splines

Trong công thức của Bezier, chúng ta sử dụng hàm hợp liên tục để xác định điểm kiểm soát tương đối Với các điểm nội suy thì mức độ tương đối sẽ khác nhau mà trong đó một chuỗi các phần tử nhỏ sẽ kết hợp với nhau tạo ra đường cong đa hợp Theo tính toán thì đường bậc ba sẽ đa thức bậc thấp nhất

có thể để biểu diễn một đường cong trong không gian và chuỗi điểm Hermite

sẽ phù hợp nhất đối với việc xây dựng nên đường cong đa hợp này

Việc yêu cầu người sử dụng đưa vào các vector tiếp tuyến tại mỗi điểm trong tập hợp các điềm là cực kỳ bat tiện cho nên thường trong các đường bậc

ba đa hợp ta sử dụng các điều kiện biên liên tục trong phép đạo hàm bậc một

và hai tại điểm nối giữa và đường cong được xác định như trên gọi là đường spline bậc ba với phép đạo hàm liên tục bậc hai Giá trị đạo hàm của đường

cong sẽ xác định độ cong tại mỗi điểm nút và nó cũng đưa ra điều kiện biên

cho mỗi đoạn trên đường cong

Vậy đường bậc ba spline có ưu điểm là không phải xác định độ dốc của

đường tại các nút nhưng nhược điểm của nó là chỉ tạo ra sự thay đổi toàn cục

khi ta thay đổi vị trí của điểm

Đường cong — Spline di qua n điểm cho trước mà mỗi đoạn là các đường cong bậc ba độc lập có độ dốc và độ cong liên tục tại mỗi điểm kiểm soát hay điểm nút Với n điểm ta có (n-1) đoạn với mỗi đoạn gốm bốn vector hệ số hay

A(n-1) cho n-1 doan, va 2(n-1) điều kiện biên và (n-2) điều kiện về độ dốc cùng

(n-2) về độ cong

Để xây dựng nên đường spline có tham số với n điểm nút ta có một dãy các giá trị tham số mà ta gọi là vector nút

Uo -.-Un-1 trong đó u0¡¿¡ >u¡

Trang 39

Cần lựa chọn tại mỗi nút, cách lựa chọn đơn giản nhất là theo cách đơn

điệu có nghĩa là với giá trị 0 tại điểm đầu và tăng lên 1 tại những điểm kế tiếp

Tuy vậy phương pháp này dẫn đến độ cong không mong muốn tại các điểm vì

vậy việc tham số hoá sẽ đưa vào chiều dài, nhưng phương pháp này cũng

không được chính xác khi mà đường cong chưa xác định chiều dài Tuy nhiên thông thường người ta sử dụng việc tích luỹ của các dây cung với:

uọ =0 và u0¡¿¡ = u¡ + dị¿¡ trong đó đi: là khoảng cách giữa 2 điểm p¡-¡

va pi

Trong các trường hợp đường cong có bậc lớn hơn ba có thể dùng cho đường spline Thông thường đường spline bậc n sẽ được xây dựng trên các

phần nhỏ liên tục của các biến độc lập y(t)

a Z7

—>x(f)

Hình 2.6 Kết nối hai đường cong

Hình trên cho thấy hai đoạn cong có chung điểm nối mà đường cong

liên tục tại điểm đó, việc biểu diễn tính liên tục của đường cong thông qua

chữ cái C-Cuntinue Cọ để đảm bảo không có sự gián đoạn giữa hai đoạn

cong C¡ tính liên tục bậc nhất hay đạo hàm bậc nhất tại điểm nối Cạ đạo hàm

bậc hai liên tục của đường cong tai diém nôi

Trang 40

31

Giả sử khi biểu diễn đường cong mềm thông qua các đoạn cong Q¡, Q›,

Q; (mỗi đoạn có 4 vector hệ số) cần thoả mãn:

Liên tục tại điểm nối hay Co! = Co?

Độ đốc (hay vector tiếp tuyến) tại điểm nối (điểm cuối của Q¡ và đầu

Q;) là như nhau: C¡! = C¡? (đạo hàm bậc nhất)

Thoả mãn liên tục trên tại điểm nối (đạo hàm bậc 2 liên tục tại điểm

nối) C2! = Cy

Việc kết hợp các đoạn cong Hermite bậc ba để mô tả một đường cong mềm theo kiểu phân đoạn spline là phương pháp đơn giản nhất hay còn gọi là phương pháp Hermite nội suy Với phương pháp này thì tham biến u¡ cho mỗi đoạn cong ¡ của tập các đoạn cong Hermite sẽ biến đổi trong khoảng từ 0 đến 1 và luôn tồn tại đạo hàm bậc nhất của các đoạn cong tại các điểm nối Phương trình cho mỗi đoạn cong được sử dụng lúc này là phương trình đường cong bậc ba Hermite: 1 00 0I1ỊP _ _ 2/0 0 1 Of {Ps p=?@)=[1ww la 3 2-1} |e 2 2 1 1! |p ¥ „ a / By " ' Py z x

Hình 2.7 Phân đoạn của đường cong Spline — Hermite

Theo Hermite các đoạn là các đường cong, tính liên tục của đạo hàm

bậc hai tại các điểm nối có thể dễ dàng đạt được bằng cách đặt Pˆ”;.¡(u¡.¡=1) là

Ngày đăng: 29/06/2017, 04:22

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN