2008-06-09[n年前へ]
■Photoshopプラグイン開発環境(PDLS)再び
Photoshopプラグイン開発環境 Photoshop DLL Linking System (PDLS) のページを(旧Pukiwiki)のファイルを元に書き直しました。PDFの説明ファイルの2004/08/07版はこちらになります。また、サンプルソース・バイナリファイルはこちらです。
AmetMultiのモットーは「ATOKから何でもできる」でしたが、PDLSのモットーは「Photoshopから(その人のレベルに応じて)何でもできる」でした。(Photoshopの規約は気にせず)Cを使ってネイティブ・プラグインを気軽に書くこともできれば、GUIを使った連続作業などで自動的にマクロ関数(プラグイン)をお手軽に作ることもできる。その人のレベルに応じて、ステップアップすることができるPhotoshopのプラグイン開発環境というわけです。
マクロ関数やネイティブ・プラグインを組み合わせれば、さらにカスタムプラグインを作ることもできます。また変数を使ったり演算や数式処理も使えて、NEWやDELETEといったマクロを使い、局所領域に対してだけ演算を行うこともできます。そして、マクロプラグインには自動的にGUIをかぶせることもできるのです(GUIコードを書かなくても、ダイアログで変数設定などを実行時にすることができる)。
また、表計算アプリとの連携や鳥瞰図表示のプラグインもついている……というテキトーな機能てんこ盛り、の環境です。Photoshop Elementなんかで使うこともできますので、画像処理で遊んでみたい人は一度使ってみても良いかもしれません。いつものように、SYSTEMコールもできるプラグインなので、つまりは何でもし放題のプラグイン環境です。使ったことのないPhotoshopユーザ(ないしはPhotoshopプラグイン互換の画像処理ソフトユーザ)は一度遊んでみると良いかもしれません。
2008-06-11[n年前へ]
■PDLSを使ってフォトショップとパワーポイントとエクセルを自由自在に使い倒す
「Photoshopプラグイン開発環境(PDLS)再び」で書いたように、Photoshopプラグイン開発環境(PDLS)のモットーは「Photoshopから(その人のレベルに応じて)何でもできる」です。モットーをもう一つ付け足すなら、楽しく遊ぶこともできるし、楽に(画像処理っぽい)仕事もサクサクできる、というものです。
……と書いただけではわかりにくいので、「PDLSを使ってフォトショップとパワーポイントとエクセルを使って、画像を三次元的に表示し、断面輝度変化をエクセルで折れ線グラフににし、パワーポイントで資料を作る」というようなデモ動画を作ってみました。それが下に張り付けた動画です。
Photoshopで画像を鳥瞰図表示したり、ピクセル単位のデータをセル形式で表示してエクセルにコピペしたり、そしてそれをパワーポイントで報告資料にしたり、といった作業がPDLSを使うと簡単にできる、かもしれません。
2008-06-18[n年前へ]
■続・ブレーキングとコーナリングの荷重問題
「ブレーキングとコーナリングの荷重問題」で描いたような単純な「車モデル」はないだろう。しかし、これくらい簡単な模式図にしないと、その動力学を頭の中で追いかけることが難しかったりする。残念ながら、ここまで簡単にしてしまった「車モデル」では、すでに「現実」の車とはあまりに異なっているに違いない。しかし、単純なモデルでなければ全然理解できない……ということも、これまた哀しき現実なのである。
上のようなモデルだと、たとえば、(上図の右下に描いたような)左コーナリング時には、右輪サスペンションには伸びる方向に働くようにして、その一方で、左輪サスペンションには、適度に縮むような制御をさせたくなる。そうすれば、左コーナリング時に、車から右に放り上げられるような心細い感覚を味あわないですむ。
あるいは、ブレーキ制動時には、前輪サスペンションを縮まないように伸ばしつつ、後輪サスペンションは縮ませ、車が前に浮かび上がらないようにしたくなる。そうすれば、車から前前方に放り出されるような怖い状態になることもない。
つまりは、サスペンションの動作を、その時々の状態に合わせて能動的に変化させるアクティブ制御(アクティブサスペンション)をかけたくなる。
かつて開発が盛んだったアクティブサスペンションの能力は驚異的だったが、コストが高くなかなか製品化されない、という話を聞く。そのため、製品化されていたのは、たとえば、減衰力を能動的に変化させるというように簡易・省略化したセミ・アクティブサスペンションくらいだったりした。一度、フルアクティブサスペンションの車に乗って、その操縦感覚を体験したいものだ、と思う。
ゲームセンターの体感カーゲームで、利用者が好きなように車の部品・構造・制御方式などを決めることができるようなものは無いのだろうか?あるいは、PCゲームではどうなのだろうか?もしあるのだとしたら、そんなゲームで遊んで見たい。
2008-06-25[n年前へ]
■BOSEの「スピーカ」と「サスペンションシステム」
板を振動させ空気の波を作り、さらには人の鼓膜を揺らし、音を人に感じさせるのがスピーカだ。つまりは、「揺れを作り、人に振動を感じさせる」のがスピーカである。そんなスピーカの有名メーカのひとつがBOSEだ。BOSEは、そんな「揺れを作り、人に振動を感じさせる」のとは逆の「揺れを抑え、人に振動を感じさせない」装置も作っている。たとえば、ノイズ・キャンセラーは、騒音を打ち消すシステムである。大きく耐えがたい騒音に対し、逆位相の音波を重ねることで、「人に騒音を感じさせない」わけだ。
他にもBOSEは「揺れを抑えることで、人に振動を感じさせない」システムを作っている。たとえば、ボーズ・アクティブサスペンションは「車の揺れを抑え、人に振動を感じさせないシステム」である。 これは、四輪の各サスペンションににリニア電磁モーターを装着し、路面状態・車体状態に応じて、 アクティブにサスペンションを制御することで、車体(とその中にいる乗客)に揺れを生じさせない、というシステムだ。
もちろん、他の自動車会社もそういったシステムの開発はずっと以前から行っている。しかし、コスト面などの課題などもあり、(セミ・アクティブ制御のサスペンション搭載車は増えているが)アクティブ制御のサスペンション搭載車はなかなか一般化してはいないようだ。
ボーズ・アクティブサスペンションは、このシステムを搭載した乗用車の動き・効果が公開されていて、とても面白い。コーナリング時の挙動などが、比較画像や動画などでわかりやすく説明されている(QuickTime動画)。荒れた路面の揺れを車体に伝えることなく、つまり、走る車(車体)の高さを一定に保ったり(QuickTime動画)、 あるいは、コーナリング時にも車体の傾き(ロール)を抑えることができているさま(QuickTime動画)を見ることができる。
それどころか、たとえば下の動画の後半のように、道路の路面状況の先読みをして、”極めて”アクティブに車をジャンプさせるデモさえ行っている。現実の商品として価値を感じるかどうかは別にして、技術デモとして眺めてみれば、何度眺め直してみても本当に面白く楽しい。TVドラマに出てくる未来を目の前に「ほら、ここにあるよ」と見せられた気持ちになる。
2008-06-28[n年前へ]
■「Mathematica開発者のウルフラム」と「ファインマン」
今週頭に「数式処理アプリケーションのMathematicaが最初にリリースされてから、今日で20年たちました」と、開発者Stephen WolframからMathematicaユーザにメールが送られてきた。スティーブン・ウルフラムが28才の時の1988年の6月23日にMathematica 1.0 が出荷されたのである。
For twenty years we've pursued our long-term vision for Mathematica.
Mathematicaは結局のところ、パターンマッチングを延々と行うプログラムである。データベースに登録されているパターン・規則にもどづいて、与えられた数式を置換していくことにより、Mathematicaは解(や所望の結果)を得る。
ところで、「ファインマン物理学」で有名なR.P.ファインマンはカリフォルニア工科大学で1983年から1985年までの間、計算機科学の講義(ファインマン計算機科学)をしている。その頃の学生がスティーブン・ウルフラムである。
ファインマンは「科学とは何か」の中で、「数学とはパターンにすぎない」「数学とはパターンを探すことだ」と端的に短く書き表している。この言葉を思い起こしながら、(おそらくそんな言葉を聞いていただろう)彼の学生でもあったウルフラムが「パターンマッチングによる数式処理アプリケーション」を商品化し市場に広まらせたのだ、と考えてみると何だか「面白い繋がり」を感じる。そんな繋がりを思い浮かべながら、Mathematicaの20年を集めたスクラップブック を眺めてみると、きっと楽しいと思う。
I'm looking forward to the next 20 years and hope that you'll continue to follow Mathematica on this exciting journey.
-- Stephen Wolfram