Mac Fanの付録冊子「学べるアプリ」で紹介されていた「Tinkerblocks」が面白そうだったので購入してみました
どんなアプリ?
ブロックを組み合わせてプログラミングができるアプリです。iPhone/iPadに対応しています。タプレット・スマホのセンサーやカメラを利用したプログラムが簡単に作れます。対象年齢は6歳以上です
例えば・・・
・笑顔を検知すると写真を撮影する
・特定の場所に来たら音を鳴らす
・明るくなったら音楽を鳴らす
などなど
センサーブロックを使えば簡単な条件分岐が行えます(制限時間以内にセンサーで値を取得できた場合とできなかった場合)。繰り返し処理はプログラム全体の無制限のループのみなので、複雑な処理はできません。実行できるブロックは8個までです
画面説明
ホーム画面
起動時の画面はこれです。右半分がプロジェクト一覧。このエリアは縦にスクロールします。新規作成は+ボタンです
左にスワイプすればプロジェクトの削除、鉛筆ボタンで編集、上矢印のボタンでプロジェクトをメールで送ることができます
左下の「My Macic Eight」は特集プロジェクトという扱いのようです。これはバージョンアップなどで差し替えられるのかもしれませんね
プログラム作成画面
左のツールエリアからコードエリアにブロックをドラッグすれば追加、ツールエリアにドラッグすれば削除できます
ブロックごとに詳細設定があります。ブロックを配置した後にタップすると、詳細設定が行えます
右上の緑の▷ボタンでプログラムを実行できます
実行モード
実行モードは3つ用意されています
1回だけ実行 | |
プログラム全体を繰り返して実行 | |
タップしたブロックだけ実行 |
ブロックのカテゴリ
ブロックのカテゴリは4つあります
- 入力/出力
- コントロール
- センサー
- エフェクト
ブロックの種類
入力/出力
音を録音します(録音時間は1〜8秒から1秒刻みで選べます) | |
音を再生します。再生する音は、最後に録音した音、今までにこのアプリで録音した音、ミュージックライブラリの中から選べます(最長8秒再生) | |
写真撮影をします。フロントカメラとバックカメラのどちらを利用するかを選べます | |
写真を表示します。最後に撮影した写真とカメラロールの写真から選べます | |
動画を撮影します(録画時間は1〜5秒から1秒刻みで選べます) | |
動画を再生します。最後に撮影した動画とカメラロールの動画から選べます(最長5秒再生) | |
実行画面を指定した色で塗りつぶします(あらかじめ用意されている9色から選べます) | |
テキストをタイプライターで入力するように1文字ずつ表示します。日本語も表示できます。絵文字はちょっと変になりますが表示できます |
コントロール
このブロックにブロックを複数つなげれば、その中からランダムに選んで実行することができます | |
ユーザーがボタンをタップするまで処理を停止します | |
カウントダウンを表示をします(1〜20) | |
タイマーを表示します。2秒ほどカウントした後に次のブロックに処理が移動します。それ以降もタイマーをカウントし続けます |
センサー
センサーは制限時間以内に条件を満たすかどうかで処理を分岐することができます
条件分岐しない場合:あらかじめ位置情報を保存しておき、その場所に来た時に次のブロックに制御が移ります | |
条件分岐する場合:あらかじめ位置情報を保存しておき、その場所に来た時にTrueの処理、制限時間以内にその場所に来ていない場合はFalseの処理を実行します |
条件分岐しない場合:あらかじめ端末の傾きを保存しておき、その傾きになった時に次のブロックに制御が移ります | |
条件分岐する場合:あらかじめ端末の傾きを保存しておき、その傾きになった時にTrueの処理、制限時間以内にその傾きになっていない場合はFalseの処理を実行します |
条件分岐しない場合:端末を振ると次のブロックに処理が移ります | |
条件分岐する場合:端末を振った時にTrueの処理、制限時間以内に端末を振っていない場合はFalseの処理を実行します |
条件分岐しない場合:顔を認識すると次のブロックに処理が移ります。カメラはフロント/バックから選べます | |
条件分岐する場合:顔を認識した時にTrueの処理、制限時間以内に顔を認識しなかった場合はFalseの処理を実行します。カメラはフロント/バックから選べます |
条件分岐しない場合:笑顔を認識すると次のブロックに処理が移ります。カメラはフロント/バックから選べます | |
条件分岐する場合:笑顔を認識した時にTrueの処理、制限時間以内に笑顔を認識しなかった場合はFalseの処理を実行します。カメラはフロント/バックから選べます |
条件分岐しない場合:動きを認識すると次のブロックに処理が移ります。カメラはフロント/バックから選べます | |
条件分岐する場合:動きを認識した時にTrueの処理、制限時間以内に動きを認識しなかった場合はFalseの処理を実行します。カメラはフロント/バックから選べます |
条件分岐しない場合:明るさ(暗さ)の変化を認識すると次のブロックに処理が移ります。カメラはフロント/バックから選べます | |
条件分岐する場合:明るさ(暗さ)を認識した時にTrueの処理、制限時間以内に明るさ(暗さ)を認識しなかった場合はFalseの処理を実行します。カメラはフロント/バックから選べます |
条件分岐しない場合:指定した色を認識すると次のブロックに処理が移ります。カメラはフロント/バックから選べます | |
条件分岐する場合:指定した色を認識した時にTrueの処理、制限時間以内に色を認識しなかった場合はFalseの処理を実行します。カメラはフロント/バックから選べます |
条件分岐しない場合:指定した音量を認識すると次のブロックに処理が移ります | |
条件分岐する場合:指定した音量を認識した時にTrueの処理、制限時間以内に音量を認識しなかった場合はFalseの処理を実行します |
エフェクト
用意されてている13個の中から選択したアイコンを表示します。アイコンがドット絵で画面全体に表示されます | |
17個の定型文の中から選択したテキストを表示します | |
18個のサウンドの中から選択したサウンドを鳴らします。音符も用意されているので繋げれば簡単なメロディを鳴らすこともできます |
これらのブロックを並べるだけでセンサーをつかったプログラムが簡単に作れます。アイデア次第で面白いものが作れそうですね