TRƢỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH
KHOA CÔNG NGHỆ THÔNG TIN
THỰC HÀNH
NHẬP MÔN CÔNG NGHỆ THÔNG TIN
Lab 02:
ĐỐI TƢỢNG TRONG ALICE
Thời gian: 2 tiết
Giảng viên: ThS. Dương Thành Phết
1
NỘI DUNG
1. Khái niệm về đối tượng
2. Đối tượng trong Alice
3. Điều khiển đối tượng trong Alice
4. Phương thức trong Alice
5. Các loại phương thức
6. Phương thức có tham số
7. Bài tập
2
1. KHÁI NIỆM
Virtual World:
Mô phỏng 1 thế giới ảo tương tự như thế giới của
chúng ta
Nơi chứa tất cả các đối tượng và giúp chúng
tương tác với nhau
Objects (đối tƣợng):
Là thành phần trong virtual world
Được cung cấp sẳn trong thư viện
Gồm có 2 thành phần chính:
Properties: thuộc tính
Methods: phương thức/hành động
3
2. ĐỐI TƢỢNG TRONG ALICE
2.1. Thêm đối tƣợng vào cửa sổ thiết kế:
Trong cửa sổ world, click “Add object”
Chọn nhóm đối tượng chọn đối tượng trong thư viện
Bấm “Done” để hòan tất
4
2. ĐỐI TƢỢNG TRONG ALICE
2.2. Mô tả đối tƣợng:
Một đối tượng sẽ bao gồm các thuộc tính cơ bản sau:
5
2. ĐỐI TƢỢNG TRONG ALICE
2.3. Các hƣớng di chuyển
Mỗi đối tượng có thể di
chuyển theo 6 hướng:
Lên, xuống, trái, phải,
phía trước, phía sau.
Lưu ý: Hướng của object
chính là vị trí của object
trong virtual world không
phải hướng của người
xem
Lên
Trái
Phải
Trước
6
Xuống
2. ĐỐI TƢỢNG TRONG ALICE
2.4. Tâm của đối tƣợng
Mỗi đối tượng đều có điểm trung
tâm và 3 trục tọa độ
Giao của 3 trục tọa độ là điểm
trung tâm của đối tượng. Điểm
trung tâm sẽ khác nhau với
những đối tượng khác nhau
Đối tượng sẽ xoay quanh điểm
trung tâm và điểm trung tâm sẽ di
chuyển theo đối tượng
7
2. ĐỐI TƢỢNG TRONG ALICE
2.4. Tâm của đối tƣợng(tt)
Điểm
trung tâm
Điểm
trung tâm
8
Điểm
trung tâm
Lƣu ý: Tất cả các đối tượng con người đa số đều có
điểm trung tâm ở chân (đôi khi sẽ thay đổi với 1 số đối
tượng đặc biệt)
2. ĐỐI TƢỢNG TRONG ALICE
2.4. Tâm của đối tƣợng(tt)
3 trục tọa độ tương ứng với 3 màu xanh
lá, đỏ, xanh dương theo hệ thống trục
tọa độ toán học (X, Y, Z)
Đỏ (X): trục để đối tượng di
chuyển từ trái sang phải
Xanh lá (Y): trục để đối tượng di
chuyển từ dưới lên trên
Xanh dƣơng (Z): trục để di
chuyển đối tượng từ trước ra sau
9
3. ĐIỀU KHIỂN ĐỐI TƢỢNG
3.1. Single view
10
3. ĐIỀU KHIỂN ĐỐI TƢỢNG
3.2. Quad view
Khi đặt 1 đối tượng vào virtual world, rất khó để xác
định được vị trí cụ thể của đối tượng. Hai đối tượng nhìn
như ở cạnh nhau nhưng thật ra lại rất xa nhau.
Alice hỗ trợ chế độ xem ở nhiều góc độ, được gọi là
quad view để giải quyết vấn đề đó
11
3. ĐIỀU KHIỂN ĐỐI TƢỢNG
3.2. Quad view(tt)
Quad view Cho phép bạn nhìn đối tượng từ nhiều hướng (trên
xuống, từ bên phải, và từ phía trước mặt)
12
Nhìn từ phía trước, đối
tượng Alice và các bông hoa
thẳng hàng, nhưng thực tế
không phải như vậy
Sau khi điều chỉnh
4. PHƢƠNG THỨC TRONG ALICE
4.1 Khái niệm phƣơng thức
Method (phương thức) trong Alice là một (một
chuỗi) các hành động được đối tượng thực hiện
khi có yêu cầu
Một method có thể có (một/nhiều) các tham số
(parameter) truyền vào
Mỗi đối tượng đều có sẳn 1 số method chung cơ
bản (move, turn, roll…). Ngoài ra 1 số đối tượng
còn có các method đặc trưng riêng.
Ví dụ: Đối tượng husky (con chó) có method
WagTail (vẫy đuôi), SitStand (ngồi xuống)…
Đối tượng bird1 (con chim) có method fly (bay)…
13
4. PHƢƠNG THỨC TRONG ALICE
4.2 Các lệnh điều khiển trong phƣơng thức
Để các đối tượng có thể thực hiện 1 chuỗi các
hành động chúng phải được đặt trong các lệnh
điều khiển
Do in order: các method đặt trong lệnh điều khiển
này sẽ thực hiện theo trình tự từ trên xuống (được
thiết lập mặc định trong Alice)
Do together: các method đặt trong lệnh điều khiển
này sẽ thực hiện cùng lúc.
14
4. KHÁI NIỆM METHOD
4.2 Các lệnh điều khiển trong phƣơng thức(tt)
15
If/else: Câu lệnh rẽ nhánh
Loop: Vòng lặp dựa theo số lần thực hiện
While: Vòng lặp dựa theo điều kiện
For all to order: Tất cả các hành động tương tự nhau
trong danh sách (list) sẽ được thực hiện theo trình tự
For all together: Tất cả các hành động tương tự
nhau trong danh sách (list) sẽ được thực hiện cùng
lúc
Wait: Chương trình sẽ dừng lại
Print: In một chuỗi kí tự ra màn hình
//: Chú thích – sẽ không thể hiện khi chương trình
chạy
5. CÁC LOẠI PHƢƠNG THỨC
5.1. Built In Methodsa
Là những phương thức có sẳn trong từng đối tượng
Có 2 dạng:
Những phương thức chung cho tất cả các đối
tượng
Những phương thức riêng biệt cho từng đối
tượng
Giá trị của tham số
Method
Husky sẽ di chuyển lên 5 mét trong thời gian 2 giây
16
5. CÁC LOẠI PHƢƠNG THỨC
5.2. Class Level Method
Là những phương thức được thực hiện bởi từng
đối tượng.
Chúng ta có thể tạo thêm các method cho từng đối
tượng
Build in method là một dạng của Class level
method
VD: Muốn một con rồng (dragon) vỗ cánh thì
method “flapwing” sẽ được tạo ra chỉ cho riêng
đối tượng dragon
17
5. CÁC LOẠI PHƢƠNG THỨC
5.3. World Level Method
Là những phương thức giúp cho các đối tượng
tương tác với nhau
18
6. PHƢƠNG THỨC CÓ THAM SỐ
6.1. khái niệm về tham số
Parameter (tham số) là biến trong một method
(phương thức)
Khi chúng ta truyền giá trị vào tham số (giá trị đó
sẽ được gọi là đối số), phương thức sẽ nhận giá trị
đó và thực hiện hành động
19
6. PHƢƠNG THỨC CÓ THAM SỐ
6.2. Lý do sử dụng tham số
Giả sử có một kịch bản 1 con thỏ ngang ngược muốn
thách đấu với rùa, chó và khỉ.
Khi viết một hàm thachdau (thách đấu) bao gồm các
hành động:
-
Thỏ xoay mặt về phía nhân vật muốn thách đấu
-
Thỏ sẽ nhảy lên 2 lần và nói: “Này bạn, tôi muốn
thách đấu với bạn!”
-
Trong trường hợp này, thỏ thách đấu với cả 3 con
vật, ta phải viết 3 hàm thachdau.
Điều này sẽ gây lãng phí tài nguyên và công sức
20
6. PHƢƠNG THỨC CÓ THAM SỐ
6.2. Lý do sử dụng tham số(tt)
Trong trường hợp này, ta sẽ sử dụng tham số, và
tham số sẽ đại diện cho 3 con vật mà thỏ thách
đấu
Ta chỉ cần viết 1 method duy nhất, và truyền vào
từng giá trị tương ứng (giá trị trong trường hợp này là
3 con vật rùa, chó và khỉ) giúp tiết kiệm thời gian và
chi phí
21
6. PHƢƠNG THỨC CÓ THAM SỐ
6.3. Cách tạo tham số
Ta tạo 1 method “thachdau” với các hành động như
trong mô tả trên.
Bấm vào nút “Create new parameter”
22
6. PHƢƠNG THỨC CÓ THAM SỐ
6.3. Cách tạo tham số (tt)
Ta sẽ thấy 1 tham số kiểu “Obj” bên cạnh tên của
method
Kéo „obj‟ vào thay thế „turtle‟
23
6. PHƢƠNG THỨC CÓ THAM SỐ
6.3. Cách tạo tham số(tt)
24
Để sử dụng được method vừa tạo với tham số, ta
kéo thả và chọn đối số phù hợp như với những
method mặc định
7. BÀI TẬP
Bài tập 1:
Tạo 1 đọan phim hoạt hình ngắn “Kangaroo, mô tả kịch
bản như sau:
Trên nền sa mạc “sand”
Xuất hiện 1 con Kangaroo
Kangaroo di chuyển về trước 5 mét
Sau đó lùi lại 5 mét
Quẩy đuôi 1 vòng đồng thời nói “Crikey”
25