微分・積分

posted in: 開発者ブログ | 0

日常のひとこまに3種類の「腕を下げる」という作品をアップしました.

腕を下げる1は上に上げた左上腕を2秒かけて180度反時計周りに回転して下げる動きです.

R LUA -180
R LUA 180 2

腕を下げる2は左上腕を0.02秒かけて1.8度反時計周りに回転するという命令を100回繰り返します.角速度は90(度/秒)なので,結果左上腕を反時計周りに角速度90(度/秒)で2秒間動かしています.

R LUA -180
REPEAT 100
RW LUA 1.8 0.02
END

つまり腕を下げる2は,腕を下げる1と同じ動きをするのですが,100分割して動かす点が異なります.この書き換えができると,微小時間(この場合0.02秒)ごとに角速度を変える処理も記述できるようになります.

腕を下げる3は左上腕を2秒かけて180度反時計周り回転するという点は「腕を下げる1」,「腕を下げる2」と同じですが,角速度が180(度/秒)から0(度/秒)まで2秒かけて線形で変化しています.ラジオ体操第一の最後の深呼吸の腕の動きはこんな感じでしょうか.

R LUA -180
SET DR [3.6 – 0.018]

 

REPEAT 100
RW LUA DR 0.02
SET DR [DR – 0.036]

 

END

腕を下げるというごくごく一般的な身体的活動を意識することなんて普通ないと思います.ピクトグラミングでは,それも立派な題材で,RW命令を使って角度,角速度,角加速度の概念や3者間の微分積分関係を扱えたりします.RW命令をMW命令に変えれば位置,速度,加速度の同等の関係が記述できることは言うまでもありません.

条件分岐以前

posted in: 開発者ブログ | 0

現在ピクトグラミングでは,テキスト型プログラミングを採用しています.ブロック型やアイコニック型も順次実装していく予定ですが,テキストを優先しているのには理由があり,その理由は改めて書きたいと思います.テキスト型でよく言われるのが,段階的に単元を学んでいく際に「条件分岐」の項でつまづきがちというのがあります.初学者にとって正しい条件式を設定するというハードルに加え,シンタックスエラーが発生しえないブロック型と異なり,エラー発生の要因となる条件式の記法の難しさもあるからです.

ピクトグラミングでは,逐次実行,並列実行,変数,繰返しまでの処理で,自分の身体や経験,知識に基づいて表現された体現ピクトグラム,社会的に広く認知されている人物のアクションを再現した流行ピクトグラム,思わず笑わずにはいられないユーモア・シュールピクトグラム,身の回りや世の中に役立ちそうな実用的なピクトグラムまで,様々なピクトグラムが作れます.

プログラミングを学ぶためというよりは,例えば,ピクトグラムを作ってみようというような切り口でまずは条件分岐以前の段階までで授業設計するのが良いと思っています.楽しんでいたら,いつのまにかプログラミングの基本概念も体得しまったみたいな.そのような授業設計,授業実践が色々とできるだろうと思っています.ぜひこういう切り口で実践しましたというのがありましたら,教えてください.リンク可能なコンテンツであれば,当サイトからリンクを張らせていただきたいです.

 

 

クロスブラウザ対応

posted in: 開発者ブログ | 0

Webアプリケーションを開発する上で難題となるのが,クロスブラウザ対応です.

要望が高いと思われた,画像,アニメーション保存,プログラムダウンロード,アップロード機能を急遽実装したこともあり,公開にあたり,早速とある先生からIE(インターネットエクスプローラ)でこれらの機能が使えないというご連絡をいただき,対応しました.詳しくはこちらをご覧ください.

ピクトグラミングは,特に教育機関で使っていただけることを重視していますのでクロスブラウザ対応の重要度は高いです.学校のPCでは,アプリケーションのインストールもままならず,数年前のOSをそのまま使っているところもあります.IEのver 7,8しか入っていませんという教室もあったりします.複数のブラウザがインストールされている環境で普段使いでないかもしれないブラウザを限定して利用させるのは,学習者にとって負担にもなります.

もしお使いの教育環境で問題がありましたら,ご連絡いただけますと助かります.

IE(インターネットエクスプローラ) 利用における画像,アニメーション,プログラムダウンロード機能,及びプログラムアップロード機能の対応

posted in: 更新情報 | 0

IE(インターネットエクスプローラ) 利用における画像,アニメーション,プログラムダウンロード機能,及びプログラムアップロード機能について対応しました.
保存方法が他のブラウザを使用した場合と異なりますので,詳しくは,こちらをご覧ください.

2017/12/11 ペンの太さ命令を追加

posted in: 更新情報 | 0

ピクトグラフィックスの線の太さを指定する命令

PENW arg1,

線の形状(端が丸,端が四角)を指定する命令
PEN ROUND, PEN SQUARE
 

を追加しました.

 

詳しくは,簡易マニュアルのページをごらんください.

日常のひとこまにある「段差注意」や「支え合い」のようなピクトグラムが作りやすくなります.

何を実装しないか

posted in: 開発者ブログ | 0

最新・更新情報に書きましたが,ピクトグラフィックスの線の太さを指定する命令PENW arg1,線の形状(端が丸,端が四角)を指定する命令PEN ROUND, PEN SQUAREを追加しました.こうしてみると線の色を指定できるようにしないのかとか,図形作成ソフトウェアでいう基本図形(円,楕円,矩形,三角形等)を描く命令は実装しないのですかという質問が自然に聞かれそうですが,それはする予定はありません.

以前プログラミング・情報教育の専門家が集まる学会で発表した時にも,ピクトグラムを自由に複数生成させてピクトグラム間でインタラクションできるようにしないのかとか,新たに描画した図形も人型ピクトグラムと同等の操作(回転,移動等)ができるようにしないのかという質問をたくさん受けました.実装しようと思えばできるのですが,その機能を実装する優先度は自分の中では低かったりします.

初期キャラクタが人型ピクトグラムなプログラミング学習アプリケーションを目指すのではなく,あくまでピクトグラムを創る,自分で自分or自分の化身をコードする(ピクトアニメーション),必要なものは自分で動いて描く(ピクトグラフィックス:タートルグラフィックスに相当)という位置づけにすることで,他のプログラミング入門用と言われる各種アプリケーションと差別化していきたいと考えています.線の色に関しても,これを自由に指定にすることで,ピクトグラムのデザインガイドラインを大きく逸脱したお絵かきソフトのようにならないようにしたいのです.

そもそも,線の太さを指定する命令も実装してなかったのは,それなりに理由があったのですが,今回公開してから考えが変わりまして,早速実装しました.公開してみなさんの意見や感想を聞く重要さを改めて認識しています.

今回の機能追加で,実在するピクトグラムがはるかに描きやすくなりました.下にある「段差注意」のピクトグラムは,段差を線の太さ10の折れ線で表現しています.ちなみに人型ピクトグラム自身で人型ピクトグラムの分身を描くこともできます.

なぜ人型ピクトグラム?

posted in: 開発者ブログ | 0

なぜ人型ピクトグラムに着目と聞かれることがあります.これも理由は多々あるのですが,それは順次書いていくとして,一つあるのは,非常口のピクトグラムで有名な太田幸夫さんが「ユニバーサル・コミュニケーションデザインの認識と実践」のWebページで述べられている中の次の一節からきている投影(projection)の話です.

(非常口ピクトグラムの下端を)”閉じない場合は、走る人型を囲む空間が見る人を包む空間とつながって走る人は見る人の投影になる。”

人が人型ピクトグラムに対して投影するならば,人型ピクトグラムが人に投影しても良いと思ったわけです.それにより双方にとって互恵的な関係が構築できるのではと.

ピクトグラムの投影に関係する効果は,心理学系の研究者と共同で研究してみたいです(どなたかご関心のある方はいらっしゃいませんか?).