Tải bản đầy đủ (.docx) (25 trang)

BÀI TẬP LỚN CÔNG NGHỆ THỰC TẠI ẢO: “MÔ PHỎNG KHU CHỢ BẰNG VRML”

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 (912.22 KB, 25 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
-----------

BÀI TẬP LỚN
CÔNG NGHỆ THỰC TẠI ẢO
ĐỀ TÀI:

“MÔ PHỎNG KHU CHỢ BẰNG VRML”

Giảng viên hướng dẫn:

ThS .Vũ Đức Huy

Nhóm thực hiện:

Nhóm 21 - KTPM1-K7

Sinh viên thực hiện:

Mai Ngân Sơn
Nguyễn Thanh Hóa

Hà Nội, 12/2015

1


MỤC LỤC

2




LỜI NÓI ĐẦU
Trong xu thế tin học phát triển toàn bộ cuộc sống đang diễn ra tấp nập hiện nay, lĩnh
vực đồ hoạ đóng góp một vai trò cực kỳ to lớn. Ở đâu, ta cũng cú thể thấy những minh
hoạ cho việc áp dụng đồ hoạ máy tính vào cuộc sống : xử lý ảnh, phim hoạt hình, đặc biệt
là thực tại ảo(Virtual Reality_VR)..Thực tại ảo, là một nghành công nghệ cao, có ứng
dụng đặc biệt rộng rãi. Từ các trò chơi 3D cực kì sống động đến những mô phỏng phức
tạp trong công nghiệp và khoa học công nghệ(mô phỏng các vụ thử hạt nhân,mô phỏng
thế giới ảo dựng để huấn luỵện phi công…), từ những trường hợp đơn giản đến các
trường hợp cực kì quan trọng.
Một phần quan trọng của VR là mô phỏng thế giới thực xung quanh chúng ta. Để
làm được điều này, chúng ta có thể sử dụng ngôn ngữ VRML(Virtual Reality Modeling
Language). Đây là một ngôn ngữ tương đối đơn giản nhưmg cực kỳ hiệu quả.Với VRML,
kết hợp với trình duyệt IE, Google Chrome chúng ta có thể mô phỏng thế giới quanh ta
một cách như ý. Trong thế giới đó,có các vật thể y như thế giới thực. Ứng dụng của
VRML cũng rất rộng rói : mô phỏng nhà cửa,thiết kế các phòng học ảo, các thiết bị thí
nghiệm ảo, lập trình không gian ảo…
Trong bài tập lớn môn học này, nhóm em tìm hiểu về VRML và sử dụng ngôn ngữ
VRML để mô phỏng khu chợ. Nhóm em rất cảm ơn thầy Vũ Đức Huy về môn học và bài
tập lớn này đó đem lại cho em nhiều hiếu biết về thế giới đồ hoạ, mở ra cho chúng em
một hướng đi mới trong lĩnh vực tin học

3


CHƯƠNG I: GIỚI THIỆU VỀ THỰC TẠI ẢO
1. Giới thiệu
Thực tế ảo hay còn gọi là thực tại ảo (tiếng Anh là virtual reality, viết tắt là VR) là
thuật ngữ miêu tả một môi trường mô phỏng bằng máy tính. Đa phần các môi trường thực

tại ảo chủ yếu là hình ảnh hiển thị trên màn hình máy tính hay thông qua kính nhìn ba
chiều, tuy nhiên một vài mô phỏng cũng có thêm các loại giác quan khác như âm thanh
hay xúc giác.
Công nghệ thực tế ảo là một thuật ngữ mới xuất hiện khoảng đầu thập kỷ 90, nhưng
thực sự phát triển mạnh trong vòng vài năm trở lại đây. Theo dự đoán của Gartner (tổ
chức nghiên cứu thị trường toàn cầu), VR đứng đầu danh sách 10 công nghệ chiến lược
năm 2009. Tại Mỹ và châu Âu thực tế ảo (VR) đã và đang trở thành một công nghệ mũi
nhọn nhờ khả năng ứng dụng rộng rãi trong mọi lĩnh vực (nghiên cứu và công nghiệp,
giáo dục và đào tạo, du lịch, dịch vụ bất động sản, thương mại và giải trí,..) và tiềm năng
kinh tế, cũng như tính lưỡng dụng (trong dân dụng và quân sự) của nó.
Chúng ta có thể thấy định nghĩa sau đây của C. Burdea và P. Coiffet về VR là tương
đối chính xác: VR- Thực Tế Ảo là một hệ thống giao diện cấp cao giữa Người sử dụng và
Máy tính. Hệ thống này mô phỏng các sự vật và hiện tượng theo thời gian thực và tương
tác với người sử dụng qua tổng hợp các kênh cảm giác. Đó là ngũ giác gồm: thị giác,
thính giác, xúc giác, khứu giác, vị giác. Khái niệm này tương đối sát thực tế, tuy nhiên
"trăm nghe không bằng một thấy", cho dù bạn có tưởng tượng đến đâu cũng chỉ có thể
"hình dung" chứ không thể "cảm thấy" một VR.
2. Ba đặc tính chính của thực tại ảo
2 đặc tính chính của VR là Tương tác và Đắm chìm, đây là hai "I" (Interactive,
Immersion) mà nhiều người đã biết. Tuy nhiên VR cần có 1 đặc tính thứ 3 mà ít người để
ý tới. VR không chỉ là một hệ thống tương tác Người- Máy tính, mà các ứng dụng của nó
còn liên quan tới việc giải quyết các vấn đề thật trong kỹ thuật, y học, quân sự,...Các ứng
4


dụng này do các nhà phát triển VR thiết kế, điều này phụ thuộc rất nhiều vào khả năng
Tưởng tượng của con người, đó chính là đặc tính "I" (Imagination) thứ 3 của VR. Do đó
có thể coi VR là tổng hợp của 3 yếu tố: Tương tác- Đắm chìm- Tưởng tượng, (3 I trong
tiếng Anh: Interactive- Immersion- Imagination).
3. Các thành phần chính của một hệ thông thực tại ảo

Tổng quát một VR bao gồm những 5 thành phần sau: SW (phần mềm) và HW (phần
cứng), còn các thành phần khác: Mạng liên kết, Người dùng, Các ứng dụng
Phần cứng (Hardware)
Phần cứng của một VR bao gồm:
 Máy tính (PC hay Workstation với cấu hình đồ họa mạnh).
 Các thiết bị đầu vào (Input devices): Bộ dò vị trí (position tracking) để xác
định vị trí quan sát. Bộ giao diện định vị (Navigation interfaces) để di chuyển
vị trí người sử dụng. Bộ giao diện cử chỉ (Gesture interfaces) như găng tay dữ
liệu (data glove) để người sử dụng có thể điều khiển đối tượng.
 Các thiết bị đầu ra (Output devices): gồm hiển thị đồ họa (như màn hình,
HDM,..) để nhìn được đối tượng 3D nổi. Thiết bị âm thanh (loa) để nghe
được âm thanh vòm (như Hi-Fi, Surround,..). Bộ phản hồi cảm giác (Haptic
feedback như găng tay,..) để tạo xúc giác khi sờ, nắm đối tượng. Bộ phản hồi
xung lực (Force Feedback) để tạo lực tác động như khi đạp xe, đi đường
xóc,...
Phần mềm (Software)
Phần mềm luôn là linh hồn của VR cũng như đối với bất cứ một hệ thống máy tính hiện
đại nào. Về mặt nguyên tắc có thể dùng bất cứ ngôn ngữ lập trình hay phần mềm đồ họa
nào để mô hình hóa (modelling) và mô phỏng (simulation) các đối tượng của VR. Ví dụ
như các ngôn ngữ (có thể tìm miễn phí) OpenGL, C++, Java3D, VRML, X3D,...hay các
phần mềm thương mại như WorldToolKit, PeopleShop,... Phần mềm của bất kỳ VR nào
cũng phải bảo đảm 2 công dụng chính: Tạo hình vào Mô phỏng. Các đối tượng của VR
được mô hình hóa nhờ chính phần mềm này hay chuyển sang từ các mô hình 3D (thiết kế
5


nhờ các phần mềm CAD khác như AutoCAD, 3D Studio,..). Sau đó phần mềm VR phải
có khả năng mô phỏng động học, động lực học, và mô phỏng ứng xử của đối tượng.
4. Lịch sử phát triển
VR không phải là một phát minh mới, mà ngay từ năm 1962 Morton Heilig (Mỹ) đã

phát minh ra thiết bị mô phỏng SENSORAMA. Tuy nhiên cũng như nhiều ngành công
nghệ khác, VR chỉ thực sự được phát triển ứng dụng rộng rãi trong những năm gần đây
nhờ vào sự phát triển của tin học (phần mềm) và máy tính (phần cứng). Ngày nay VR đã
trở thành một ngành công nghiệp và thị trường VR tăng trưởng hàng năm khoảng 21% và
dự tính đạt khoảng 3,4 tỷ $ năm 2005 (theo Machover, 2004). => Theo dự đoán của
Gartner (tổ chức nghiên cứu thị trường toàn cầu), VR đứng đầu danh sách 10 công nghệ
chiến lược năm 2009.
5. Một số ứng dụng chính
Tại các nước phát triển, chúng ta có thể nhận thấy VR được ứng dụng trong mọi lĩnh
vực: Khoa học kỹ thuật, kiến trúc, quân sự, giải trí, du lịch, địa ốc... và đáp ứng mọi nhu
cầu: Nghiên cứu- Giáo dục- Thương mại-dịch vụ. Y học, du lịch là lĩnh vực ứng dụng
truyền thống của VR. Bên cạnh đó VR cũng được ứng dụng trong giáo dục, nghệ thuật,
giải trí, du lịch ảo (Virtual Tour), bất động sản... Trong lĩnh vực quân sự, VR cũng được
ứng dụng rất nhiều ở các nước phát triển. Bên cạnh các ứng dụng truyền thống ở trên,
cũng có một số ứng dụng mới nổi lên trong thời gian gần đây của VR như: VR ứng dụng
trong sản xuất, VR ứng dụng trong ngành rôbốt, VR ứng dụng trong hiển thị thông tin
(thăm dò dầu mỏ, hiển thị thông tin khối, ứng dụng cho ngành du lịch, ứng dụng cho thị
trường bất động sản....) VR có tiềm năng ứng dụng vô cùng lớn. Có thể nói tóm lại một
điều: Mọi lĩnh vực "có thật " trong cuộc sống đều có thể ứng dụng "thực tế ảo" để nghiên
cứu và phát triển hoàn thiện hơn.

6


CHƯƠNG II: GIỚI THIỆU VỀ VRML
1. Giới thiệu về VRML
VRML là gì ? VRML (Virtual Reality Modeling Language) là ngôn ngữ mô hình
hóa thực tế ảo, một định dạng tập tin được sử dụng trong việc mô tả các thế giới và các
đối tượng đồ họa tương tác ba chiều. VRML được thiết kế dùng trong môi trường
Internet, Intranet và các hệ thống máy khách cục bộ (local client). VRML còn được dự trù

trở thành một chuẩn trao dổi đa năng cho đồ họa ba chiều tích hợp và truyền thông đa
phương tiện. VRML có thể được sử dụng trong rất nhiều lĩnh vực ứng dụng chẳng hạn
như trực quan hóa các khái niệm khoa học và kỹ thuật, trình diễn đa phương tiện, giải trí
và giáo dục, hỗ trợ web và chia sẻ các thế giới ảo. Ra đời phiên bản đầu tiên vào tháng 10
năm 1994 (VRML 1.0), cho đến nay VRML đã phát triển tới phiên bản 2.0 với các chức
năng mạnh mẽ, nhanh chóng trở thành chuẩn phát triển cho nhiều chương trình đồ họa.
VRML là ngôn ngữ Interner 3D dùng để phát triển đồ họa 3D trên Web, có cấu trúc chặt
chẽ, với khả năng mạnh mẽ, giúp cho việc xây dựng các ứng dụng 3D một cách nhanh
chóng và chân thực nhất.
2. Định nghĩa về VRML
Ngôn ngữ VRML là ngôn ngữ sử dụng mô hình phân cấp trong việc thể hiện các
tương tác với các đối tượng của mô hình, VRML được sử dụng để phát triển những hình
ảnh 3D và qung cảnh trên Web. Các file VRML có kích thức nhỏ, thường không quá
1Mb. Ngôn ngữ mô hình hóa thực tại ảo VRML là một chuẩn không chính thức để mô tả
thực tế ảo mà không phụ thuộc vào hệ điều hành thông qua Internet. Chỉ với một file text
bạn có thể mô tả, tương tác, điều khiển một thế giới ảo mà không bị hạn chế nhiều.
VRML cho phép truyền đi trong mạng những hình ảnh 3D. Với kích thước khả nhỏ so với
băng thông, phần lớn giới hạn trong khoảng 100 - 200Kb nên các file VRML được truyền
đi một cách khá dễ dàng. Nếu HTML là định dạng văn bản thì VRML là định dạng đối
tượng 3D. Hiện nay VRML có lợi thế là sự đơn giản, hỗ trợ dịch vụ web3D.

7


3. Lịch sử ra đời và phát triển của VRML
VRML đã trở thành một ngôn ngữ chuẩn cho việc mô phỏng tương tác thế giới 3D
tren Web. Với mục đích xây dựng định dạng chuẩn cho phép mô tả thế giới thực trên máy
tính mà cho phép chạy trên môi trường web, VRML đã trở thành chuẩn ISO từ năm 1997.
VRML ra đời vào mùa xuân năm 1994 ở hội nghị WWW được tổ chức đầu tiên tại
Gieneva, Thụy Sĩ. Tim Berners-Lee và Dave Raggett đã tổ chức ra phiên họp có tên là

Birds of a Feather (BOF) để mô tả giao diện thực tế ảo trên WWW. Nhiều thành viên
tham dự phiên họp BOF đã mô tả nhiều dự án thực hiện việc xây dựng các công cụ hiển
thị đồ họa 3D cho phép có nhiều thao tác hữu ích trên Web. Những thành viên này đã nhất
trí đồng ý sự cần thiết cho các công cụ này có một ngôn ngữ chung, phổ biến cho đạnh
dạng, xác định việc mô tả thế giới 3D và các siêu liên kết WWW. Vì thế cụm từ “the
Virtual Reality Markup Language” ra đời, từ Markup sau đó đã được đổi thành Modelling
để phản ánh bản chất tự nhiên của VRML. Sau phiên họp BOF một thời gian ngắn thì tổ
chức www-vrml mailing list được thành lập để tập trung vào xây dựng phiên bản VRML
đầu tien. Sự hưởng ứng lời mời của tổ chức này kéo dài đến một tuần và có trên một
nghìn khách mời tham dự. Tại buổi họp chủ tịch Mark Pesce đã thông báo ý kiến của
mình là đưa ra phiên bản phác thảo xây dựng VRML đã có sẵn ở hội nghị mùa xuân năm
1994 được tổ chức mới cách đó 5 tháng. Bản phác thảo của Mark Pesce đã có được sự
đồng ý chung. Vào tháng 3/ 1995 thì có một thảo luận trên www-vrml mailing list liên
quan đến việc tạo ra những tương tác của người sử dụng với hoạt cảnh và tất cả mọi
người đều đi đến thống nhất ý kiến những thứ mới đưa ra đó thực sự cần thiết cho VRML.
Công ty Silicon Graphics cộng tác với hãng Sony Research và Mitra để đưa ra phiên bản
mới cho VRML. Bản đệ trình của Silicon Graphics có tên là Moving Worlds đến tổ chức
Request for Proposals cho việc xây dựng phiên bản mới VRML, bản đệ trình này là một
minh chứng cho sự cộng tác thành công của tất cả các thành viên của Silicon Graphics,
Sony và Mitra. Năm 1996 tại New Orleans, phiên bản đầu tiên của VRML 2.0 được đưa
ra. Vào tháng 7/1996 tổ chức tiều chuẩn quốc tế (ISO) đã thông nhất ý kiến phiên bản
năm 1996 của VRML 2.0 như là một đề xuất mà sẽ được đưa ra xem xet vào thang

8


4/1997. Sau khi bỏ phiếu về chuẩn ISO thì VRML97 được đưa ra như một chuẩn ISO vào
năm 1997.
4. Đặc điểm cơ bản của VRML
Tiếu chuẩn cho việc xác định đối tượng 3D, quang cảnh và cho sự liên kết các mô

hình với nhau là: Không phụ thuộc phần cứng: có thể chạy trên các máy tính do các nhà
sản xuất khác nhau chế tạo. Có thể mở rộng: có thể chấp nhận các lệnh mới do người sử
dụng thêm vào hoặc quy định. Thao tác được thế giới ảo thông qua môi trường Internet có
băng thông thấp. Cùng với VRML thì có thể xem thông tin trong mô hình 3D trên
Internet. VRML được thiết kế dành riêng cho việc hiển thị thế giới 3D và không phải là sự
mở rộng của HTML. HTML có khả năng hiển thị các đối tượng tĩnh và động, các đối
tượng multimedia cùng với các siêu liên kết khác đến các media khác như là văn bản, âm
thanh, phim và hình ảnh.
5. Các vấn đề cơ bản của VRML
Các thành phần cơ bản của VRML
Gồm các trình duyệt (Browses) và bộ soạn thảo dành riêng cho ngôn ngữ VRML.
Các file chỉ có thể đọc nếu hệ thống có trình duyệt VRML. Trình duyệt VRML cũng
giống như trình duyệt Internet( Internet Explorer hay Fire Fox) và được tích hợp trong các
trình duyệt này. Bộ soạn thảo VRML cho phép người dùng gõ mã VRML. Hiện nay có
nhiều bộ soạn thảo nhưng VRML Pad là khá thông dụng khi có thể cho xem trực tiếp kết
quả mà không cần qua trình duyệt Internet.
Công cụ hiển thị VRML
Để hiển thị các file VRML thì ta sử dụng chương trình Cortona VRML Client của
hãng Parallrl Graphics. Chương trình sẽ giúp bạn thuận tiện hơn khi xem cắc mô hình ảo
trên máy tính một cách trực quan sinh động.
Yêu cầu trước khi cài đặt Cortona VRML Client:
- Hệ điều hành Microsoft® Windows® ME/2000/XP

9


- Trình duyệt Web Internet Explorer 6.0 trở lên, Netscape Navigator 8.0 trở lên,
Mozilla Firefox 1.5 trở lên, Opera 8.5 trở lên
- CPU Pentium® II 300 MHz trở lên. - RAM tối thiểu 64 MB.
- Độ phân giải màn hình tối thiểu 1024x768.

- Card đồ họa hỗ trợ 3D và cài đặt DirectX 9
Cortona VRML Client tương thích với hầu hết các trình duyệt như Internet Explorer,
Netscape Browser, Mozilla, Mozilla Firefox và các công cụ văn phòng như Word,
PowerPoint...
Tính năng của Cortona VRML ClientCortona VRML Client sẽ trình diễn toàn bộ mô
hình 3D trên máy tính một cách hoàn hảo như khi người tạo ra đó. ứng dụng hoàn chỉnh
trên toàn bộ hiệu ứng trên nhiều hệ thống như Flash, DirectX9, MPEG4... Khi bạn truy
xuất vào một ứng dụng VRML, toàn bộ hình mô phỏng sẽ được trình diễn tương tác trên
nền 3D dạng mở. Rất ấn tượng và bắt mắt.
6. Hướng dẫn sử dụng Cortona 3D Viewer
Sau đây tôi sẽ hướng dẫn các bạn tìm hiểu các chức năng của Cortona 3D Viewer trình xem 3D. Đầu tiên đây là giao diện của Cortona 3D Viewer:

10


Tiếp theo tôi sẽ giải thích các chức năng trong Cortona 3D Viewer:
Nhóm lệnh di chuyển:
 Chế độ đi bộ, cho phép di chuyển như đi bộ.
 Chế độ bay, cho phép di chuyển như bay.
 Chế độ quan sát, cho phép di chuyển tự do.
Nhóm lệnh kiểu xoay và di chuyển:





di chuyển tới lui và quay trái phải.
di chuyển tới lui và ngang dọc.
quay góc nhìn lên xuống so với vật.
(Chỉ có thể kết hợp với chế độ quan sát) quan sát xung quanh vật


Hai nhóm lệnh trên phải kết hợp với nhau.
Nhóm lệnh liên quan đến góc nhìn:
 Di chuyển góc nhìn tới sát với vật thể đã chọn.
 Chỉnh góc nhìn song song so với mặt phẳng ngang của cảnh.
11


 Chuyển qua lại giữa các góc nhìn (nếu có nhiều góc nhìn)
 Reset lại góc nhìn.
 Chế độ xem toàn bộ cảnh.
Các nút lệnh chức năng khoá hay mở là do người lập trình tuỳ biến. Ngoài ra chúng
ta còn có các lệnh trong menu phải, ví dụ: chúng ta có thể tăng tốc độ di chuyển bằng
cách kích chuột phải / Speed / Fastest.
7. Cơ bản về ngôn ngữ VRML
7.1. Các đối tượng hình học cơ bản trong VRML
Các đối tượng hình học trong thế giới ảo thường được cấu tạo từ các đối tượng hình
học cơ bản như hình hộp, hình tròn, hình trụ, hình cầu … Và VRML cung cấp sẵn cho
chúng ta một số các đối tượng hình học đơn giản đó dưới dạng các nút như Box (hình
hộp), Cone (hình nón), Cylinder (hình trụ tròn), Sphere (hình cầu)… Event Architecture –
Kiến trúc sự kiện
7.2. Các kiểu dữ liệu trong VRML
Trong VRML, các nút có thể chứa các nút khác và có thể chứa các trường. Mỗi
trường có các kiểu dữ liệu khác nhau. Sau đây là mô tả của chúng:
 SFBool
Đây là giá trị kiểu logic, có thể nhận giá trị “TRUE” hay “FALSE”.
 SFColor & MFColor
SFColor là trường chứa màu sắc, được tạo nên từ ba số thực từ 0 đến 1 tương ứng
với các giá trị màu red, green và blue (RGB) (ví dụ: 0 1 0 là green). MFColor là một tập
hợp gồm các màu sắc (ví dụ: [0 1 0, 1 0 0, 0 0 1] là tập hợp gồm ba màu green, red và

blue).
 SFFloat & MFFloat
SFFloat là giá trị kiểu số thực (ví dụ: 7.5). MFFloat là một tập các giá trị số thực
(ví dụ: [1.0, 3.4, 76.54]).
12


 SFImage
SFImage là hình ảnh hai chiều được tạo nên từ các điểm ảnh. Nó bao gồm:
Hai số nguyên, đại diện chiều rộng và chiều cao của hình ảnh cũng chính là số điểm
nằm trên chiều rộng và chiều cao của hình.
Một số nguyên biểu thị số thành phần của hình ảnh. Số thành phần là 1 tức hình ảnh
trắng đen, là 2 cũng tương tự nhưng có thêm độ trong suốt, là 3 thì hình sẽ có màu (RGB),
và 4 là hình ảnh có màu kết hợp với độ trong suốt.
Sau đó, là các con số được biểu diễn dưới dạng thập lục phân đại diện cho màu
sắccủa từng điểm ảnh. Ví dụ 0xFF là màu trắng trong hình ảnh một thành phần và
0xFF00007F sẽ là màu đỏ nhạt trong hình ảnh bốn thành phần.
Các điểm được chỉ rõ theo thứ tự từ trái sang phải, từ trên xuống dưới.
Ví dụ: 1 2 1 0xFF 0x00 # Hình ảnh một thành phần gồm 2 điểm màu trắng và
đen.
 SFInt32 & MFInt32
Giá trị kiểu số nguyên hoặc dãy các số nguyên 32 bit có thể theo dạng thập phân
hoặc thập lục phân. Các số thập lục phân 32 bit bắt đầu bằng “0x”, ví dụ 0xFF là 255 hệ
thập phân.
 SFNode & MFNode
SFNode là một nút đơn lẻ và MFNode là danh sách các nút. Trường children với
nhiều nút là kiểu MFNode.
 SFRotation & MFRotation
Các trường này chỉ ra một phép quay xung quanh một trục, nó được tạo nên từ 4 số
thực, ba số thực đầu tiên chỉ rõ các toạ độ X, Y và Z cho các vectơ tương ứng với trục để

quay, số thứ tư là góc (tính bằng radian) để quay. SFRotation là một tập, MFRotation là
một danh sách các tập.
 SFString & MFString
Loại này chứa danh sách các kí tự trong tập kí tự utf-8, Nói đơn giản thì SFString
là một xâu kí tự và MFString là tập các xâu kí tự. Ví dụ SFString là “Hello” (các kí tự
13


nằm trong dấu nháy kép) còn MFString thì tham số truyền vào có dạng là [“Hello”
“VRML”].
 SFTime & MFTime
Kiểu dữ liệu đặc trưng cho một mốc thời gian hoặc danh sách các mốc thời gian.
 SFVec2f & MFVec2f
Các vectơ 2D đơn lẻ hoặc danh sách các vectơ 2D. Một vectơ 2D được tạo bởi một
cặp các số thực.
 SFVec3f & MFVec3f
Một vectơ 3D hoặc một danh sách các vectơ 3D. Một vectơ 3D là một bộ 3 số
thực.
7.3. Các nút trong VRML
VRML bao gồm 54 nút khác nhau và được phân loại làm 9 nhóm chính dựa
trên chức năng và các hàm của các nút. Bao gồm:
 Grouping Nodes: Nhóm các nút nhóm.
Anchor
Billboard
Collision
Group
Transform.
 Special Groups Nodes: Nhóm các nút nhóm đặc biệt.
Inline
LOD

Switch.
 Sensors Nodes: Nhóm các nút cảm biến.
14


CylinderSensor
PlaneSensor
ProximitySensor
SphereSensor
TimeSensor
TouchSensor
VisibilitySensor.
 Geometry Nodes: Nhóm các nút đối tượng hình học.
Box
Cone
Cylinder
ElevationGrid
Extrusion
IndexedFaceSet
IndexedLineSet
PointSet
Sphere
Text.
 Geometry Properties Nodes: Nhóm các nút thuộc tính hình học.
Color
Coordinate
Normal
TextureCoordinate.
 Appearance Nodes: Nhóm các nút mô tả hiển thị.
15



Appearance
FontStyle
ImageTexture
Material
MovieTexture
PixelTexture
TextureTransform.
 Interpolators Nodes: Nhóm các nút nội suy.
ColorInterpolator
CoordinateInterpolator
NormalInterpolator
OrientationInterpolator
PositionInterpolator
ScalarInterpolator.
 Bindable Nodes: Nhóm các nút có thể ghép được.
Background
Fog
NavigationInfo
Viewpoint.
7.4. Các nút nội suy
Các nút thuộc nhóm nút Interpolatorscó chức năng giữ các giá trị xen vào các trường khi
có sự kiện thay đổi giá trị các trường xảy ra (trừ các trường có giá trị kiểu logic). Các nút
thuộc nhóm nút này có cú pháp giống nhau (có cùng các trường) chỉ khác nhau về kiểu dữ
liệu.
16


Trong VRML cung cấp sẵn các nút Interpolators sau:

ColorInterpolator
CoordinateInterpolator
NormalInterpolator
OrientationInterpolator
PositionInterpolator
ScalarInterpolator
Mỗi nút đều có cú pháp như sau:
…Interpolator {
key […]
keyValue […]
}
Trong đó key là tập các giá trị đầu vào còn keyValue là tập các giá trị đầu ra. Trong
các nút Interpolators đều có một sự kiện đầu vào là set_fraction và sự kiện đầu ra là
value_changed, hai sự kiện này được nối với nhau tức là khi các nút này khi nhận được
một sự kiện thì nó cũng tạo ra một sự kiện. Sự kiện set_fraction xác định một giá trị key
và sự kiện đầu ra xác định một keyValue tương ứng với giá trị key.

17


CHƯƠNG 3. MÔ PHỎNG KHU CHỢ
1.

Đặt vấn đề
Thiết kế khu chợ với tổng diện tích là 400m2. Khu chợ là nơi diễn ra hoạt động

mua bán hay trao đổi các sản phẩm, hàng hóa khác nhau. Hàng hóa trong chợ rất đa dạng,
từ những loại sản phẩm dùng trong cuộc sống hàng ngày của mỗi người đến các chủng
loại sản phẩm khác.
Tất cả các không gian và phân khu chức năng:


6 dãy nhà
 Quầy bán
 Thùng hàng
 Thùng hoa quả
=> Tất cả tạo ra một quy trình khép kín, giúp công trình đi vào hoạt động tốt nhất.

18


2. Nội dung thực hiện
2.1. Market

2.2

Building

Building2

19


Building1

20


Buiding3

21



Building 4

Building 5

22


Building 6

2.3 Thùng hàng
Thùng1:

23


Thùng 2:

24


KẾT LUẬN
Qua thực hiện đề tài, kết quả đạt được:
 Nắm bắt được kiến thức các khái niệm cơ bản về công nghệ thực tại ảo, cũng
như các ứng dụng quan trọng và rỗng rãi của nó ngày nay.
 Nắm được kiến thức về ngôn ngữ VRML.
 Xây dựng thành công mô hình khu chợ.
 Sản phẩm trong môi trường ảo, khá giống và đồng nhất với các sản phẩm trong
thực tiễn.

 Thực hiện được các tương tác giữa người và các đồ vật trong môi trường ảo.
 Củng cố khả năng tư duy lập trình.
 Tăng cường khả năng làm việc theo nhóm.
Tuy đã cố gắng nỗ lực hết sức để thực hiện đề tài, nhưng vì kiến thức và
kinh nghiệm còn hạn hẹp, nên đề tài vẫn còn tồn tại nhiều điểm thiếu sót chưa
thể khắc phục được. Chúng em mong nhận được lời nhận xét, góp ý của thầy
giáo. Chúng em xin chân thành cảm ơn !

25


×