当サイトは2020年小学生のプログラミング必修化に向けて、関連する情報を纏めています。サイトリニューアルしました。

子供のプログラミング BASIC!を使ってみよう 8

子供のプログラミング BASIC!を使ってみよう 8

当サイトで紹介して、私が日本語化したアンドロイドアプリBASIC!のマニュアルの日本語版です。今回はグラフィックス命令(その3)についてです。尚、原文をそのまま訳すのでは無く、分かりやすく変更したり、実例の追加などをしていきます。

BASIC!MLの詳しい導入手順と初めての使い方はこちらの記事を参照してください。英語版のマニュアルはこちらにあります。

BASIC!のマニュアル グラフィックス命令抜粋 その3

グラフィックス設定命令 Groups(グループ)
グラフィカルオブジェクトをグループにまとめることができます。グループは、グラフィカルオブジェクトのリストです。グループに対して特定の操作を実行すると、グループ内の各オブジェクトに対して操作が実行されます。グループオブジェクトを作るには、オブジェクトナンバーを使ってグラフィカルオブジェクトをグループ化します。list命令を使って、オブジェクトの追加などを行います。
現在のバージョンでは、以下の命令でグループオブジェクトで使うことができます。

・Gr.move: すべてのオブジェクトをx、y方向に指定した値分移動します。
Gr.hide: すべてのオブジェクトを非表示します。
・Gr.show: すべてのオブジェクトを表示します。
・Gr.show.toggle:すべての非表示オブジェクトを表示するか、すべての表示オブジェクトを非表示します。

Gr.group <object_number_nvar> {、<obj_nexp>} …

グラフィカルオブジェクトのグループを作成します。

以下は2つの円をグループ化して右に動かしてから、3つの円をグループ化して下に動かす例
BASIC_MANUAL102

実行結果
move_circle

 

Gr.hide <object_number_nexp>

指定されたオブジェクト番号でオブジェクトを非表示にします。オブジェクトがグループの場合、グループ内のすべてのグラフィカルオブジェクトは非表示になります。

Gr.show <object_number_nexp>

指定されたオブジェクト番号でオブジェクトを表示します。オブジェクトがグループの場合、グループ内のすべてのグラフィカルオブジェクトは表示されます。

以下は2つの円をグループ化して右に動かしてから、1秒消してその後1秒表示して終わります。
BASIC_MANUAL103

実行結果
basic_sample104

グラフィックス設定命令 bitmap(ビットマップ)処理

pngファイルなどを使ってビットマップを作成し、アニメーションなどができます。ビットマップを作成するとリストが作成され、ポインターが返されますのでポインターを使って表示します。

Gr.bitmap.load <bitmap_ptr_nvar>、<file_name_sexp>

file_name_sexpで指定したファイルからビットマップが作成されます。ファイルはsdcard/rfo-basic/data/フォルダーにあるものとします。

Gr.bitmap.scale <new_bitmap_ptr_nvar>、<bitmap_ptr_nexp>、width、height 

ビットマップの大きさをwidth(幅)とheight(高さ)で指定した大きさにして、新たなビットマップを作成します。元のビットマップには影響ありません。

Gr.bitmap.draw <object_ptr_nvar>、<bitmap_ptr_nexp>、x、y

ビットマップの左上の座標をxとyで指定した位置にビットマップを描画します。GR.RENDER命令が実行されるまで表示されません。

以下は、BASIC!に添付されている”sdcard/rfo-basic/data/Cartman.png”を使用して、ビットマップを表示するサンプルです。最初に2倍にしてからx座標を50ずつ追加して300まで移動し、その後45度回転します。

BASIC_MANUAL104

実行結果

basic_sample105

今回は以上です。


最後まで記事をお読みいただきありがとうございます。
記事の改善に役立てたいと思いますので、よろしければアンケートにご協力ください。

記事内容についてお伺い


良く解る解る解りにくい部分がある解りにくい 


クロームブラウザーをご使用の方へ

当サイトへの訪問ありがとうございます。その際、グーグルクロームブラウザーをお使いの方にお知らせです。グーグルクロームブラウザーでは、2018年7月から、サイトにより以下の表示がブラウザーのアドレスバーに表示されます。当サイトでも表示されますが、心配ありませんのでご安心ください。
SSL案内1
これは、SSLと呼ばれるWebサイトとそのサイトを閲覧しているユーザとのやり取り(通信)を暗号化するための仕組みを使用していないためです。ネットショッピング、銀行サイトではパスワードやクレジットカードの情報を扱いますので、必須の仕組みです。当サイトでは、そのような情報を扱っておりませんので、暗号化は必須ではありませんが、訪問される方により安心していただけるように、SSL化を予定しております。このメッセージはSSL化完了まで念のため表示します。

BASICカテゴリの最新記事