TONPOOBLOG 移転のお知らせ

これまで本URL(http://tonpooblog.blogspot.com/)で運営してきたこのTONPOOBLOGですが、この度下記の新URLに移転することとなりました。

http://www.tonpoo.com/blog/

今後とも上記URLにて、変わらぬご愛顧をお願い致します。

TONPOOBLOG管理人:Tonpoo.com

2009年5月29日金曜日

Tweener: TextShortcuts

「超訳:Tweenerドキュメント&言語リファレンス」の翻訳作業の中で、TweenerのTextShortcutsについてやってた時に知ったこと。Tweenerって、テキストフィールドの文字列までトゥイーンできるんですね!どういうことかというと、こういうこと↓

Tweener 1.31.66 を試す(8) ~TextShortcuts~【閃光的網站・弛緩複合体 -Review Division-】

「_text」プロパティとかおもしろいなあ。これ、今度使おう。

MovieClip.scrollRectプロパティ

「超訳:Tweenerドキュメント&言語リファレンス」の翻訳作業を進める中で、MovieClip.scrollRectプロパティというものの存在を知った。

import flash.geom.Rectangle;

//ステージ上にムービークリップ(灰色・100x300)を生成
var mc:MovieClip = this.createEmptyMovieClip("movie_mc",this.getNextHighestDepth());
mc.beginFill(0x999999);
mc.moveTo(0,0);
mc.lineTo(100,0);
mc.lineTo(100,300);
mc.lineTo(0,300);
mc.endFill();

//生成したムービークリップの中にテキストフィールドを生成し、ダミーテキストを表示
var txt:TextField = mc.createTextField("movie_txt",mc.getNextHighestDepth(),0,0,100,300);
txt.wordWrap = true;
txt.multiline = true;
txt.text = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.";

//scrollRectとして設定するためのRectangleオブジェクトを生成
var rect:Rectangle = new Rectangle(0,0,mc._width,100);

//生成したムービークリップのscrollRectとしてrectを設定
mc.scrollRect = rect;
//scrollRectプロパティを設定したムービークリップのcachaAsBitmapプロパティをtrueに設定
mc.cacheAsBitmap = true;


ここまでだとマスクと何ら変わりない。scrollRectの「scrollって何?」って思ったら、こういうことらしい↓

this.onMouseDown = function():Void{
    this.onEnterFrame = function():Void{
        //scrollRectに設定したRectangleオブジェクトのyプロパティを変更
        rect.y ++;
        //scrollRectオブジェクトを再設定
        mc.scrollRect = rect;
    };
};

this.onMouseUp = function():Void{
    delete this.onEnterFrame;
};


おお、スクロールする!うん、割とこれは便利かもしれないですね。今後、活用しよう。

ちなみにTweenerの特殊プロパティを使ってscrollRectをトゥイーンさせた例は下記の通り。
import flash.geom.Rectangle;
import caurina.transitions.Tweener;
import caurina.transitions.properties.DisplayShortcuts;
DisplayShortcuts.init();

//ステージ上にムービークリップ(灰色・100x300)を生成
var mc:MovieClip = this.createEmptyMovieClip("movie_mc",this.getNextHighestDepth());
mc.beginFill(0x999999);
mc.moveTo(0,0);
mc.lineTo(100,0);
mc.lineTo(100,300);
mc.lineTo(0,300);
mc.endFill();

//生成したムービークリップの中にテキストフィールドを生成し、ダミーテキストを表示
var txt:TextField = mc.createTextField("movie_txt",mc.getNextHighestDepth(),0,0,100,300);
txt.wordWrap = true;
txt.multiline = true;
txt.text = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.";

//scrollRectとして設定するためのRectangleオブジェクトを生成
var rect:Rectangle = new Rectangle(0,0,mc._width,100);
mc.scrollRect =rect;
//scrollRectプロパティを設定したムービークリップのcachaAsBitmapプロパティをtrueに設定
mc.cacheAsBitmap = true;

//Tweenerの特殊プロパティを使ってscrollRectを操作
this.onMouseDown = function():Void{
    Tweener.addTween(mc,{
        _scrollRect:rect,
        _scrollRect_y:(mc._height),
        time:2
    });
};

Googleのコラボレーションツール

Googleが「メール、IM(インスタントメッセージング)、ドキュメント共有などを統合したリアルタイムのコミュニケーション、コラボレーションサービス。」とやらを開発者向けに公開したそうです。

リアルタイムのコンテンツ共有:Google、リアルタイムコラボレーションツール「Google Wave」を発表 - ITmedia News

そのうちこれを使ってプロジェクトを進めたりするようになるかもしれませんね。

2009年5月28日木曜日

Yahoo! Analytics, もとい・・・

Yahoo! JAPAN謹製のアクセス解析サービス(のベータ版)が公開されたようです。

Yahoo!アクセス解析

Google Analyticsの対抗馬となりうるでしょうか。

2009年5月27日水曜日

オンラインシンセサイザー??

「実際の楽器を操作する感じで音楽が制作できてしまう」という、フリーのオンラインサービスがあるそうです:

Hobnox - Audiotool

なんというか、Flashで作られた、よくできたシンセのようなもの(?)であることまではわかったんですが、肝心の使い方がよくわからないので、楽器としての性能については不明です。

元ネタはこちらのブログの記事から。チュートリアルムービーも載ってます:

とんでもない音楽系ウェブアプリが出た - Hobnox Audiotool | DIGITAL DJ

2009年5月26日火曜日

SPAM?

携帯に以下のようなメールが来た。
件名:無題
本文:もちろん(親指を挙げてる絵文字)仕事が一段落したら伺います(人が走っている絵文字)

差出人はアドレス帳に登録のないアドレス。SPAM?むむむ、謎です。

2009年5月20日水曜日

配列の(浅い)コピー

ActionScriptで配列をコピーする方法について。

Flash CS4 Professional ActionScript 2.0

下記のように単に元配列を参照しただけでは、copy_arrayへの変更が元配列(base_array)にも及んでしまう。
var base_array:Array = new Array("a","b","c");
var copy_array:Array = base_array;
copy_array.shift();
trace(base_array); //"b","c"←base_arrayの方も変更されている
trace(copy_array); //"b","c"

Array.slice()メソッドを引数なしで使うことで、配列の(浅い)コピーを作ることができる。
var base_array:Array = new Array("a","b","c");
var copy_array:Array = base_array.slice();
copy_array.shift();
trace(base_array); //"a","b","c"←base_arrayの方は元のまま
trace(copy_array); //"b","c"

Tweener 1.32.74

Tweenerがバージョンアップ(1.31.74→1.32.74)との報告が公式MLでありました。

[Tweener] Tweener 1.32.74

変更点についての記述は下記の通り(一部抜粋)。

変更点は至ってわずか(ほんのコード2行分)。でも重要な変更です。

*Tweenの上書きを「オプション」扱いとし、デフォルトでは無効とした。
*addTween()に「overwrite:」パラメーターを新規に追加。この値が「true」だったら、新しいtweenとオーバーラップする同一オブジェクトの同一プロパティに設定されているすべてのtweenを上書きする。

Tweenの上書きをたくさん使ってるような場合には、この変更によって互換性が失われることがあるかもしれません。ただ、特に大量の数のtweenを生成する場合のパフォーマンスが大幅に向上されるので、こうすることが重要だと考えました。


公式サイトの方にはまだ反映されてないし、上記メールの文中にあるURLはSVN用のものなので、Subversion使ってる人向けってことですかね。

2009年5月15日金曜日

Windows Vistaの画面デザインによる負荷について

Microsoft Windows Vista - Wikipedia#全エディション共通のテーマ

上記の項目中、注目すべきは以下の文章↓
グラフィックボードがAeroに対応しているのであれば、それを利用するためにAeroを有効にした方が描写速度は向上する。そのため、Windows XPで動作速度向上の手段として用いられたクラシックスタイルは、Vistaで適用すると逆にCPUのリソースを利用するようになったため、PCの処理能力は低下してしまう。
「ホントかな?」というのが正直な所。実際問題、マイコミジャーナルの以下の記事では、「Vistaが重く感じられる場合、Vistaベーシックに切り替え、それでも重い場合はWindowsクラシックに切り替えるのが妥当といえそうだ。」と結論付けられている。

【特集】~インストールから設定・活用まで~ すべてが分かるWindows Vista大百科 (32) パフォーマンスの情報とツール(2) | パソコン | マイコミジャーナル

諸事情から会社で使うメインPCをVistaマシンにすることになったので、使いながら試してみるとしましょう。