{{ 'fb_in_app_browser_popup.desc' | translate }} {{ 'fb_in_app_browser_popup.copy_link' | translate }}
{{ 'in_app_browser_popup.desc' | translate }}
{{word('consent_desc')}} {{word('read_more')}}
{{setting.description}}
{{ childProduct.title_translations | translateModel }}
{{ getChildVariationShorthand(childProduct.child_variation) }}
{{ getSelectedItemDetail(selectedChildProduct, item).childProductName }} x {{ selectedChildProduct.quantity || 1 }}
{{ getSelectedItemDetail(selectedChildProduct, item).childVariationName }}
功課大綱
1. G-Sensor應用練習
功課內容
1. 我們用影片中保持平衡的遊戲來熟悉G-Sensor數值的變化。
小黑盤原本保持水平,當有傾斜時,往傾斜的方向會亮起紅燈。
先練習前後左右四個方向的傾斜就好,試著自己做做看,然後匯出用手機測試成果,是不是和影片中一樣。
參考解答說明
1. 參考解答Lesson10(.aia檔)
我們從Lesson09開始,另存專案新名稱為「Lesson10」,App名稱為「GSensor應用」。
Lesson09「畫面編排」中的元件都保留,只是稍微調整一下位置。
然後加進了「滑桿」調整靈敏度和「標籤」顯示靈敏度。
另外還要一個「計時器」,「計時間隔」設定為100,我們想要每0.1秒偵測一下當下的傾斜度。
和一個按紐啟動「計時器」。
2. 在開始製作前,我們可以用Lesson09的app觀察一下當小黑盤前後左右傾斜時G-Sensor的變化。
我們以蜂鳴器孔在左邊為基準。
可以發現,在水平時,Gx和Gy幾乎是0、Gz差不多是1。
從水平往前翻轉時,Gy保持在0左右、Gx從0慢慢變成-1。
從水平往後翻轉時,Gx從0慢慢變成1。
同理,從水平往左右翻轉時,Gx幾乎保持在0左右,而Gy會從0往-1變小(往左翻轉)。
或Gy從0往1變大(往右翻轉)。
3. 前後左右傾斜時G-Sensor數值的變化已經知道了,我們還需要知道顯示燈號的號碼。
想要用甚麼燈號來表示前後左右其實都可以,這裡我們是用前(36928)、後(521)、左(4104)、右(32769)來表示。
接下來進入「程式設計」。
圖為完整程式方塊。
4. 當我們前後左右轉動小黑盤時,超過某個傾斜角度就會亮起相對應的燈號。
這個傾斜的程度在這裡我們視為靈敏度,靈敏度高的時候,只要一點傾斜就會亮燈,靈敏度高的時候,傾斜角度要大一點才會亮燈。
這個傾斜角度就是Gx或Gy的數值變化量。
「滑桿」元件屬性中已經設定了從0.1到0.5的範圍來代表靈敏度,由移動「滑桿」來控制,我們只要小數點後一位就好。
Gx往後傾斜從水平到垂直期間的數值是從0到1,若靈敏度是0.1,表示只要傾斜9度就會亮燈。
當設定好靈敏度,按「平衡偵測」按鈕啟動計時器,計時器就會每0.1秒偵測一次目前的傾斜度來判斷要亮什麼燈號。
5. 接下來以Gx來說明。
當往後傾斜超過設定的靈敏度時(譬如靈敏度設定為0.1),小黑盤就會亮起朝傾斜方向的燈號(亮燈號碼為521)。
但當往前傾斜時,Gx值是從0到-1,所以是要超過-0.1時要亮燈,亮燈號碼為36928。
Gy部分也是如此。
6. 最後,保持水平時(Gx和Gy的值在設定的靈敏度以內時)不要有亮燈。
以靈敏度為0.1為例,同時滿足-0.1<Gx<0.1和-0.1<Gy<0.1的條件時,就要把燈關掉。
7. 以上就是這次回家功課的說明。