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),資料線可以分別拉入不同選項(綠色圈框)。





感謝海龜老師的指導補充,歡迎大家一起討論。