as3显示对象的localToGlobal,globalToLocal说明

as3,中显示对象的[color=red]localToGlobal[/color]与[color=red]globalToLocal[/color]在as3语言参考上说明不是很详细:
2方法的作用是:将坐标在 局部坐标系与全局坐标系 进行转换.
由于元件的坐标系是自身的容器,所以必须用元件的parent来调用
下面分析下:

var s:Sprite = new Sprite();
s.x = 100;
s.y = 100;
addChild(s);
var s1:Sprite = new Sprite();
s1.x = 100;
s1.y = 100;
s.addChild(s1);
var s2:Sprite = new Sprite();
s2.x = 100;
s2.y = 100;
s1.addChild(s2);

要获取s2的舞台坐标(全局坐标系),则必须使用s2的parent的localToGlobal方法.
			var pt:Point = s2.parent.localToGlobal(new Point(s2.x,s2.y)); 
trace(pt);

现在打印的坐标是:s2在舞台坐标系中的坐标.
反之,要获取舞台上某点在s2坐标空间中的坐标,也必须使用s2.parent的globalToLocal方法.

			trace(s2.parent.globalToLocal(pt));

现在打印的坐标是:舞台上的pt点在s2所在坐标系(就是它的容器)的坐标
便于记忆的话,则需要记住localToGlobal与globalToLocal都需要使用显示对象的parent来调用,因为显示对象的坐标空间是相对于它自身的容器来说的.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gamebox1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值