打印

[编程] flash相册中mc注册点以及拖动边界问题小析

写过相册的朋友应该都遇到过flash中mc注册点的问题 也就是说as所控制的注册点是在mc的(0,0)坐标处当需要进行缩放或者旋转时mc会以左上角为中心变换 很是不爽-_-||

网上有人写过动态改变mc注册点的类下载试了下感觉太麻烦有点小题大作,这里偶介绍下我用的比较simple的办法:
原理很简单就是将需要进行变换的mc外面再加个套,使子级mc的中心点正好在父级mc的(0,0)点也就是默认注册点上.当需要对子级mc变换时只需要对父级mc进行操作即可跟注册点移动到中心点效果一样如图:



上面问题搞定后就可以实现以中心点变换了如底端flash点击"+","-"进行缩放 但是又会出现新的麻烦就是在拖动mc的时候确定其范围下面一并解决.如图



最终按上面公式确定的结果就可以将被拖动的mc约束在需要显示的区域内了效果如底端flash

Flash: http://www.neoy.cn/blog/attachments/200701/02_114428_dragtest.swf
本帖最近评分记录
  • mirycat 威望 +2 原创内容, 再接再厉呀 :D 2007-1-2 13:30
I am the one!
受教!! 不过不太明白 也许以后会用上!
小鸟精神 服务社群
天佑中华 众志成城
再加个外包装容器不好的,很多访问原有的MC内部其他对象的路径都要统统改掉。只适合不访问原MC内部的情况。
所以,原来的哪个动态改变注册点的类还是目前最好的解决方法。
黑羽翔天◎足下八邦
欢迎来我的博客 :)
www.kingda.org  (AS3教程)
引用:
原帖由 KingdaSun 于 2007-1-2 13:44 发表
再加个外包装容器不好的,很多访问原有的MC内部其他对象的路径都要统统改掉。只适合不访问原MC内部的情况。
所以,原来的哪个动态改变注册点的类还是目前最好的解决方法。
对的这里发的只不过是一种菜鸟级的解决方法~
I am the one!

TOP

还在为头像烦恼?还在为不能关注好友动态烦忧?快来蓝色理想家园吧!
引用:
原帖由 neocarter 于 2007-1-2 13:49 发表

对的这里发的只不过是一种菜鸟级的解决方法~
过谦了。
当不访问原MC内部时,这种方法也是不错的。
黑羽翔天◎足下八邦
欢迎来我的博客 :)
www.kingda.org  (AS3教程)

TOP