Quartz Composerの歩き方:RSS Feed 後編

| | コメント(0) | トラックバック(0)

引き続き、Quartz ComposerでRSS Feedパッチを使ったRSSリーダー(のよーなもの)の作り方です。

前回、RSSをダウンロードしてパースして最初のエントリーのタイトルと概要を表示することができるようになりました。実際にはRSSをパースして、エントリーの個数を調べて、個数分の表示をしたいところ。

エントリーの個数を調べるにはエントリーリストを数えればいい。
Structure Countパッチは構造体の個数を返してくれる。
前回作ったパッチのRSS FeedパッチのArticle ListからStructure CountパッチのStructureに繋ごう。15エントリーあるなら15とCountに出力される。あとは15件ループさせればいい。

という訳で、何かトリガーとなるものを作ろう。
Patch Timeパッチは現在の時間をカウントしてくれる。これと、Structure Countパッチで取得したエントリーの個数を使ってエントリーリストのインデックス番号を作ることにする。

計算はMathパッチにお任せ。
Initial Valueに初期値を突っ込んで、順番にオペレーションを実行してくれる。
今回は、

(現在時間 divide 10) modulo エントリーの個数

とゆー計算をさせてみる。
MathパッチのResulting Valueには10秒かけて1.0カウントアップされていくはずだ。途中の値は7.15645のように小数点以下の数字がついているので、Roundパッチで整数に丸めてしまおう。MathパッチのResultをRoundパッチのValueに接続する。そんでもってFloor Valueを前回のパッチのStructure Index MemberのIndexに接続する。そうすると、前回は最初のエントリーしか表示されなかったのが10秒おきに次々とエントリーが切り替わるはずだ。

最後にちょっとおまけ。
さっきのMathパッチでIndexに対して切り捨てたResulting Valueの小数点以下の値、何かに使えそうな気がしてきませんか。
BillboardパッチのWidthとかRotationとかに接続すると動きがついて面白い効果になる。
Mathパッチからの出力とRoundパッチの出力をまたまたJavaScriptパッチで加工して小数点以下のみにする。

outputs[0] = (inputs[0] - inputs[1]) + 0.75;

これをBillboardパッチのWidthに繋いでみた。エントリーが切り替わるタイミングでじわじわとこちらに向かってくるようなエフェクトになったと思う。

てなわけで、いかがでしょうか。
個人的には電子ブロックで遊んだ子供の頃の感覚がよみがえってきました。サンプルを分解してどうなっているのか調べたりするのもなかなか楽しい作業ですよ。
何はともあれ、お試しあれ。

トラックバック(0)

このブログ記事を参照しているブログ一覧: Quartz Composerの歩き方:RSS Feed 後編

このブログ記事に対するトラックバックURL: http://hogelab.net/mt4/mt-tb.cgi/735

コメントする

このブログ記事について

このページは、aniが2005年5月 8日 11:09に書いたブログ記事です。

ひとつ前のブログ記事は「Quartz Composerの歩き方:RSS Feed 前編」です。

次のブログ記事は「Quartz 2D Extreme」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.01a