2004-09-23[n年前へ]
■ブックマーク数と「待ち時間の限度」
昨日、「いくつくらいのサイトを巡回するか」という話になってブックマークの数を眺める。と、600位WWWCに入ってる。すでに404になってしまったサイトも多いし、実際に眺めるのは、その数分の一だろう。とはいえ、限られた時間の中で眺めようと思うと、クリックして二秒程度で反応がなければ「次のサイトへ」行ってしまうようになった。せっかちになったものだ。
各種アンテナサービスを使えばそんなことは気にならないのだろうけれど、勝手に切り抜かれたものを眺めるよりは自分自身で眺めてみたいしなぁ。
2004-12-10[n年前へ]
■ジャイアント馬場(ババ)と矢口真里(ヤグチ)が暮らす部屋
背が伸び縮みする「エイメスの部屋」
もし、壁に空いた小さな穴から光が漏れていたら迷わず覗く、それが人間だ。他人の部屋から何やら怪しげな声が聞こえれば、ドアに頭を押しつけて聞き耳をたてる。そのドアに小さな覗き穴が空いていれば、迷わず片目をつぶり、そしてもう片方の目を大きく開き穴の向こうの世界を覗く。もしも、その覗き穴の向こうが他人の家の浴室であれば、覗きの現行犯で逮捕されてしまかもしれないが、とにもかくにも覗き穴を除くのが人間なのである。「歩く好奇心」、好奇心が服を着ているのがイコール人間なのである。
そんな人間であるあなたの前に壁があり、壁の向こうには「謎の部屋」がある。そして、そのあなたと「謎の部屋」の間を遮る邪魔な壁に小さな覗き穴が空いていたら、あなたは一体どうするだろうか?そう、もちろんその穴から不思議な部屋の中のようすを覗いてみるに違いない。好奇心のかたまりとなって、その「謎の部屋」の中を眺めてみるに違いない。
というように、その「謎の部屋」を実際に覗いてみたのが下の二枚である。左は、部屋の中を覗いたようすを示すJavaアプレットであり、右はそのJavaアプレットを静止画像にしてみたものである。まずは、Javaアプレットを動かさず、ただ眺めてみることにしよう。
しかし、実はこの二人の身長は全く同じなのである。この「謎の部屋」は「エイメスの部屋(Ames room)」と呼ばれる特殊な作りになっていて(ペーパークラフトの模型の例)、部屋の中のどの場所に立っているかにより、(覗き穴の外から眺めた)身長がまるっきり違うように見えてしまうのである。部屋の左と右では実は覗き穴からの距離が違っているのだが、その距離に応じて部屋の高さを部屋の左右で変えることにより、その左右が奇妙な形状をした部屋が「覗き穴から眺めてみると」綺麗に四角い部屋に見えるのである。覗き穴の視点からの遠近感を「帳消し」にするような形状にすることで、「エイメスの部屋」を覗き穴から覗くと普通の四角い部屋にしか見えないわけである。
というわけで、「覗き穴」からは綺麗な部屋に見えるけれども、実は部屋の高さと距離が左右で違っているわけで、誰かが視点(覗き穴)から近い側(そして部屋の高さも低い)に行くと、その人は部屋に比べてひどく大きく・背が高く見える。そして、同じ人が視点(覗き穴)から遠い側(こちらの部屋の高さは高く作ってある)に行くと、その人は距離に応じて大きく作ってある部屋に比べて(その人自身は遠くにいるので小さく見える)ひどく小さくく・背が低く見える。そのため、例えば誰かが部屋をトコトコ歩いて行くようすを外から眺めていると、いきなりその人の背の高さが伸びたり縮んだりしてしまうように見える不思議な部屋「エイメスの部屋」ができあがるのだ。というわけで、上のJavaアプレットの場合は右に立っている巨大なジャイアント馬場は単に覗き穴から近いところに立っているだけで、実際には左に小さく見える矢口真里と同じ身長・同じ大きさなのである。ジャイアント馬場と矢口真里が一つ屋根の下で暮らしているわけではなく、実は同じ背格好の人間が二人立っているだけなのである。ちなみに、上のJavaアプレットは 「左クリック+マウス移動」: 物体回転 「Shit+マウス上下」: 視点移動・回転 「Ctrl+」: 「Sボタン」: 通常 → 平行法立体視 → 交差法立体視 というように動かして眺めることができるので、「エイメスの部屋」が特殊な作りになっていることがわかる。他の視点から眺めてみれば、この部屋は決して四角い普通の形ではなく、何とも奇妙な形であることが実感できることと思う。
* ちなみに、足の位置を眺めるとその距離感がつかめてしまうかもしれないが、それは単にポリゴン配置の都合でそんな風に手を抜いただけで、ちゃんと作ればそんな風には見えてしまうことはなく、巨大なジャイアント馬場と小さく可愛い矢口真里にしか見えなくなる。 「エイメスの部屋」を他の視点から眺めてしまうと、仏の四角い部屋でなく、奇妙な形状の部屋であることが判ってしまうということは、「エイメスの部屋」のトリック・魔術にひっかかるのはただ一点から眺めた場合だけなのである。違う視点に移動して、「エイメスの部屋」を覗き眺めてみれば、全然不思議でもない(ただヘンな形をした)部屋になるだけなのである。
他の視点から見た「エイメスの部屋」 視点位置(覗き穴)は右であり、(視点から見て左側に見える)手前の壁は視点から離れるほど高くなり、その一方で床は低くなっていることがわかる。 視点位置(覗き穴)は左であり、視点から見た左右がずいぶんと歪んだ形の部屋になっている。
あるいは、視点をわざわざ移動しなくても、「覗き穴」から片目でその部屋を眺めるのではなく両目でその部屋を眺めてみれば、その部屋の不思議は一瞬にして消え失せる。両目で、すなわち「二つの異なる視点から」その部屋を見るやいなや、頭の中にエイメスの部屋の真実の姿・立体形状・遠感が得られるハズである。部屋が奇妙な形をしていることや、部屋の中の人物が立っている場所がずいぶん離れていることなどを自然に感じとることができるに地がない。「エイメスの部屋Javaアプレット」で"S"ボタンを押して、立体表示させてみれば、(それまでは背の高さが違って見えた)二人が同じ背の高さに見え、単に二人の距離が近いか遠いかどうかの差だけであることがわかることと思う。
二つの目(視点から)でエイメスの部屋を眺めてみる (平行法)こんな風に、「エイメスの部屋」の中では本来同じ背丈の人が背が高く見えたりも背が低く見えたりもする。同じ人であっても、その人との距離や・その人の後ろに見える背景のせいで大きく見えたり小さく見えたりする。だから、片目をつぶり、もう片方の目だけで特殊な場所を覗いてみると「右に歩けばジャイアント馬場、左に歩けば矢口真里」なんていう魔術や幻想が生じたてしまったりするのである。 「背比べ」に絶対的な基準があるわけでもなく、「比べ」というからには、それは単に相対的な高低・大小の比較に過ぎない。となれば、こんな「エイメスの部屋」のような細工された場所、歪んだ世界を距離感を失いながら眺めてしまうと、途端にあるはずもない「ジャイアント馬場と矢口真里が暮らす部屋」が出現してしまう、というわけなのである。いや、「あるはずもない」と言ってしまうと、(今は亡き)ジャイアント馬場に失礼な話だが。
2006-01-09[n年前へ]
■Expose & zphotoライクの画像表示形式に変更
「Web2.0ライクな画像サムネイル生成」を参考にして、このページの画像表示を「お試し」で変えてみることにした。オリジナルからの変更点は、マウスの移動を少なくするために、「画像をクリックした時の画像表示位置」を元の画像がある場所(=マウスがいる場所)の上にしたことが一つ。そして、戻り方がわかりやすいように、ポインタが画像の中心から大きく外れた場合、自動的に元の表示に戻るようにしたこと。
Expose「意識」というよりは、気持ちとしてはzphoto「意識」。(コメントアウト部を戻して)onmouseoverでズームさせれば、よりzphotoライクになるかも。
2006-01-21[n年前へ]
■Lightbox JSで動画もWEB 2.0っぽく表示しよう
先日いじったLightbox JSをさらに少しいじり、動画に対応させてみました。例えば、右のアニメーションGIFの場合、画像をクリックすると、リンク先のQuicktimeフォーマットの動画をその場所でスムースに再生・表示する、というように動きます。つまりは、静止画と動画をほぼ同じような感覚で貼り付けることができるようにLightbox JSを改造してみた、というわけです。
とりあえず、Windows上のIE6, Firefox, OperaとMacOS X上のMozillaで「それっぽい動作」をするようです。 いまだに、「WEB 2.0」というものが何なのか全然わからない私なのですが、これが「Lightbox JSで動画もWEB 2.0っぽく表示する」という感じなんでしょうか? 頭の回転が早かったら、そういうことを理解できるんでしょうか…?
ちなみに、「マウスで掴んで物体をグリグリ動かすことができる」Quicktime VRを表示させてみると、「こんな感じになります(この文をクリックしてみて下さい)」 一例として、IE on Windowsで表示させてみた場合の画面表示結果を左に貼り付けておきます。
2006-02-19[n年前へ]
■(Thinkpad加速度センサにも対応した)万華鏡ソフト
後輩が「C言語」勉強のために作ってきた「万華鏡ソフト」に、少しだけ手を入れたものを公開しておきます。JPEGあるいはWindows Bitmapフォーマットの画像群を「(Thinkpad加速度センサにも対応して)万華鏡を通して眺めることができる」というソフトウェアです。(Kaleidoscopes.2006021901.lzh (561.kB)) 動作させているところを撮影した動画はこのようになります。画像を滑らかに切り替えながら、「綺麗な万華鏡の世界へあなたを誘う」という感じのものになります。
ちなみに、最近のThinkpadの加速度センサにも対応していますので、最近のThinkpad上で"KaleidoScopeThinkpad.exe"を動かせば、あなたがThinkpadを動かす仕草に応じてグリグリと万華鏡の中の世界が動きます。また、それ以外のPCでも"KaleidoScopeOther.exe"を動かせば、適当に万華鏡の世界を眺めることができます。
結構綺麗な画像が生成されるので、表示中の画面を(平面を埋めるように並べ)壁紙にする機能も加えてみました。「終了」「画像出力」「壁紙設定」などは「右クリックで表示されるメニュー」から選ぶようにしてあります。いっそのこと、「Flickr から適当な写真を色々取ってきて、万華鏡の世界に飾っておく」なんていう機能を加えてみても、面白いかもしれませんね。