[AS3]as3.0处理元件注册点的位置源代码示例
很老很老的一个小玩意了,就是可以方便的动态改变元件的注册点位置。当然只是用了偏移量这样简单的原理。代码也非常简单不是很多,在这里贴一下吧
很老很老的一个小玩意了,就是可以方便的动态改变元件的注册点位置。当然只是用了偏移量这样简单的原理。代码也非常简单不是很多,在这里贴一下吧!
- package
- {
- import flash.display.DisplayObject
- import flash.geom.Point
- //极酷播放器:动态设置注册点
- public class DynamicRegistration
- {
- //需更改的注册点位置
- private var regpoint:Point
- //更改注册的显示对象
- private var target:DisplayObject
- function DynamicRegistration(target:DisplayObject,regpoint:Point)
- {
- this.target=target
- this.regpoint=regpoint
- }
- //设置显示对象的属性
- public function flush(prop:String,value:Number):void
- {
- var mc=this.target
- //转换为全局坐标
- var A:Point=mc.parent.globalToLocal(mc.localToGlobal(regpoint))
- if(prop=="x"||prop=="y")
- {
- mc[prop]=value-regpoint[prop]
- }else
- {
- mc[prop]=value
- //执行旋转等属性后,再重新计算全局坐标
- var B:Point=mc.parent.globalToLocal(mc.localToGlobal(regpoint))
- //把注册点从B点移到A点
- mc.x+=A.x-B.x
- mc.y+=A.y-B.y
- }
- }
- }
- }
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例
请稍候...