转换坐标系统 可以利用MovieClip 对象的两个方法来改变坐标系统, 即将影片剪辑元件的坐标系统转换为主场景坐标系统,
或将主景的坐标系统转换到影片剪辑元件的坐标系统。
1. GlobalToLocal 方法
(1)GlobalToLocal 方法是MovieClip对象的一个方法, 使用的格式是:
anyMovieClip.globalToLocal(point);
anyMovieClip是一个通过"Instanse"对话框实例化影片剪辑元件实例. 参数(point); 是通过flashActionScript
的Object对象生成的一个含有x属性和y属性的对象.
(2) GlobalToLocal方法的作用是将主场景的坐标系统转换成为影片剪辑元件的坐标系统.
(3) 因为参数"point"是一个用Object对象生成的对象,所以在使用giobalTolocal方法之前,需要先构造一个含
有x属性和y属性的对象:mypoint=newObject0;
(4)我们可以创建一个动画,然后在这个动画中,创建一个剪辑元件,在这个影片剪辑元件中,绘制一个深颜色
的正方形,然后将
这个影片剪辑元件拖拽到主场景中,并在这个影片剪辑元件实力中添加如下脚本代码。
onCilipEvent (mouseMove) {
mypoint=new object();
mypoint.x=this._xmouse;
//将鼠标在影片剪辑元件上的x位置赋予mypoint对象的X属性
mypoint.y=this._ymouse;
//将鼠标在影片剪辑元件上的y位置赋予mypoint对象的Y属性
this.localToGlobal(mypoint);
//将本地影片剪辑元件坐标系统转换为主场景的坐标系统
_root.pointA=mypoint.x add " :: " add mypoint.y;
/*将X属性Y属性的值赋予变量 PointA,这个变量将设置在动态文本框中,用于显示测试结果*/
updateAfterEvent(); //刷新动画
}
(5)图12-6-7所示的坐标是没有经过转换的,图12-6-8所示的坐标是经过转换的。在图中A点是影片剪辑
元件的中心点,B点是主场景的左上角,即主场景的坐标原点。
图12-6-7
图12-6-8