LEGO SPIKE Prime Essential 樂高機器人,LEGO MINDSTORMS Robot Inventor, EV3 ,樂高動力機械 BricQ Motion 程小奔Codey Rocky,mBot2,CyberPi 童芯派 mBlock5 慧編程, Python 專業教學,課程設計。 Scratch, MakeBlock產品 艾多美 Atomy 生活用品 NXT 樂高機器人:創意樂趣,隨心所欲!
SPIKE 樂高機器人
▼
我的網頁
▼
2012-09-21
NXT-G 的 Switch block 補充說明
探奇在『NXT樂高機器人:創意樂趣,隨心所欲』書本,第15章『猜猜我是誰』,提到如何增加Switch的選項,書中的範例只增加到三個選項。
也許有讀友注意到,如果增加的選項超過五個時,在Switch Block上方也只能顯示5個分頁標籤,除非在Switch中放入一些命令方塊,擴大Switch的圖示。
但是當Switch只有顯示5個分頁標籤,我們該如何切換第6個以後的分頁選項呢?
有兩種方式:
1. 請直接到參數區,點選Conditions的項次,橘色背景的選項表示現在Switch Block顯示的分頁。
2. 直接擴大Switch Block的圖示:
請將滑鼠游標移到Switch Block裡面的積木軌道,游標會變成左右箭頭狀(如下圖)
按住滑鼠左鍵,向右拖拉,就可以延長積木軌道,擴大Switch Block的圖示,上方的分頁標籤也都出現了。
在參數區Conditions的第6個選項是橘色背景,Switch Block的第6個分頁標籤也是變成淺橘色。
這種延長積木軌道的方法可以在任何地方使用,也可以用來縮短積木軌道,但是請大家小心拖移,萬一發生奇怪的狀況,例如積木軌道亂跳,請多多利用復原(Undo)回復原狀,避免程式錯亂。
另外要告訴大家的是如何在Switch Block中執行『多工程式』,
一般來說,Switch Block或是Loop Block的軌道都只有一條,由於橘色邊界的包圍,沒有足夠的空間放置多工的命令方塊。我們可以利用命令方塊的資料集線器『擴大』圖示。
首先在Switch Block中放入一些命令方塊,打開資料集線器。
(下圖中我以上面的Switch 分頁直接示範,其實打開一個命令方塊的資料集線器就可以了。)
接著把需要多工空間的資料集線器收起來。
放入你所需要多工的命令方塊。(下圖)
再按住Shift鍵,拖拉積木軌道將多工的命令方塊連接起來。(下圖)
最後記得將用來『擴大圖示範圍』的命令方塊刪除。
同樣的,請讀友小心延伸積木軌道,老話一句,發生特殊狀況時,請不用心急,使用復原(Undo)回歸到拉線前的狀態。隨時記住儲存你的程式,避免發生欲哭無淚的情形。
其實在Switch 或 Loop中也可以使用另一個Switch Block作為『擴大圖示範圍』的命令方塊,效果也不錯喔!
(看看『寵物娃娃』中,Switch包住Switch的效果,空間是不是很大呢?!)
如果擔心拉動積木軌道常常凸槌,建議讀友還是將你需要的多工程式以My Block包起來,直接放入My Block,可以省去不少麻煩喔!
祝大家玩得愉快!
2012.9.23更新:
收到海龜老師來信補充,
如果想將資料線拉到Switch Block裡面,需要取消Flat view,讓Switch Block變成分頁顯示方式。
下圖左邊是Flat view平面展開模式,所以資料線無法拉入Switch Block 內部(紅色圈框)。
下圖右邊是將Switch改為分頁顯示模式(取消Flat view),資料線可以分別拉入不同選項(綠色圈框)。
感謝海龜老師的指導補充,歡迎大家一起討論。
謝謝老師的教授
回覆刪除[版主回覆09/27/2012 07:59:48]謝謝老師的支持,教學相長,歡迎大家一起討論。