Thực tại ảo là công nghệ sử dụng các kỹ thuật mô hình hóa không gian ba chiều với sự hỗ trợ của các thiết bị đa phương tiện hiện đại để xây dựng một thế giới mô phỏng bằng máy tính – môi
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN ĐẠI HỌC MỞ HÀ NỘI
LUẬN VĂN THẠC SĨ
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
TÌM HIỂU MỘT SỐ KỸ THUẬT PHỤC DỰNG HIỆN TRƯỜNG BẰNG CÔNG NGHỆ 3D
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO
VIỆN ĐẠI HỌC MỞ HÀ NỘI
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan đề tài: “ Tìm hiểu một số kỹ thuật phục dựng hiện trường bằng công nghệ 3D” là công trình do tôi nghiên cứu và thực hiện
Các số liệu và kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác
TÁC GIẢ LUẬN VĂN
Ký tên
Tống Ngọc Anh Linh
Trang 4Mục lục
Phần mở đầu 6
Chương 1: KHÁI QUÁT VỀ ĐỒ HỌA 3D VÀ BÀI TOÁN PHỤC DỰNG HIỆN TRƯỜNG 9
1.1 Khái quát về đồ họa ba chiều 9
1.2 Bài toán phục dựng hiện trường 9
1.2.1 Các phương pháp vẽ sơ đồ hiện trường 9
1.2.2 Kỹ thuật vẽ sơ đồ: 11
Chương 2: MỘT SỐ VẤN ĐỀ TRONGTẠO DỰNG HIỆN TRƯỜNG 3D 13
2.1 Các kỹ thuật dựng hình 3D 13
2.1.1 Kỹ thuật đồ họa điểm 13
2.1.2 Kỹ thuật đồ họa Vector 14
2.2 Các công tác dựng hình chính 16
2.3 Các loại mô hình cơ bản 16
2.3.1 Tổng quan về các loại mô hình: 16
2.3.2 Khái niệm về một số chi tiết trong mô hình 23
2.3.3 Khái niệm xây dựng từ phần mềm 29
2.4 Kỹ thuật xây dựng 31
2.4.1 Vẽ đường cong 31
2.4.2 Tạo bề mặt (surface) 34
2.4.3 Các kỹ thuật tạo kết xuất 42
Chương 3: PHỤC DỰNG HIỆN TRƯỜNG VỤ TRỘM 54
3.1 Mục đích và yêu cầu bài toán 54
3.2 Các phương pháp vẽ sơ đồ hiện trường bằng đồ họa 3D 54
3.2.1 Dán ảnh hiện trường lên một mặt phẳng trong sơ đồ 3D 54
3.2.2 Dựng sơ đồ hiện trường 3D trên nền ảnh chụp hiện trường 57
3.2.3 Vẽ sơ đồ 3D theo một ảnh hiện trường 58
3.2.4 Vẽ sơ đồ 3D theo nhiều ảnh hiện trường 61
3.3 Một số kết quả chương trình 66
Trang 5KẾT LUẬN 67 Tài liệu tham khảo 69
Trang 6Phần mở đầu
1 Lý do chọn đề tài
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ó ngày càng phong phú, đa dạng
và thiết thực hơn Từ những lĩnh vực cơ bản như khoa học cơ bản, kinh tế, kỹ thuật cho đến những 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 hệ chuyên gia, các hệ xử lý thời gian thực và một lĩnh vực khác cũng cần phải nói là Thực tại ảo (Virtual reality) và những ứng dụng của nó trong công nghệ
Thực tại ảo là công nghệ sử dụng các kỹ thuật mô hình hóa không gian ba chiều với sự
hỗ trợ của các thiết bị đa phương tiện hiện đại để xây dựng một thế giới mô phỏng bằng
máy tính – môi trường ảo (Virtual Environment) Trong thế giới ảo này, người sử dụng
không còn được xem như người quan sát bên ngoài mà đã thực sự trở thành một phần của
đó em chọn đề tài: “Tìm hiểu một số kỹ thuật phục dựng hiện trường bằng công nghệ
3D”
2 Mục đích nghiên cứu
Trang 7Nghiên cứu, hệ thống hóa các kỹ thuật tạo mô hình 3D trong đồ họa ba chiều vàthực tại
ảo Trên cơ sở kiến thức được hệ thống hóa, áp dụng vào công việc khám nghiệm hiện trường và phục dựng hiện trường bằng công nghệ 3D
3 Đối tượng và phạm vi nghiên cứu
Lý thuyết mô hình kiến trúc 3D, các công nghệ và các xu hướng phát triển của 3D Việc phát triển và triển khai 3D trên thế giới và đánh giá giá hiện trạng việc sử dụng 3D tại Việt Nam Nghiên cứu về các công nghệ hỗ trợ và phát triển cho 3D phục vụ cho công tác điều tra và khám nghiệm hiện trường
4 Phương pháp nghiện cứu
Nghiên cứu các kết quả đã công bố trong lĩnh vực liên quan
Phân tích, tổng hợp, đánh giá các kết quả đã công bố
Phân tích lý thuyết và xây dựng chương trình demo để nghiên cứu thực nghiệm nhằm đánh giá kết quả thu được
Bố cục của luận văn gồm có ba chương chính:
Chương 1: KHÁI QUÁT VỀ ĐỒ HỌA 3D VÀ BÀI TOÁN PHỤC DỰNG HIỆN TRƯỜNG
Chương này giới thiệu khái quát về đồ họa 3D và bài toán phục dựng hiện trường áp dụng trong công tác khám nghiệm hiện trường phục vụ cho công tác điều tra phòng, chống tội phạm
Chương 2: MỘT SỐ VẤN ĐỀ TRONGTẠO DỰNG HIỆN TRƯỜNG 3D
Chương này sẽ giới thiệu một số kỹ thuật xây dựng mô hình 3D và tối ưu trong sử dụng các mô hình đó
Chương 3:PHỤC DỰNG HIỆN TRƯỜNG VỤ TRỘM
Trang 8Chương cuối này đề cập đến vấn đề hiện trường các vụ trộm và bài toán phục dựng hiện trường bằng phương pháp kết hợp giữa ảnh chụp hiện trường và kỹ thuật vẽ sơ đồ 3D
Trang 9Chương 1: KHÁI QUÁT VỀ ĐỒ HỌA 3D VÀ BÀI TOÁN PHỤC DỰNG
HIỆN TRƯỜNG
1.1 Khái quát vềđồ họa ba chiều
Đồ họa là một lĩnh vực truyền thông trong đó thông điệp được tiếp nhận qua con đường thị giác
Đồ họa máy tính là một lĩnh vực của khoa học máy tính nghiên cứu về cơ sở toán học,các thuật toán cũng như các 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 ít nhiều đến một số lĩnh vực như đại số, hình học giải tích, hình học họa hình, quang học,… và kỹ thuật máy tính, đặc biệt là 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 đồ họa…)
Definition(ISO): Phương pháp và công nghệ chuyển đổi dữ liệu từ thiết bị đồ họa sang máy tính
Computer Graphics là phương tiện mạnh nhất và đa năng của giao tiếp giữa con người và máy tính
Computer Graphics (Kỹ thuật đồ họa máy tính) là một lĩnh vực của Công nghệ thông tin
mà ở đó nghiên cứu, xây dựng và tập hợp các công cụ (mô hình lý thuyết và phần mềm) khác nhau: kiến tạo, xây dựng, lưu trữ, xử lý các mô hình (model) và hình ảnh (image) của đối tượng Các mô hình và hình ảnh này có thể là kết quả thu được từ những lĩnh vực khác nhau của rất nhiều nghành khoa học ( toán học, vật lý, thiên văn học,…)
Computer Graphics xử lý tất cả các vấn đề tạo ảnh nhờ máy tính
1.2 Bài toán phục dựng hiện trường
1.2.1 Các phương pháp vẽ sơđồ hiện trường
a.Hiện nay, công tác vẽ sơ đồ hiện trường về cơ bản là các bản vẽ 2D bằng bút mực trên nền giấy trắng (khổ A3 hoặc A4) Thông thường, một vụ án hình sự xảy ra được vẽ thành hai bản vẽ là hiện trường chung và hiện trường riêng (hiện trường chi tiết) Các bản vẽ được vẽ theo ý tưởng của cán bộ khám nghiệm kèm theo các chú thích giải thích các dấu vết Khi vẽ các dấu vết, các vật thể khó vẽ giống thực
Trang 10tế thông thường được ký hiệu dưới dạng số 1, 2, 3… sau đó chú thích các số đó là
gì
b.Bình thường để vẽ được sơ đồ hiện trường cán bộ KTHS phải tiến hành đo đạc các kích thước, thông số tại hiện trường, dùng la bàn xác định hướng (hướng Bắc quy định hướng lên trên trang giấy), vẽ nháp vào sổ Sau đó, vẽ ra một bản theo tư duy của cán bộ KTHS tiếp đó các thành phần tham gia KNHT gồm: điều tra viên, nhân chứng, kiểm sát viên, đại diện chính quyền địa phương, đại diện gia đình bị hại… Các thành phần tham gia này thường phải xem xét lại bản vẽ cẩn thận trước khi ký, chỉ khi thấy bản vẽ đạt yêu cầu thì mới thông qua (thường không thông qua được ngay lần đầu) Nếu các thành phần chưa thống nhất thì tiếp tục vẽ lại để bổ xung các phần còn thiếu vào sơ đồ Do vẽ thủ công nên mỗi thay đổi nhỏ đều phải
vẽ lại từ đầu chính vì vậy cần phải có kinh nghiệm trong KNHT mới có thể vẽ được bản vẽ SĐHT đạt yêu cầu Do đó, Các công an huyện thường chọn các cán bộ có nhiều kinh nghiệm và năng khiếu vẽ để làm công việc này Nói chung việc vẽ sơ đồ hiện trường là một công việc khó, yêu cầu nhiều kỹ năng vì các công cụ thiết bị hỗ trợ việc vẽ SĐHT chỉ là cái thước kẻ, bút vẽ, bút chì và cục tẩy Hầu như chưa địa phương nào áp dụng các phương pháp, thiết bị hiện đại nào hỗ trợ việc này
c.Thời gian để vẽ một vụ án gồm một bản sơ đồ hiện trường chung và một bản sơ
đồ chi tiết từ khâu đo đạc hiện trường, vẽ nháp, vẽ chính thức để được hội đồng thông qua trung bình mất khoảng 4 tiếng Một số vụ án như tai nạn giao thông thời gian vẽ SĐHT có thể gây ùn tắc trên một đoạn đường, ảnh hưởng trực tiếp đến giao thông trên tuyến đường đó
d Tuỳ thuộc từng loại hiện trường, từng loại sơ đồ và kỹ năng của từng điều tra viên, việc vẽ sơ đồ hiện trường có thể tiến hành theo nhiều phương pháp khác nhau gồm:
Trang 11- Phương pháp mặt bằng: Là phương pháp vẽ theo cách nhìn thẳng từ trên xuống đối với mọi vật ở hiện trường Mọi vật ở hiện trường đều được chiếu thẳng góc từ trên xuống để xác định hình chiếu của chúng Trên sơ đồ mặt bằng, vẽ các hình chiếu đó thu nhỏ lại theo cùng một tỉ lệ và theo các ký hiệu vẽ sơ đồ đã được quy định thống nhất Phương pháp vẽ sơ đồ mặt bằng thường được sử dụng để vẽ sơ đồ chung và sơ đồ khu vực
- Phương pháp vẽ mở (khai triển): Là phương pháp vẽ trải rộng mặt đáy và các mặt xung quanh của một khối đa diện trên một mặt phẳng, nhằm mô tả các dấu vết, vật chứng, các đồ vật, tử thi chứa trong hình khối đó Phương pháp này thường được vẽ kết hợp các ký hiệu đã được quy trên một mặt phẳng
- Phương pháp vẽ cắt: Là phương pháp vẽ bổ dọc hoặc vẽ bổ ngang một vật, nhằm
mô tả những phần bị che khuất của vật hoặc minh hoạ vị trí, tư thế dáng điệu tử thi, hay vết đạn xuyên qua vách, tường một căn nhà
- Phương pháp vẽ phối cảnh: Là phương pháp vẽ nhìn vật từ một phía Phương pháp này nhằm mô tả vị trí dấu vết, vật chứng phía bên ngoài các vật như: dấu vết máu treo trên tường phía ngoài, dấu vết của trèo tường, dỡ ngói, đào tường mà các phương pháp khác không thể hiện được
Trang 12b- Vẽ chi tiết hoàn chỉnh: Vẽ chi tiết, chính xác trên cơ sở sơ đồ vẽ phác thảo
Trang 13Chương 2: MỘT SỐ VẤN ĐỀ TRONG TẠO DỰNG HIỆN TRƯỜNG 3D
2.1 Các kỹ thuật dựng hình 3D
2.1.1 Kỹ thuật đồ họa điểm
- Các mô hình, hình ảnh của các đối tượng được hiển thị thông qua từng pixel (từng mẫu rời rạc)
- Đặc điểm: Có thể thay đổi thuộc tính
+ Xoá đi từng pixel của mô hình và hình ảnh các đối tượng
+ Các mô hình hình ảnh được hiển thị như một lưới điểm (grid) các pixel rời rạc
+ Từng pixel đều có vị trí xác định, được hiển thị với một giá trị rời rạc (số nguyên) các thông số hiển thị (màu sắc hoặc độ sáng)
+ Tập hợp tất cả các pixel của grid cho chúng ta mô hình, hình ảnh đối tượng mà chúng ta muốn hiển thị
Hình 1.4 Ảnh đồ hoạ điểm
Trang 14Hình 1.5 Kỹ thuật đồ hoạ điểm
Phương pháp để tạo ra các pixel
- Phương pháp dùng phần mềm để vẽ trực tiếp từng pixel một
- Dựa trên các lý thuyết mô phỏng (lý thuyết Fractal, v.v) để xây dựng nên hình ảnh mô phỏng của sự vật
- Phương pháp rời rạc hoá (số hoá) hình ảnh thực của đối tượng
- Có thể sửa đổi (image editing) hoặc xử lý (image processing) mảng các pixel thu được theo những phương pháp khác nhau để thu được hình ảnh đặc trưng của đối tượng [10] 2.1.2 Kỹ thuật đồ họa Vector
Hình 1.6 Mô hình đồ hoạ vector
- Mô hình hình học (geometrical model) cho mô hình hoặc hình ảnh của đối tượng
- Xác định các thuộc tính của mô hình hình học này
Trang 15- Quá trình kết xuất (rendering) để hiển thị từng điểm của mô hình, hình ảnh thực của đối tượng
Có thể định nghĩa đồ hoạ vector: Đồ hoạ vector = geometrical model + rendering
Bảng 1.1 Đồ hoạ điểm và Đồ hoạ vector
Đồ hoạ điểm (Raster Graphics)
- Hình ảnh và mô hình của các vật thể
được biểu diễn bởi tập hợp các điểm
của lưới (grid)
- Thay đổi thuộc tính của các pixel =>
thay đổi từng phần và từng vùng của
hình ảnh
- Copy được các pixel từ một hình ảnh
này sang hình ảnh khác
Đồ hoạ vector(Vector Graphics)
- Không thay đổi thuộc tính của từng điểm trực tiếp
Ví dụ về hình ảnh đồ hoạ Vector
Hình 1.7 Ví dụ về đồ hoạ vector
Trang 162.2 Các công tác dựng hình chính
Qua nghiên cứu các phần mềm dựng mô hình khác nhau cho thấy, nói chung làm việc trong môi trường 3D có các công tác chính sau:
- Công tác dựng hình (modelling): Đây là phần sử dụng các công cụ dựng hình để tạo
ra các mô hình, chỉnh sửa chúng theo ý muốn Từ đó các vật thể 3D được định hình
- Công tác hoạt hóa nhân vật(animation): gồm các thao tác để gắn nhân vật vào một tập các khóa (key) Mỗi một khóa đại diện cho một vị trí, hình dạng của nhân vật tại những thời điểm khác nhau Sự chuyển động của nhân vật là sự thể hiện nhân vật tại mỗi
Với phần rendering, các kỹ thuật tạo ánh sáng (lighting), đổ bóng (shading), mài nhẵn (smoothing) và áp vật liệu (texturing) … sẽ được giới thiệu
2.3 Các loại mô hình cơ bản
2.3.1 Tổng quan về các loại mô hình:
Mô hình là một sự mô tả và trình diễn dựa váo máy tính của một đối tượng 3 chiều Các mẫu có thể được tạo với các phần mềm dựng hình, các thiết bị số hóa 3D… Có 3 kiểu mô hình hay sử dụng đó là: Polygon, Nurbs và Subdiv
2.3.1.1 Polygon
Trang 17Polygon [1] là một khối gồm có n mặt và được tạo thành từ các đỉnh (vertices) và các đường thẳng giữa các đỉnh gọi là các cạnh (edges)
Hình 2.1 điểm, cạnh, mặt
Khi dựng polygon, nên sử dụng các tam giác hay tứ giác vì chúng dễ dàng để dựng và dung lượng tốn rất ít Một polygon đơn giản nhất còn gọi là face, và nó giống như một vùng phủ kín được tạo từ các đỉnhvà các cạnh bao lấy nó
Có thể hình dung ra Polygon một cách sơ lược qua hình ảnh dưới đây:
Hình 2.2 Quá trình xây dựng một đối tượng bằng Polygon
Trang 18Lợi ích của Polygon:
• Polygon là kiểu dựng hình lâu đời nhất của đò họa 3D Vì vậy, nó là cội rễ cho mọi kiểu dựng hình khác
• Polygon là hình đơn giản nhất và vì thế nó dễ dàng chuyển đổi giữa các file của các platform khác nhau
• Với polygon cho phép có thể mở rộng hình từ một mặt, một cạnh hay thậm chí là một đỉnh
• Polygon cho phép có thể hợp nhất nhiều điểm, nhiều cạnh, nhiều mặt hoặc là tất cả các thứ đó vào với nhau
Hạn chế của Polygon:
• Trong việc tăng độ phân giải của mô hình , nếu với NURBS thì sẽ tốn một lượng CVs ít hơn rất nhiều khi ta phải tăng mức chi tiết của một Polygon Ví dụ: Một hình cầu NURBS mất 56 CVs, một hình cầu Polygon phải mất 600 đỉnh mới được như NURBS
• Trong dựng hình, có thể phải liện kết nhiều mesh lại với nhau (polymesh) Nhưng
có thể hành động này lại làm cho một trong các mesh ban đầu bị xóa đi Điều đó đòi hỏi phải có sự sao chép các mesh dự phòng trước khi thực hiện một liên kết 2.3.1.2 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(surface)
Trang 19NURBS là một tập hợp rộng lớn các đường cong conic, splines và Bezier Chúng có khả năng phù hợp đặc biệt trong 3D bởi vì chúng cung cấp các tính lien tục rất hoàn hảo với một lượng tối thiểu với các điểm điều khiển (control point)
• Non- Uniform là thành phần tham số hóa 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 đường cong 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
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 hóa
Rất nhiều ứng dụng của CAD/ CAM, VR, animation và kỹ thuật hình ảnh, các đối tượng được dựng từ các NURBS surfaces
[2] 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ì người ta sử dụng NURBS
Trang 20Hình 2.3 Minh họa tiến trình trình dựng một chiếc cốc đơn giản bằng NURBS
Trên đây đã trình bày khá rõ về NURBS, qua đó ta có thể thấy được NURBS có vai trò như thế nào trong việc dựng hình
2.3.1.3 Subdivision Surface ( Subdiv)
Subdivision surface là một kiểu surface lai mà xử lý các đặc tính của cả NURBS
và Polygon Giống như NURBS, các Subdivion surface có khả năng tạo ra các dạng có độ trơn và có thể định hình khối nhờ sử dụng tương đối ít các điểm điều khiển Giống như các surface Polygon, Subdivion surface cho phép có thể mở rộng các vùng xác định và tạo cho surface nhiều chi tiết hơn
Dựng hình với Subdivison surface là một cách dễ dàng để tạo ra đối tượng phức tạp ví dụ như bàn tay con người Nó liên kết các chức năng tốt nhất của NURBS và Polygon Subdivison surface cho phép sử dụng một surface để dựng lên cả một khối hình phức tạp Một Subdivion có thể có các mức chi tiết khác nhau ở các khu vực khác nhau
Có nghĩa là một khu vực mà có hình thù phức tạp có thể có nhiều điểm điều khiển hơn để
có được một mức độ tinh xảo hơn trong khi một số vùng khác đơn giản hơn thì chỉ cần ít các điểm điều khiển
Trang 21Cái tên Subdivison là lấy từ “dividing into regions of greater detail” có nghĩa là phân chia thành các miền nhỏ hơn với nhiều chi tiết hơn Bắt đầu với 1 mesh cơ sở và phân chia thành các miền càng chi tiết càng tốt để làm việc với từng miền đó
Hình 2.4 Minh họa một quá trình tạo một bàn tay bằng Subdivion surface
Lợi ích của subdivision:
• Subdivion cho phép điều khiển ở mức cao hơn so với hình tạo bởi Polygon
• Với Subdivison, có thể tạo ra một đối tượng trơn tru chỉ từ một hình cơ sở ban đầu
và không phải gắn nhiều surface lại với nhau như đã làm với NURBS
• Nó cho phép chỉ phải sử dụng các dạng hình học phức tạp ở những vùng đòi hỏi phải có sự phức tạp
• Cho phép tồn tại các nếp gấp ( các cạnh nhọn) và các hình dạng bất kỳ không chỉ các hình 4 mặt
• Tính liên tục của Subdivision còn hạn chế được một số các vấn đề hay xảy ra khi hoạt hóa với NURBS
• Có thể liên kết các bề mặt Subdivision với phần khung xương (skeleton) ở mức thô
và các hiệu ứng có thể giúp chuyển tiếp lên mức tốt hơn
Trang 222- manifold là một khối hình mà khi ta trải nó trên mặt phẳng thì không có phần
nào nằm chồng chéo lên nhau Ngược lại với nó là non- manifold Đó là những hình không thể nào trải các mặt nó trên mặt phẳng được
Trang 23• Control point (CP): Một điểm điều khiển hình dạng của một đối tượng Ví dụ của
CP là các điểm của NURBS (control vertices – CVs), các đỉ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 vertices
Nó là:
• Một điểm trong không gian 3D
• Trong dựng đa giác, nó là 1 góc giao của hai hoặc nhiều face của đa giác
• Edit point (EP): Trong dựng hình một điểm mà nằm trên đường cong mà là điểm nối của các đa thức biểu diễn đường cong thì gọi là Edit point
Trang 24Thê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 và CV Multiplicity : Multi- knot là nhiều EP ở trong cùng một vị 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 Multiplicity thường không được mong muốn vì lý do:
• Làm tăng dung lượng
• Không có tác dụng gì cho đường cong
• Nhiều công cụ sẽ không làm việc chính xác khi có chúng
b 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 có dạng:
X= a + bt+ ct2 + dt3 + …
Y= g + ht + jt2 + kt3+…
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ế để biểu diễn đường này 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 dường cong
Trang 25nhưng có bậc nhỏ hơn Điểm giao của các đoạn tạo ra đường cong đó người ta gọi là edit point, còn mỗi đoạn đó người ta gọi là segment hay là 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 bớt các 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ự động (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:
• Đường bậc 1 (linear) : các đường cong chỉ việc đặt ở các vị trí liên tiếp nhau
• Đường bậc 2 (squadratic): các đường cong đặt tiếp xúc với nhau
• Đường bậc 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
• Đường bậc 1: là các EP đặt thẳng hàng
• Đườ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à tọa độ) nằm trên đường cong hay surface
Trang 26Hình 2.6 Minh họa 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
• Đối với các surface cần một tham số nữa để xác định theo bề rộng của surface, đó là tham số V
- Normal: Nó là đường trực giao tại một điểm nằm trên bề mặt hay đườ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 ( outsite) của bề mặt
Hình 2.7 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
Trang 27• Đóng: Có 2 phần: đầ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 Ví dụ như một đường cong bậc 3 thì cần đến 4 CV trên nó
• EP: CV và EP cho biết có bao nhiêu đoạn tạo ra đương cong đó
• Hull: Khi vẽ một số dường cong thì có đường nối giữa các CV để thể hiện vết của hình cong, đó là hull
Hình 2.8 Các thành phần chính của một đường cong
Trang 28Biê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
Trang 292.3.3 Khái niệm xây dựng từ phần mềm
a Node:
Chương trình được tạo từ các node Để có được một khung cảnh, một hệ thống các node được sinh ra và tương tác với nhau Các node này có các tập thuộc tính (attribute) tạo ra các tính chất riêng của node Tập thuộc tính của node này có thể làm đầu vào cho một node khác, tạo ra mối quan hệ giữa các node Từ mối quan hệ này mà các đối tượng trong khung cảnh được xây dựng lên
b Các phương pháp đồ họa
• Đồ họa phụ thuộc – Dependency Graph:
Đồ họa phụ thuộc là một trong hai cách thể hiện khung cảnh ( cách còn lại là phân cấp khung cảnh – scene hierarchy)
[3] Dependency graph giống như một dãy các công việc xây dựng để làm thế nào có được khung cảnh bắt đầu từ một tập các công việc sơ đẳng chẳng hạn như: “tạo một hình cầu
A, di chuyển những CV, tạo đường cong B làm project curve ( đường cong định hướng) trên A để tạo ra một curve-on- surface ( đường cong nẳm trên surface), cắt tỉa hình cầu A
sử dụng đường cong trên surface C” và cứ như thế
DG lấy tên của nó từ sự liê kết giữa các node Node sau lấy output của node trước để làm input Các node liên kết với nhau thông qua sự truyền giá trị của tập thuộc tính của từng node
• Đồ thị mở có định hướng- Directed Acylic Graph:
Trình bày theo DAGcho phép tăng sự trực quan khi làm việc phân cấp các thành phần của khung cảnh (scene hierarchy) qua sự phân cấp của các node ( node cha- node con)
Trang 30Để tạo ra DAG có thể tạo ra hai node quan trọng để làm việc với vị trí của các thành phần trong khung cảnh và hình dạng của sự vật là:
Transform nodes- bảo đảm các thông tin dịch chuyển ( vị trí, quay, căn, chỉnh…) Ví dụ: Nếu dựng một bàn tay, dung một transform node để quay bàn tay và ngón tay, hơn là quay từng phần một
Shape nodes- Chỉ liên quan tới hình dạng và không cung cấp thông tin biến đổi hay thông tin gốc
Trang 31a Sử dụng CV để tạo đường cong
Có thể đặt các CV để tạo ra đường cong Các CV không phải là các điểm nằm trên đường cong nhưng có vai trò chỉ ra hình dạng của đường cong
Trang 32Lưu ý: số bậc của đường cong bằng số CV trừ 1 Ví dụ như một đường cong bậc 5 thì cần có 6 CV để tạo ra số nó Số bậc của đường cong càng cao thì độ trơn của đường cong càng tốt nhưng độ phức tạp càng tăng
b Sử dụng EP để tạo đường cong
EP là điểm nằm trên đường cong Tuy vẽ trực tiếp từ điểm nằm trên đường cong nhưng từ đó vẫn dựa vào phần khung này Mặt khác làm việc với CV tốt hơn và dễ dàng hơn rất nhiều so với làm việc trên EP
c Vẽ cung tròn
Có hai cách để vẽ một cung tròn :
• Input (A, B) => Out put ( O, r) với A, B là hai điểm đầu, cuối, r là bán kính
• Input ( A, M, P) => Out put (O, r) : Xác định input là 3 điểm đầu, cuối, và đỉnh của cung tròn, từ đó tính toán tâm, bán kính
Các đường cong được vẽ lên tới tọa độ 180 độ Tuy nhiên không thể tạo ra được đường tròn khi sử dụng công cụ tạo đường cong Bởi vì hai điểm đầu cuối của đường tròn cùng một vị trí Trong khi đó, vẽ cung tròn không cho bất kỳ hai điểm nào có cùng tọa độ một cách chính xác Để tạo ra đường tròn, các phần mềm đều có các tool hoặc action riêng
Trang 33Hình 2.10 Hai cách vẽ cung tròn
d Tạo đường cong từ các đường cong khác
Fit – Bspline: 1 node được tạo ra với input là một đường cong bậc 3 và output là đường cong bậc 1 Cách này hay sử dụng khi sử lại các đường cong, surface hoặc là các dữ liệu được số hóa từ các sản phẩm khác mà có các đường cong bậc 1
Các thuộc tính cần phải chú ý
Sai số chuyển đổi: Thường sai số là 0.1 cm
Đường cong input: là đường cong kiểu NURBS
Đường cong output: là đường cong kiểu NURBS
• Sao chép đường cong:
Có thể tạo ra một đường cong từ một đường cong khác bằng cách sao chép (Duplicate)
Có hai cách để sao chép: Một là bản sao và bản chính ở cùng một vị trí và hai là bản sao cách bản chính một khoảng nào đó Cách thứ hai gọi là Offset
Sao chép đường cong hay sử dụng để tạo các bề mặt có tính cân xứng, có các chi tiết lặp
đi lặp lại Ví dụ: tạo 3 đường cong song song với nhau cách nhau 1 khoảng Sau đó sử dụng phép Loft để tạo một suface (hình 2.11)
Trang 34Hình 2.11 Offset sử dụng trong phép Loft
2.4.2 Tạo bề mặt (surface)
Các surface là thành phần quan trọng để tạo ra hình dạng của mô hình Việc tạo ra các
bề mặt đều đi từ nguyên tắc chung là từ các đường cong liên kết với nhau
Điều cần chú ý ở đây là bề mặt sau khi tạo ra, nó thuộc loại gì: polygon, NURBS hay là Subdivision…
1 Tạo Surface từ đường cong
a Tạo mặt phẳng từ một đường cong
• Planar: Tạo ra một mặt phẳng từ một đường cong đóng hoặc là một đường cong khép kín hay một tập các đường cong khép kín
Trang 35Hình 2.12 Planar
• Revolve: hành động này phát huy hiệu quả đối với các surface đòi hỏi có tính đối xứng qua một trục nào đó ví dụ như khi tạo một cái cốc