*disclaimer
632735
Multimedia Annotation
- 文字、音声、画像で、注をつける。
Curiosity rover
CuriosityRover.zip(806)
CuriosityRover01.hsp(251)
; Curiosity Rover 01 ; copyleft 2017-07-12 sugiura@nagoya-u.jp ; テキストを画像として読み込んでおいて、 ; 文中の語句(のエリア)を指定して、注を出す。 ;----------------------------------------------------------------------------- ;-------------------------------------------------------------------------------------- ; 注に使う音声を読み込んで番号をつけておく mmload "narration.mp3", 0 mmload "mechanics.mp3", 1 mmload "curiosity.mp3", 2 mmload "algorithm.mp3", 3 mmload "traction.mp3", 4 mmload "jet.mp3", 5 mmload "pasadena.mp3", 6 mmload "extensive.mp3", 7 mmload "signs.mp3", 8 mmload "rugged.mp3", 9 mmload "level.mp3", 10 mmload "uneven.mp3", 11 mmload "incline.mp3", 12 ;------------------------------------------------------------------------------ buffer 0 ; 画像を事前に読み込んでおく場所の番号 picload "curiosity-text.jpg" ; 画像を読み込んで、bufferに入れておく ;---------------------------------- ; 注に使う画像に番号をつけていく buffer 2 picload "rover.jpg" buffer 3 picload "pasadena.jpg" ;------------------------------------------------------------------------------- screen 1, 660, 660 ; ウインドウの初期化 0番、ウインドウの大きさの指定 ; bufferを使って画像を読み込んだときは、明示的にウィンドウを指定する ;------------------------------------------ *main ; テキスト全体を表示 gsel 1 gmode 0, 657, 479 ; 表示モードと大きさ指定 pos 0,0 ; 左上角から、 gcopy 0, 0, 0, 657, 479 ; バッファ0の画像を表示 ;------------------------------------------ ; 一つ目のボタン: pos 127, 8 ; ボタンの位置 objsize 100, 20 ; ボタンにする画像のサイズ(大きな画像を読み込んでおいて、その一部を ; ボタンとして使用することもできる。) ; ボタンの位置とサイズで、ボタンの位置と大きさを指定することになる objimage 0, 127, 8, 127, 10, 127, 9 ; ボタン画像の指定をする。 ; 最初の番号が buffer番号 ; 次の数字の組み合わせが、表示する画像の中のボタンの左上の位置 ; その次の数字の組み合わせが、ボタンを押したときの位置(省略可) ; 最後の数字の組み合わせが、ボタンの上にマウスが来たときの位置(省略可) button gosub "", *mechanics ;----------------------------------------- ; 二つ目のボタン: pos 5, 30 ; 左上の座標 objsize 150, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 5, 30, 5, 32, 5, 31 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *curiosity ; ボタンとしての機能、文字は表示させないので""とだけ。 ;----------------------------------------- ; 3つ目のボタン: pos 62, 59 ; 左上の座標 objsize 100, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 62, 59, 62, 61, 62, 60 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *algorithm ; ボタンとしての機能、文字は表示させないので""とだけ。 ;----------------------------------------- ; 4つ目のボタン: pos 147, 80 ; 左上の座標 objsize 150, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 147, 80, 147, 82, 147, 81 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *traction ; ボタンとしての機能、文字は表示させないので""とだけ。 ;----------------------------------------- ; 五つ目のボタン: pos 178, 125 ; 左上の座標 objsize 250, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 178, 125, 178, 127, 178, 126 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *jet ; ボタンとしての機能、文字は表示させないので""とだけ。 pos 456, 124 ; 左上の座標 objsize 120, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 456, 124, 456, 126, 456, 125 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *pasadena pos 244, 191 ; 左上の座標 objsize 180, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 244, 191, 244, 193, 244, 192 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *extensive pos 465, 242 ; 左上の座標 objsize 135, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 465, 242, 465, 244, 465, 243 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *signs pos 6, 285 ; 左上の座標 objsize 65, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 6, 285, 6, 287, 6, 286 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *rugged pos 233, 286 ; 左上の座標 objsize 150, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 233, 286, 233, 288, 233, 287 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *level pos 493, 307 ; 左上の座標 objsize 145, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 493, 307, 493, 309, 493, 308 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *uneven pos 43, 328 ; 左上の座標 objsize 80, 20 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 0, 43, 328, 43, 330, 43, 329 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *incline ;------------------------------------------------------------------ ; 下部に、その他のボタンを配置 objimage -1 ; objimage命令をデフォルトに戻す(buttonをデフォルトに) *listen pos 580, 600 button gosub "Listen", *narration *stopspeech button gosub "Stop", *tomare *Quit button "Quit", *owari pos 0, 480 mes " Notes ----------------------------------------------------------------" ;------------------------------------------------------------------------- stop *owari end ; -------------------------------- sub --------------------------------------- *tomare mmstop return *narration mmplay 0 return ;-----具体的な注 *mechanics mmplay 1 pos 10, 510 mes "mechanics = 修理工" await 3000 pos 10, 510 picload "white.jpg", 1 return *curiosity mmplay 2 pos 10, 510 mes "Curiosity rover = NASAの火星探索車 Curiosity" gmode 1, 300, 168 ; モード1でメモリ間コピー, x幅ドット, y幅 gcopy 2, 0, 30, 300, 168 ; ウィンドウ番号, x座標, y座標, x幅ドット, y幅 ; 2番のバッファーがジョージアの画像 wait 300 pos 10, 510 picload "white.jpg", 1 return *algorithm mmplay 3 pos 10, 510 mes "algorithm = アルゴリズム、計算処理方法" wait 300 pos 10, 510 picload "white.jpg", 1 return *traction mmplay 4 pos 10, 510 mes "traction control = 駆動制御機構" wait 300 pos 10, 510 picload "white.jpg", 1 return *jet mmplay 5 pos 10, 510 mes "Jet Propulsion Laboratory = ジェット推進研究所" wait 300 pos 10, 510 picload "white.jpg", 1 return *pasadena mmplay 6 pos 10, 510 mes "Pasadena = ロサンジェルス北東の都市" gmode 1, 269, 188 ; モード1でメモリ間コピー, x幅ドット, y幅 gcopy 3, 0, 30, 269, 188 ; ウィンドウ番号, x座標, y座標, x幅ドット, y幅 ; 3番のバッファーがジョージアの画像 wait 300 pos 10, 510 picload "white.jpg", 1 return *extensive mmplay 7 pos 10, 510 mes "extensive testing = 広範囲にわたるテスト実施" wait 300 pos 10, 510 picload "white.jpg", 1 return *signs mmplay 8 pos 10, 510 mes "signs of wear = 磨り減った兆候、wear = 疲弊" wait 300 pos 10, 510 picload "white.jpg", 1 return *rugged mmplay 9 pos 10, 510 mes "rugged = ギザギザの" wait 300 pos 10, 510 picload "white.jpg", 1 return *level mmplay 10 pos 10, 510 mes "on level ground = 水平の地面では" wait 300 pos 10, 510 picload "white.jpg", 1 return *uneven mmplay 11 pos 10, 510 mes "uneven terrain = 不整地" wait 300 pos 10, 510 picload "white.jpg", 1 return *incline mmplay 12 pos 10, 510 mes "incline = 勾配" wait 300 pos 10, 510 picload "white.jpg", 1 return ; End of Script
I Have a Dream
IHaveADream1.hsp(276)
; I Have a Dream 1 ; copyleft 2017-07-11 sugiura@nagoya-u.jp ; テキストを画像として読み込んでおいて、 ; 文中の語句(のエリア)を指定して、注を出す。 ;----------------------------------------------------------------------------- ;-------------------------------------------------------------------------------------- ; 注に使う音声を読み込んで番号をつけておく mmload "georgia.mp3", 0 mmload "mississippi.mp3", 1 mmload "sweltering.mp3", 2 mmload "oppression.mp3", 3 ;-------------------------------------- mmload "IHaveADream.mp3", 30 ;------------------------------------------------------------------------------ buffer 1 ; 画像を事前に読み込んでおく場所の番号 picload "IHaveADream.png" ; 画像を読み込んで、bufferに入れておく ;---------------------------------- ; 注に使う画像に番号をつけていく buffer 2 picload "georgia.jpg" buffer 3 picload "mississippi.jpg" ;-------------------------------------- buffer 30 picload "king.jpg" ;------------------------------------------------------------------------------- screen 0,640,640 ; ウインドウの初期化 0番、ウインドウの大きさの指定 ; bufferを使って画像を読み込んだときは、明示的にウィンドウを指定する ;------------------------------------------ *main ; テキスト全体を表示 gmode 0, 640, 480 ; 表示モードと大きさ指定 pos 0,0 ; 左上角から、 gcopy 1,0,0 ; バッファ1の画像を表示 ;------------------------------------------ ; 一つ目のボタン:一行目 Georgia pos 436, 29 ; ボタンの位置 objsize 68, 24 ; ボタンにする画像のサイズ(大きな画像を読み込んでおいて、その一部を ; ボタンとして使用することもできる。) ; ボタンの位置とサイズで、ボタンの位置と大きさを指定することになる objimage 1, 436, 29, 436, 29, 436, 29 ; ボタン画像の指定をする。 ; 最初の番号が buffer番号 ; 次の数字の組み合わせが、表示する画像の中のボタンの左上の位置 ; その次の数字の組み合わせが、ボタンを押したときの位置(省略可) ; 最後の数字の組み合わせが、ボタンの上にマウスが来たときの位置(省略可) button gosub "", *georgia ; ボタン命令で、上で設定した画像がボタンとして使われる。 ;----------------------------------------- ; 二つ目のボタン:5行目 Mississippi pos 103, 154 ; 左上の座標 objsize 97, 24 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 1, 103, 154, 103, 154, 103, 154 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *mississippi ; ボタンとしての機能、文字は表示させないので""とだけ。 ;----------------------------------------- ; 3つ目のボタン:5行目 sweltering pos 270, 158 ; 左上の座標 objsize 100, 24 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 1, 270, 158, 270, 158, 270, 158 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *sweltering ; ボタンとしての機能、文字は表示させないので""とだけ。 ;----------------------------------------- ; 4つ目のボタン:6行目 sweltering pos 116, 190 ; 左上の座標 objsize 100, 24 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 1, 116, 190, 116, 190, 116, 190 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *sweltering ; ボタンとしての機能、文字は表示させないので""とだけ。 ;----------------------------------------- ; 五つ目のボタン:6行目 oppression pos 352, 190 ; 左上の座標 objsize 100, 24 ; そこから右へいくつ、下へいくつとエリアを指定 objimage 1, 352, 190, 352, 190, 352, 190 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *oppression ; ボタンとしての機能、文字は表示させないので""とだけ。 ;------------------------------------------------------------------ ; 下部に、その他のボタンを配置 objimage -1 ; objimage命令をデフォルトに戻す(buttonをデフォルトに) *stopspeech pos 520, 480 button gosub "stop", *tomare *Quit pos 380, 440 button "Quit", *owari pos 0, 480 mes " Notes ----------------------------------------------------------------" ;----------------------------------------- ; キング牧師のスピーチのボタン:右下隅 pos 500, 340 ; 左上の座標 gmode 1, 140, 140 ; モード1(通常)で、コピーする大きさは 140 x 140 gcopy 30, 0, 0, 140, 140 ; キング牧師の画像は30番、左上 0x0から、140x140までを使う objsize 140, 140 ; ボタンにするエリアのサイズを指定 objimage 0, 500, 340, 500, 340, 500, 340 ; その指定した範囲をオブジェクト(ボタン)とする button gosub "", *king ; ボタンとしての機能、文字は表示させないので""とだけ。 ;------------------------------------------------------------------------- stop *owari end ; -------------------------------- sub --------------------------------------- *king mmplay 30 return *tomare mmstop return *georgia ; dialog "Georgia", 0 mmplay 0 pos 10, 510 mes "ジョージア州です。" gmode 1, 125, 98 ; モード1でメモリ間コピー, x幅ドット, y幅 gcopy 2, 0, 0, 125, 98 ; ウィンドウ番号, x座標, y座標, x幅ドット, y幅 ; 2番のバッファーがジョージアの画像 await 4000 /* gmode 1, 640, 160 gcopy 4, 0, 0, 640, 160 ; ウィンドウ番号0番がメインウィンドウ ; その 3010, 510という座標は何もない(白い)ところ redraw 1, 0, 500, 640, 160 ; その白いところを取ってきて最初の部分を上書きする(で、消える) */ pos 10, 510 ; y軸500ピクセルより下が注釈部分 picload "white.jpg", 1 ; 注釈部分に白い画像を張り付けて、注を「消す」(見えないようにする) return *mississippi mmplay 1 pos 10, 510 mes "ミシシッピ州です。" gmode 1, 125, 98 gcopy 3, 0, 0, 125, 98 ; 3番のバッファーがミシシッピーの画像 await 4000 pos 10, 510 picload "white.jpg", 1 return *sweltering mmplay 2 pos 10, 510 mes "sweltering" mes "swelter の現在分詞形" mes "swelter = 暑くて汗をかく、うだる" await 3000 pos 10, 510 picload "white.jpg", 1 return *oppression mmplay 3 pos 10, 510 mes "oppression = 抑圧" await 3000 pos 10, 510 picload "white.jpg", 1 return ; End of Script
https://sugiura-ken.org/wiki/