2009-11-01から1ヶ月間の記事一覧

MS Agent TTS

MS Agentをインストールしておいたら、COMを叩いて、日本語文字列から音声の再生ができる。で、クラス化しといたら、他のコードから呼べて多少便利。例えば、「require 'tts'」しといて、何か時間がかかる作業が終った時、「Tts.speak "作業が終了しました"…

「画面」にdrawLine(x1, y1, x2, y2)して、pgm画像ファイルとして出力する C のソースコードを5分で書けるか?

頭の体操、ということで、試してみた。これくらい5分で書けなきゃ駄目だろ。 「drawLine.exe [x1] [y1] [x2] [y2]」で起動、(x1, y1) - (x2, y2) の線を仮想画面に描く。 画面サイズは決め打ち(320x240)で、pgmファイル(グレースケール255階調)を出力。 座標…

ん?

11/29(日)00:25に登録したエントリーが11/28(土)に入っちゃってる。「0時過ぎに書いた日記は前日のことを書いた日記に違いない」ということでこういう仕様になってるんだろーが、なんか違和感がある…わかりにくい…つか、何時に日が変わるんだよ。>>はてな# …

マクロの記録/再生をする簡単なフォーム

「1」〜「5」「クリア」「記録」「再生」の8個のボタン、1個のラベルをフォームに配置する。 数字ボタンを押すと、ラベル上にその数字が追加される。 「クリア」を押すとラベルがまっさらになる。 「記録」を押すと数字ボタンの押されたタイミング/履歴を保…

PictureBoxにマウスでフリーハンドの絵を描く様子を保存し、再生する。

昨日のコードに PictureBox を追加する。 「記録開始」ボタンを押すとマウス操作の記録開始。(ボタン表示は「保存」と変わる) 「1」〜「5」のボタンを押すと上の青いラベルに数字が挿入される。 下の白いキャンバス(PictureBox)で左ボタン押しつつマウスを動…

ぐぐって見つけた。

『VB.NET - Command(命令をクラスにする)』 http://hccweb1.bai.ne.jp/tsune-1/VisualBasic/command.html最初やむを得ない事情で VB.NET とかをいじっているのだけど、ふと GoF のデザインパターンの Command を適用したくなってぐぐってみたら、見つけた…

現在表示している窓を、"日時.jpg"というファイル名で保存するスクリプト。

まあ要するにウィンドウタイトルを指定して、jpgファイルに保存したり、「次ページボタン」を自動でマウスクリックさせながら、ソートされたファイル名で指定したディレクトリ配下に保存する、ということがやりたくて作成した。「自動マウスクリック」は Win…

beep音再生をクラス化してみる。

require 'beep' # ↓きらきら星の歌。 p1 = Beep.new 'ドドソソララソーファファミミレレドー' p2 = Beep.new 'ソソファファミミレー' p1.play;p2.play;p2.play;p1.play とかして再生したりできる様に。 #!/usr/bin/ruby -Ks # -*- coding: shift_jis -*- req…

ジオタグAPI

『Twitter API Wiki / Twitter REST API Method: statuses?update』 http://apiwiki.twitter.com/Twitter-REST-API-Method%3A-statuses%C2%A0updateまあ要するに設定画面で Enable geotagging にチェックを入れて、lat= と long= に位置情報を入れてポストす…

ビープ音で日の丸を演奏してみるテスト。

#!/usr/bin/ruby -Ks # -*- coding: shift_jis -*- require 'Win32API' beep = Win32API.new('kernel32', "Beep",'LL',"L") F = { 'ド'=>262,'レ'=>294,'ミ'=>330,'フ'=>349,'ソ'=>392,'ラ'=>440,'シ'=>494, 'ど'=>523,'れ'=>587,'み'=>659,'ふ'=>698,'そ'=>…

各音階の周波数を計算する。

いわゆる「ラ」の音が220Hz, 440Hz, 880Hzで、1オクターブ毎に2のN乗倍になってるので、下記で計算できる。 #!/usr/bin/ruby -Ks 26.times{|i| puts (2**(i/12.0)*220.0).round} ↑12は鍵盤の数。(「ド、ド#、レ、レ#、ミ、ファ、ファ#、ソ、…、シ」で12)結果…