Flashのステージ上に置いてあるオブジェクトのwidth,heightを
調べるプロパティはドキュメントに書いてないようです。
toolkitから書き出される.jsを見ていた所、
ライブラリが記述される箇所
// symbols:
(lib.mc = function() {
this.initialize();
this.shape = new Shape();
this.shape.graphics.f("#ff0000").p("AEskrIpXAAIAAJXIJXAAIAApX").f();
this.addChild(this.shape);
}).prototype = p = new Container();
p.nominalBounds = new Rectangle(-29.9,-29.9,60,60);
(lib.grid = function() {
this.initialize(images.grid);
}).prototype = new Bitmap();
p.nominalBounds = new Rectangle(0,0,50,50);
nominalBounds = new Rectangle(-29.9,-29.9,60,60);
というのがありました。Flash上と見比べるにこれのようです。
nominalBoundsというのがなんなのか分かりませんが、
レンダリングの時に使われる描画範囲なのかと予想します。
ということで、Flashのフレームスクリプトからは
/* js
var w = this.mc.nominalBounds.width;
var h = this.mc.nominalBounds.height;
*/
で値が取れます。
と思いきや。
lib.mcの後にセットされているlib.gridの時にnominalBoundsが上書きされてしまい、
mc.nominalBoundsを参照しても、girdの矩形(0,0,50,50)が取れます。。。
ということで、
「width heightの取り方が分からない」という記事になってしまいました。
正解が分かったら、記事を修正します。
0 件のコメント:
コメントを投稿