Flash:DisplayObject的transform/matrix的潜规则、小bug

AS3中,使用DisplayObject的transform/matrix,需要先clone出来,再变换,再赋值回去,这样才会对DisplayObject产生影响,不能直接对原Matrix操作。

详细见下边的代码:

var a:Sprite = new Sprite();
a.graphics.beginFill(0);
a.graphics.drawRect(0,0,100,100);
a.graphics.endFill();
a.x = a.y = 10;
addChild(a);
trace (a.transform.matrix );
 
var m:Matrix = a.transform.matrix .clone();
m.translate(30,30);
a.transform.matrix = m;
trace (a.x, a.y);
trace (a.transform.matrix );
 
m.translate(30,30);
a.transform.matrix = m;            //只有赋值Matrix的时候,才会有反应
trace (a.x, a.y);
trace (a.transform.matrix);
 
a.transform.matrix .translate(30,30);             //这里不会有任何效果,不会对a产生影响
trace (a.x, a.y);
trace (a.transform.matrix );

输出:

(a=1, b=0, c=0, d=1, tx=10, ty=10)

40 40

(a=1, b=0, c=0, d=1, tx=40, ty=40)

70 70

(a=1, b=0, c=0, d=1, tx=70, ty=70)

70 70

(a=1, b=0, c=0, d=1, tx=70, ty=70)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python、Flask、Django

PHP htmlspecialchars_decode()函数

984
来自专栏小樱的经验随笔

Codeforces 839E Mother of Dragons【__builtin_popcount()的使用】

E. Mother of Dragons time limit per test:2 seconds memory limit per test:256 meg...

2588
来自专栏吴柯的运维笔记

python编写分析apache访问日志的脚本

编写用于分析apache日志的脚本,主要要求如下: 统计每个客户端访问apache服务器的次数 将统计信息通过字典的方式显示出来 分别统计客户端是Firefo...

2526
来自专栏数据结构与算法

11:潜伏者

个人感觉这道题在字符串里面算是一个比较综合比较难的题目了 对于选手的数据查找能力有很强的要求 我在做这道题时运用了桶排的思想 不多说了,看代码吧,全网最简 11...

2776
来自专栏cs

python文件

3397
来自专栏数据结构与算法

HDU 5215 Cycle(dfs判环)

\(T\)组数据,给出\(n\)个点\(m\)条边的有向图,问是否存在一个奇环/偶环

512
来自专栏Python小屋

Python把汉字转换成拼音

Python扩展库pypinyin支持汉字到拼音的转换,并且可以和分词扩展库配合使用。 >>> from pypinyin import lazy_pinyin...

3377
来自专栏散尽浮华

使用grep精确匹配一个单词

grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出...

1035
来自专栏数据结构与算法

BZOJ2438: [中山市选2011]杀人游戏(tarjan)

当然有一种例外情况是\(1 -> 3, 2 -> 3\),也就是存在一个孤立点,判掉即可

692
来自专栏逆向与安全

菜鸟 学注册机编写之 “查表”

2.载入OD通过下MessageBoxA函数, F9运行程序, 随便输入用户名与注册码, 点ok后断下,如下图所示:

680

扫码关注云+社区