如果我在舞台上有一个矩形,如何找到与舞台相关的左上角(x,y)和右下角(x,y)?这很奇怪,我不能在谷歌上找到这个!AS3 - 如何找到物体相对于舞台的位置?
14
A
回答
19
localToGlobal(point)
of DisplayObject
将点对象从显示对象的(本地)坐标转换为舞台(全局)坐标。
// assuming (0, 0) is top left
var topLeftStage:Point = myDisplayObject.localToGlobal(new Point(0, 0));
// bottom right
var bottomRightStage:Point = myDisplayObject.localToGlobal(new Point(width, height));
2
如果你的对象是在一个容器那么你可以只减去物体的位置容器的位置。
var rawx:Number = x - parent.x;
var rawy:Number = y - parent.y;
其他使用localToGlobal()
像上面那样。
查找对象的左上角和右下角点很容易 - 但您需要知道符号的注册点在哪里。
如果注册点在符号的中心:
var left:Number = x - (width/2);
var right:Number = x + (width/2);
var top:Number = y - (height/2);
var bottom:Number = y + (height/2);
如果它是在左上角:
var left:Number = x;
var right:Number = x + width;
var top:Number = y;
var bottom:Number = y + height;
等等
1
如果DisplayObject不启动在0,0的动画片段,你需要这个:
var skin:DisplayObject = ... //the MC you need to get positions of
var point : Point = skin.localToGlobal(new Point(skin.getBounds(skin).x,skin.getBounds(skin).y));
var point2 : Point = skin.localToGlobal(new Point(skin.getBounds(skin).x+skin.getBounds(skin).width,skin.getBounds(skin).y+skin.getBounds(skin).height));
,其结果将是:
x=point.x;
y=point.y;
width=point2.x-point.x;
heigth=point2.y-point.y;
+0
可能看起来并不需要,但如果scaleX涉及父母之一,则需要。 – csomakk 2012-09-18 09:17:09
4
您可以在同一行,例如做如果您添加的显示对象也是DisplayObject,那么您可以编写:
var rect:Rectangle = yourDisplayObject.getBounds(stage);
这将直接跳转到相对于舞台的矩形。您可以访问您提到的具体值:
rect.bottomRight
rect.topLeft
相关问题
- 1. 如何引用舞台上的物体?
- 2. THREE.JS:获取物体相对于相机和物体在屏幕上的位置
- 3. AS3:如何从舞台找到深嵌套雪碧的父母?
- 4. 当它离开舞台时从阵列中移除物体AS3
- 5. 如何将有限的物体添加到舞台
- 6. AS3盘旋舞台
- 7. 职位子级演员相对于舞台而不是家长
- 8. 如何从doc类AS3的舞台上定位影片剪辑?
- 9. 如果没有找到AS3 FLVPlayback流,如何发送消息到舞台
- 10. AS3对象出现onClick鼠标在舞台上点击的位置
- 11. 如何修复在AS3舞台上的重叠对象
- 12. 这和舞台在AS3
- 13. 在AS3中访问舞台
- 14. AS3调整符号相对于台
- 15. AS3 - 舞台上的物品无意中消失
- 16. 将同一个物体的多个实例添加到舞台
- 17. AS3可以添加对象到舞台的全局类
- 18. 如何使用clutter1.0设置舞台或窗口的位置?
- 19. 如何使用as3将一个按钮添加到舞台上?
- 20. 如何将新舞台添加到我的默认舞台?
- 21. 我们怎样才能得到相对于窗体的位置?
- 22. 如何确定与舞台相关的子动画片段位置?
- 23. AS3:ProgressEvent的主舞台监听器?
- 24. AS3:限制函数的舞台空间?
- 25. as3更改字体大小随着舞台大小的变化
- 26. 找到相对于背景图像的精灵位置
- 27. 找到android设备相对于用户的方向/位置?
- 28. 如何获得坐标相对于鼠标位置的位置?
- 29. 从任意位置访问舞台
- 30. 相对于点的位置相对位置
嗨,谢谢你的帮助。我怎么才能找到左边的x和右边的x? – muudles 2011-05-18 00:37:12
点具有属性x和y。您可以使用topLeftStage.x来获取x坐标。 – taskinoor 2011-05-18 05:50:58