hirax.net::Keywords::「関数」のブログ



2004-07-03[n年前へ]

青春18きっぷは定義式 

 今年の春の青春18切符のコピー

       √a = 18旅路(ルート)の中では、人はいつも18(age)である。
に対してのツッコミ
ちなみにこの公式には”落とし穴”があり、普通に解くと「a=324」と答えが出てしまいます。誰がどのような旅をしても心の中ではいつも18歳、と伝えたいのでしょうか。
を見る。

√a = 18  それは、"="の定義次第に違いない。このコピーの作者は実は数式処理系に堪能で、"="は、いわゆる等号"=="ではなく、代入の"="かもしれない。つまり、「√aというものは全て18が代入される」という手順を意味しているというのも自然かもしれない。
 そして、さらにこの式は"√"という演算子(もしくは関数)を定義する式であって、(例えばMathematicaなら)この式は
root(a_) := 18
なんていう内容を書いてある、とも自然に読むことができるだろう。すると、これは「ルートをとるとどんなaも全て18になる」という定義だ。もっと素直に言い換えれば、それはコピーそのままの「旅路(ルート)の中では、人は誰でも18(age)になる」である。そういう処理を行わせるものこそが「旅路(ルート)」というものなんだ、と高らかに定義・宣言する式である。

girls=evil そして、(「女の子=悪」の証明風に言うのなら)「人のルート(root=根底にあるもの)はそんな18才の頃のようなものだ」とさらに想像してみるのはどうだろうか。青春18きっぷのポスターに書かれた小さな式は「旅は人を18歳の頃の気分にさせる。そして、それこそが人の根底にあるものなんだ」という言葉だと勝手に想像してみるのだって面白いはずだ。

 青春18きっぷの公式から"a=324"なんてなんだか少しツマラナイ答えを導いてしまうのではなくて、もっと色んな想像をして色んな答えを導いてみるのも良いのじゃないかな、と思う。答えが(自分の知識の範疇で想像できる)一つだけなんていうのは「青春18きっぷ」には似合わない。もっと、色んな期待とともに線路の先を眺めた方が、きっと面白いことを見つけられるに違いない。

2004-08-07[n年前へ]

メモリ管理機能追加 

SurfaceplotGL Photoshopのプラグインを「通常のDLLを作るのと同じやりかた」で簡易に作成できるPDLSをバージョンアップ(9.6MB)しました。また、導入資料も少しだけ追記しました。添付プラグインも若干バージョンアップしたり、追加したりしています。右の画像はSurfaceplotGLプラグイン処理画面です。

 今回のバージョンアップでの大きな変更点は「New」「Delete」プラグインを追加し、「メモリ管理機能」を追加したことです。処理対象画像のサイズをフィルタ内で変更しつつ処理をしたり、マクロ内(もしくはマクロで作成した関数内)のみで有効なローカルメモリを(元処理対象画像と組み合わせながら)確保し、画像処理対象をそのローカルメモリに変更したり、ということができるようになります。例えば、マクロで(もちろんGUIからでも)

Def{FrameFile=C:\hoege.bmp}New{ // 左上端から128,128ピクセルの位置を原点として // 256*256のサイズ1チャンネル分を流用しながら // 新たなチャンネルを1チャンネル作成して、処理対象 // とする}LoadFromFile{ SourceFile=FrameFile // 新しく作成したチャンネルにファイルを読み込む // プリクラ処理のフレームとして使う}Impose{ // チャンネル間で合成処理をおこなって、プリクラ風の // 処理をする}Delete{ //メモリ解放して、 // プリクラ処理のフレームとして使ったエリアを捨てる}
 なんていう風に使ったりできるわけです。GUIから自動作成されたマクロ内で自由にメモリを確保・解放できるため、DLLとしてC言語などから作成したDLLと同様に、マクロで作成した関数を「それのみで閉じた完結した処理」として再利用することが容易になります。

 Photoshop等が仕事に欠かせなかったり、画像に限らず二次元の比較的大きなデータを処理したかったりする方はきっと重宝するのではないか、と思います。単にSurfaceplot等のプラグインを使ってみるだけでも良いでしょうし、C言語をほとんど知らない人でも、数分でPhotoshopのプラグインを量産できるのもお勧めなポイントです。ドキュメントが不足しているのはいつもの通りですが、使ってみたい方がある程度いるようでしたら、いっそのこと直接デモする説明会開催もアリですし。

 ちなみに、Adobe Photoshop 6.0以降Photoshop Elements, PaintShop Proでの動作を確認しています。

2004-10-11[n年前へ]

B型研究と血液型評価関数 

 型によるB型のためのB型の研究 B型対策(2). B型対策(2)ではそれぞれの血液型における「評価関数」の違いを考察していて面白い。そして、さらに異なる血液型間で評価関数を最大にする方法などが考察されている。
 「B型対策」には「見ず知らずのB型の直リンク・トラックバックはご遠慮ください」と書かれていて、(血液型がB型である私は)ちょっとリンクしづらい気分にもなるけれど、「血液型による評価関数」「評価空間」というアイデアがとても面白いので、(こっそり)リンクを張ってみよう。

 ところで、かつて某社の某部署では血液型を配属の参考(条件)にしていた。ウソのように聞こえるが、ホントの話だ。なんでも「A型は真面目に実験をする」「B型はズボラ」だという信念があるからだそうだ。信念と言うより偏見という気がしないでもないが…。
B型によるB型のためのB型の研究 (上巻)B型対策(2)B型対策

2005-02-11[n年前へ]

二倍角の公式の覚え方の×●バージョン 

 三角関数の加法定理、二倍角の公式

cos 2θ = cos θ * cos θ - sin θ * sinθ
を覚えるのに、「cos 2θ = こちんこちん - ちんちん」って…。数学の世界ってスゴイなぁ。私は…質実剛健ストイックな(以下省略)。  from らくがきボードでちょうど100番目にラクガキをした方。

2005-04-28[n年前へ]

Thinkpad 加速度センサのデータ取得 

 Windows\system32にあるsensor.dllの中身を覗いてみると、(Shockproof)GetAccelerometerDataとか、GetShockStatusなんていう関数がある。試しに逆コンパイルしてみる。そんなこんなの結果はこちらに。

C:\WINDOWS\system32>dumpbin.exe /EXPORTS sensor.dll 3 ShockproofGetAccelerometerData (00001610) 4 ShockproofGetAccelerometerDataEx (00001670) 7 ShockproofGetShockStatus (00001540)



■Powered by yagm.net