Tải bản đầy đủ (.doc) (18 trang)

Báo cáo thực tại ảo: Mô phỏng nhà A8 trường đại học công nghiệp Hà Nội 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 (647.22 KB, 18 trang )

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

BÁO CÁO BÀI TẬP LỚN
MÔN HỌC: Thực Tại Ảo
Đề tài: Mô phỏng nhà A8 trường đại học công nghiệp Hà Nội bằng VRML

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

Th.s. Vũ Minh Yến

Nhóm thực hiện:

Nhóm 7

Lớp:

HTTT1 – K7

Người thực hiện:

Phạm Trung Đoan
Đỗ Thị Thiệp
Nguyễn Văn Phú

Hà Nội 2015

1


LỜI MỞ ĐẦU


Trong xu thế tin học hóa toàn bộ cuộc sống đang diễn ra tấp lập hiện nay, lĩnh vực
đồ họa đóng góp một vai trò cực kỳ to lớn. Ở đâu ta cũng có thể tìm thấy những
minh họa cho việc áp dụng đồ họa 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 ngà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 nhằm huấn luyện phi công…) từ những
trường hợp đơn giản cho đến những 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ể dùng ngôn ngữ VRML (Virtual Reality
Modeling Language). Đây là một ngôn ngữ tương đối đơn giản nhưng cực kỳ hiệu
quả. Với VRML , kết hợp với trình duyệt IE, chome, firefox, chúng ta có thể mô
phỏng thế giới quanh ta một cách như ý. Trong thế giới đó các vật thể có các
tương tác và các cảm biến 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 này, chúng em đã dùng ngôn ngữ VRML để mô phỏng
toàn nhà A8 của trường ĐH Công Nghiệp Hà Nội. Tuy được sự hướng dẫn tận tình
của cô Vũ Minh Yến nhưng do thời gian và năng lực có hạn nên kết quả còn nhiều
thiếu sót. Tuy nhiên chúng em rất cảm ơn cô vì môn học và bài tập lớn này đã đem
lại cho chúng em nhiều hiểu biết về thế giới đồ họa, mở ra cho chúng em một
hướng đi mới trong lĩnh vực công nghê thông tin.

1


MỤC LỤC
Chương 1: Giới thiệu VRML..................................................................................3
1. Khái niệm..........................................................................................................3
2.Lịch sử ra đời và phát triển của VRML..............................................................3

3. Đặc điểm cơ bản của VRML.............................................................................4
4. Công cụ soạn thảo VRML.................................................................................4
Chương 2: Mô tả BTL và kết quả thực hiện........................................................5
1.Cửa......................................................................................................................5
2. Đèn.....................................................................................................................8
.............................................................................................................................10
3.Quạt..................................................................................................................10
4. Máy Chiếu.......................................................................................................11
5. Lọ hoa..............................................................................................................13
6.Bàn ghế.............................................................................................................14
7.Lớp....................................................................................................................15
8.Toàn cảnh nhà A8.............................................................................................15
9.Ảnh thực tế nhà A8...........................................................................................16
.............................................................................................................................17

2


Chương 1: Giới thiệu VRML
1. Khái niệm
VRML (Virtual Reality Modeling Language) là ngôn ngữ mô hình hóa
thực tại ảo, một định dạng tập tin được sử dụng trong việc mô tả thế giới thực và
các đối tượng đồ họa tương tác ba chiều, sử dụng mô hình phân cấp trong việc thể
hiện tương tác với các đối tượng của mô hình, đượ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) mà không phụ
thuộc vào hệ điều hành.
Các ứng dụng 3D của VRML có thể truyền đi một cách dễ dàng trên mạng
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ếu HTML là định dạng văn bản thì VRML là định dạng đối tượng 3D có
thể tương tác và điều khiển thế giới ảo.
Hiện nay, VRML có lợi thế là sự đơn giản, hỗ trợ dịch vụ Web3D, 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 đồ họa
ba chiều một cách nhanh chóng và chân thực nhất.
VRML là một trong những chuẩn trao đổi đa năng cho đồ họa ba chiều tích
hợp và truyền thông đa phương tiện, đượ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. 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 và cho
phép chạy trên môi trường web, VRML đã trở thành chuẩn ISO từ năm 1997.
2.Lịch sử ra đời và phát triển của VRML
Năm 1994, lần đầu tiên VRML được thảo luận tại hội nghị WWW, 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ại ả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ừ
3


“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 được
thành lập để tập trung vào xây dựng phiên bản VRML đầu tiên.
Vào tháng 3/ 1995, 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” gửi đế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 lấy
phiên bản năm 1996 của VRML 2.0 để đưa ra xem xét vào tháng 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.
3. Đặ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.
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.
4. Công cụ soạn thảo VRML
- Sử dụng vrmlpad 3.0 để soạn thảo
- Để hiển thị các file VRML, sử dụng trình duyệt Cortona 3D Viewer của
hãng Parallel Graphics. Phần mềm này sẽ giúp người dùng 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.
4


Chương 2: Mô tả BTL và kết quả thực hiện.
1.Cửa
Sử dụng các khối hộp để ghép lại thành hình cánh cửa.
Dùng CylinderSensor để quay cánh cửa quanh trụ bằng chuột.
DEF
{


canhphai Transform
children
[
DEF phai CylinderSensor
{
enabled
TRUE
maxAngle 0
minAngle -1.57
}
Transform
{
translation
0.2 0 0
children
[
Inline {url "Canh cua.wrl"}
]
}
]

}
ROUTE phai.rotation_changed TO canhphai.rotation

5


Ngoài ra còn các cảnh cửa ra vào, cửa nhà vệ sinh cũng tương tự

6



7


2. Đèn
Sử dụng PoinLight để tạo nguồn sang của bóng đèn. TouchSensor để bắt sự kiện
chạm vào bóng đèn và dùng Script thay đổi giá trị true, false để đèn sang và tắt
Transform {
children [
DEF anhsang PointLight {
intensity 0.1
color 1 1 1
location 0.125 -0.2 0
on FALSE
radius 100
}]
}
Transform {
translation -0.5 0 0
children [
DEF congtac TouchSensor {enabled TRUE }
Transform {
rotation 1 0 0 1.57
children [
DEF den1 Shape {
appearance Appearance {
material Material {
ambientIntensity 0
shininess 0

}
}
geometry Cylinder { height 4
radius 0.1
}
}
Transform {
translation 0.25 0 0
children [
DEF den2 Shape {
appearance Appearance {
material Material {
8


ambientIntensity 0
shininess 0
}
}
geometry Cylinder { height 4
radius 0.1
}
}
]
}
Transform {
translation 0.125 0 -0.1
rotation 1 0 0 1.57
children [
DEF khay Shape {

appearance Appearance {
material Material {
ambientIntensity 0
shininess 0
}
}
geometry Box {
size 0.5 0.1 4
}
}]
}
]
}
]
}
DEF ma Script {
eventIn SFBool turnOn
eventOut SFBool On
field SFBool turn FALSE
url ["javascript:
function turnOn(val){
if(val){
turn = !turn;
9


if(turn)
{
On= TRUE;
}

else
{
On=FALSE;
}
}
}
"]
}
ROUTE congtac.isActive TO ma.turnOn
ROUTE ma.On TO anhsang.on

3.Quạt
Sử dụng các khối hộp, tróp, trụ để tạo thành hình cái quạt, Dùng TouchSenser để
bắt sự kiện vạm vào điều khiển, TimeSenser để xác định thời gian sự kiện xảy ra,
nút nội suy OrientationInterpolator để quay quạt.
DEF TS1 TimeSensor
{
loop TRUE
startTime 0
stopTime 100
}
DEF OI1 OrientationInterpolator
10


{
key [0,0.33,0.66,1]
keyValue [0 1 0 0,0 1 0 2.09,0 1 0 4.18,0 1 0 6.28]
}
Transform {

translation -5.5 2 10.5
children [
Inline {
url ["control.wrl"]
}
DEF t1 TouchSensor{}
]
}
ROUTE t1.touchTime TO TS1.startTime
ROUTE TS1.fraction_changed TO OI1.set_fraction
ROUTE OI1.value_changed TO Quat1.rotation
ROUTE t1.touchTime TO TS1.stopTime

4. Máy Chiếu
11


Sử dụng TouchSenser để bắt sự kiện chạm, MoverTexture để phát video
Transform {
children [
#Màn hình
Transform {
translation 0 0 0
children [
DEF TS1 TouchSensor {}
Shape {
geometry Box {size 4 3 .01}
appearance Appearance {
texture DEF phim MovieTexture {
url "phim.mpg"

loop FALSE
}
}
}
]
}
]
}
ROUTE TS1.touchTime
ROUTE TS1.touchTime

TO phim.startTime
TO phim.stopTime

12


5. Lọ hoa
Sử dụng Extrusion để thể hiện đường cong của lọ hoa.
Shape {
appearance Appearance
{ material Material {
diffuseColor .23 .2 .43
specularColor .32 .4 .4
ambientIntensity .0733
shininess .54
}
}
geometry Extrusion {
crossSection [

1 0, 0.71 -0.71,
#tọa độ 8 điểm
0 -1, -0.71 -0.71,
-1 0, -0.71 0.71,
0 1, 0.71 0.71, 1 0
13


]
spine
[ 0 0 0, 0 .7 0, 0 2.1 0, 0 3 0] # độ cao chia 4 phần
scale
[ 0.7 0.7, 1 1 , 0.5 0.5 , 0.7 0.7 ]#scale tỉ lệ 4 phần
creaseAngle 1 # độ min 0=> 1
beginCap TRUE
#có nhìn thấy đáy
endCap FALSE
#không nhìn thấy nắp bình hoa
solid FALSE #ánh sáng ở đáy
}
}

6.Bàn ghế
Sử dụng các hình hộp và dán ảnh để ghép thành chiếc bàn.

14


7.Lớp


8.Toàn cảnh nhà A8

15


9.Ảnh thực tế nhà A8

16


17



×