Variable Expressions (Video Version)
-
0:02 - 0:03我們回來看溫斯頓
-
0:03 - 0:07現在我們有 x 和 y 兩個變數
-
0:07 - 0:09標示出溫斯頓的位置
-
0:09 - 0:11因此就能讓它上下移動
-
0:11 - 0:14來場溫斯頓派對!哇嗚!
-
0:14 - 0:16不錯喔!
-
0:16 - 0:19我們先複習這個程式碼的內容
再繼續下面的課程 -
0:19 - 0:22上層有 x 和 y 的變數
-
0:22 - 0:25儲存了溫斯頓的臉的中心位置
-
0:25 - 0:29我們用這一行
來製作臉的橢圓形 -
0:30 - 0:32接著我們將它的眼睛和嘴巴定位
-
0:32 - 0:34對照臉的中心位置
-
0:34 - 0:39減少或增加 x 和 y,確保眼睛
-
0:39 - 0:43在 50 像素與 100 像素的位置
-
0:44 - 0:45例如,嘴巴
-
0:45 - 0:49在臉中心向右 50 像素
-
0:49 - 0:54向下 40 像素的位置
-
0:56 - 1:00接著我們繼續
還有什麼能存成變數 -
1:00 - 1:03為了找出來,我要檢查每一行的程式碼
-
1:03 - 1:07找出以固定值「寫死」的數值
-
1:08 - 1:11那些數值是固定的
-
1:11 - 1:14而非變數或依變數
-
1:15 - 1:18讓我們看看,在第一次呼叫橢圓形的地方
-
1:18 - 1:22數值 300 和 300,是指寬和高
-
1:23 - 1:27我們可以將某些項目做成變數,像是 faceSize
-
1:27 - 1:33那麼 faceSize = 300
接著我們可以把 faceSize 傳遞進來 -
1:33 - 1:36現在,它就會讓值變成 300
-
1:37 - 1:41酷喔
我們繼續做下去 -
1:42 - 1:45這裡的每一步都運用 x、y 或 eyeSize
-
1:45 - 1:49嘴巴這邊,我們同樣有 150 的寬
-
1:49 - 1:51和150 的高
-
1:51 - 1:56我們可以把 mouthSize 寫成變數
例如 mouthSize = 150 -
1:57 - 2:00然後我們在這邊傳遞 mouthSize 的大小
-
2:00 - 2:02150 傳遞過來了
-
2:02 - 2:04因為變數就是這麼大
-
2:05 - 2:10我們已經做好了
現在我們就能輕易改變 faceSize -
2:11 - 2:16也能輕易改變 mouthSize
還能像那樣移動 -
2:17 - 2:19我們可以再次改變 eyeSize
-
2:19 - 2:21好了,真酷!
-
2:21 - 2:24但還有一個部分我不太喜歡
-
2:25 - 2:27那就是我改變 faceSize 的時候
-
2:29 - 2:34其實希望所有東西依據
faceSize來做改變 -
2:34 - 2:37如果我把 faceSize 做得像這麼小
-
2:38 - 2:41我想要它的眼睛和嘴巴也變的很小
-
2:41 - 2:44如果我讓 faceSize 是原來的一半
-
2:45 - 2:48眼睛和嘴巴也應該變成原本的一半
-
2:48 - 2:50不然看起來會很怪
-
2:50 - 2:53因為它的眼睛和嘴巴
對它的臉來說都太大了 -
2:53 - 2:55甚至看起來不像一體了
-
2:56 - 2:59因此我們想改變這些變數
-
3:00 - 3:02像是 mouthSize 和 eyeSize
-
3:02 - 3:05取決於 faceSize 的變數
-
3:06 - 3:09我們回來看那是什麼
-
3:09 - 3:11我們能做的就是
-
3:11 - 3:17讓這些值依據 faceSize 的值
-
3:17 - 3:22我們可以寫 mouthSize = faceSize/2
-
3:22 - 3:24在這裡用臉去做比例
-
3:24 - 3:28做成臉的一半
-
3:28 - 3:30如果你還不熟悉分數
-
3:30 - 3:32這裡有很多可汗學院的影片
-
3:32 - 3:36你可以複習要怎麼做分數
-
3:36 - 3:41接下來是 eyeSize,大概是 faceSize/4
-
3:41 - 3:44不是很完美,但看起來還不賴
-
3:44 - 3:477,還不錯
-
3:47 - 3:49如果你一開始用錯分數
-
3:49 - 3:51永遠都能改成更好的值
-
3:51 - 3:54只要一直試,就能找出最適合的數字
-
3:54 - 3:58好了,現在如果我們重新訂出臉的大小
-
3:58 - 4:03看看眼睛和嘴巴實際上是不是有跟著變化
-
4:03 - 4:04蠻酷的喔!
-
4:04 - 4:07但是,還有個部分有問題
-
4:07 - 4:10眼睛和嘴巴變小的時候
-
4:10 - 4:12不在臉上
-
4:12 - 4:16大小對了,問題是不在臉上
-
4:18 - 4:21就是下面這裡
-
4:21 - 4:24我們定位橢圓形的時候
-
4:25 - 4:31有 x - 50 和 y - 50
還有 x + 100 和 y - 60 -
4:32 - 4:36即使我們的臉只有 50 像素
-
4:36 - 4:41我們的眼睛還是在中央 -50 像素的位置
-
4:41 - 4:44那就會偏離臉了
-
4:44 - 4:48我們需要 50、100,還有這裡的這些數字
-
4:48 - 4:52每個都用分數和 faceSize 做出比例
-
4:52 - 4:54那麼當 faceSize 改變
-
4:54 - 4:59讓眼睛和嘴巴偏移的數字
-
4:59 - 5:01都應該跟著改變
-
5:02 - 5:05從第一個眼睛開始示範
-
5:05 - 5:08x - 50,所以 x - 50 像素
-
5:08 - 5:12這表示那需要在臉中央偏左 50 像素的位置
-
5:13 - 5:15現在我們希望運用分數
-
5:15 - 5:20那就變成 faceSize/6
-
5:20 - 5:22臉的 1/6 大
-
5:23 - 5:29酷喔,那麼 50 也一樣會變成 faceSize/6
-
5:30 - 5:31如果我們重新定義大小
-
5:32 - 5:35注意眼睛怎麼變得正好在對的位置上
-
5:36 - 5:38溫斯頓,很棒的眼睛!
-
5:39 - 5:41另一個眼睛也需要同樣的協助
-
5:41 - 5:48100 要變成 faceSize/3,也就是臉的1/3 大
-
5:48 - 5:5360 是臉的 1/5 大,那就是 faceSize/5
-
5:54 - 5:57太棒了
我們來重新做大小,很好 -
5:57 - 6:00我們的嘴巴也有點問題
-
6:00 - 6:02我們下來看看嘴巴
-
6:02 - 6:07或許也是 faceSize/6
-
6:07 - 6:10這個大概是 faceSize/7
-
6:11 - 6:16現在每個東西都按比例完成了
來檢查看看 -
6:16 - 6:19哇!現在我們可以讓溫斯頓變很小
-
6:19 - 6:22他的眼睛和嘴巴也還是在臉裡面!
-
6:23 - 6:27我相信溫斯頓也會很開心
-
6:27 - 6:28好了!耶!
-
6:28 - 6:30我們來複習剛剛做的事
-
6:31 - 6:33上面有我們的變數
-
6:33 - 6:37我們從變數開始,存成 200
-
6:37 - 6:40接著,我們讓 mouthSize 和 eyeSize 的變數
-
6:40 - 6:43依據那個數值,按比例變化
-
6:43 - 6:46也就是現在如果 faceSize 是 200
-
6:46 - 6:48mouthSize 就會變 100
-
6:48 - 6:50如果我們讓 faceSize 變 300
-
6:50 - 6:53mouthSize 就會馬上變成 150
-
6:54 - 6:56永遠都按照比例變化
-
6:57 - 7:00接下來,我們計算偏移量
-
7:00 - 7:01同樣運用比例
-
7:01 - 7:06因為我們希望偏移量也跟著改變
-
7:06 - 7:09按照 faceSize 的比例
-
7:09 - 7:10基本上我們希望成功
-
7:10 - 7:15所以我們只要有這個變數,就能影響每一個部分
-
7:15 - 7:18我們可以用變數和變數運算式來完成
-
7:20 - 7:21現在我們了解
-
7:21 - 7:24要如何讓變數依照其他變數的值而改變
-
7:24 - 7:26我們可以多做課程的練習
-
7:26 - 7:30來慶祝溫斯頓長大吧!
-
7:30 - 7:33長大,溫斯頓,繼續長大!
-
7:34 - 7:37別停!繼續長大!
Yi Yi Hsieh edited Chinese, Traditional subtitles for Variable Expressions (Video Version) | ||
Marssi Draw edited Chinese, Traditional subtitles for Variable Expressions (Video Version) | ||
Marssi Draw edited Chinese, Traditional subtitles for Variable Expressions (Video Version) | ||
Marssi Draw edited Chinese, Traditional subtitles for Variable Expressions (Video Version) | ||
Marssi Draw edited Chinese, Traditional subtitles for Variable Expressions (Video Version) |