首页  韩国资源  酷站加油  我的展厅  设计名站  古典元素  推荐下载  设计欣赏  每周专访  招募精英  人才专区  网页教程  平面设计  编程开发  设计竞赛
当前位置:首页 > 网页教程 > Flash教程 > 正文
flash缩放与移动(不用修改注册点)
来源:www.blue-sun.cn 作者:何足道 2009年04月21日 16:41 网友评论:1条 点击:
发现Flash的mouse对象也可以添加事件,便用这些事件写了这个好玩且实用的程序实例。

运用这个实例的思路,我们可以轻易的实现剪辑的缩放和移动,而且不用改变剪辑的注册点。

在做缩放的时候,有一个问题,就是缩放的中心为剪辑的注册点,这使得我们本来是想放大或缩小我们的鼠标的位置,而最后得到的确实注册点放大或缩小后的位置。这个问题也难不倒我们。

在纸上糊乱画了一下,发现一个图形要想以某一点(a,b)为中心放大或缩小,就只需先将图片以(0,0)点缩放,然后再将图片向x轴方向移动-a*sc,向y轴方向移动-b*sc(其中sc缩放比列的增量)。

至于移动的话,就自己看看代码哦!将鼠标按下并移动,或者滚动滚轮试试看。^_^
Flash动画:

http://www.68design.net/download/200904/20090420165620712.swf

程序代码:

//剪辑名称为Movie_Clip
stop();
fscommand("allowscale",false);
var mc_menu:ContextMenu=new ContextMenu();
mc_menu.customItems.push(new ContextMenuItem("蓝光_BlueShine",GotoBlueShine));
this.menu=mc_menu;
function GotoBlueShine()
{
    getURL("http://www.blue-sun.cn","_blank");
};
var MouseListener:Object=new Object();

//缩放剪辑的代码
MouseListener.onMouseWheel=function(delta)
{
    with(Movie_Clip)
    {
        var omx=_xmouse,omy=_ymouse;
        _xscale+=delta;
        _yscale+=delta;
        _x-=omx*delta/100;
        _y-=omy*delta/100;
    }
};
//移动剪辑的代码
//这里要注册两个变量,用以存储鼠标的初始位置
var originMusX:Number ,OriginMusY:Number ;
//还定义一个判断鼠标是否按下的boolean变量
var MousePress:Boolean;
MouseListener.onMouseDown = function()
{
    MousePress=true;
    originMusX=_xmouse;
    originMusY=_ymouse;
}
MouseListener.onMouseUp = function()
{
    MousePress=false;
}
MouseListener.onMouseMove = function()
{
    trace(_xmouse);
    if(MousePress)
    {
        Movie_Clip._x+=_xmouse-OriginMusX;
        Movie_Clip._y+=_ymouse-OriginMusY;
        originMusX=_xmouse;
        originMusY=_ymouse;
    }
}

Mouse.addListener(MouseListener);

源文件:i2009313151258.rar

欢迎访问我的博客:www.blue-sun.cn
上一篇:Flash实例教程:AS3.0实现逼真喷泉效果   下一篇:flash web网游的一点点经验
收藏此页】【打印】【关闭
 相关文章  我要点评
·一个AS3 socket解码设计的错误思路
·一个不错的导航条方案
·设置TextField的插入点(尖号)的位置
·AS3.0代码打造逼真涟漪
·Flash CS4打造星火飘落效果
·AS3动态改变影片剪辑颜色
·Flash CS4制作切换放大的菜单
·躲避鼠标的文字

免责声明:本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请联络:68design#163.com
转载要求:作者及来源信息必需保留。转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印。



关于我们 | 在线反馈 | 广告报价 | 友情链接 | 联系我们 | 免责声明 | 在线投稿 | 网站地图
Copyright © 2003-2009 68design.net, All Rights Reserve 【找网页设计师,当然上网页设计师联盟】