| 网站首页 | 硬件维修 | 应用学院 | 网络组建 | 网站制作 | 菜鸟黑客 | 编程之道 | 数码大全 | 娱乐休闲 | 软件下载 | 在线视频 | 请您留言 | 技术论坛 | 
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
  • 用MyIE2轻松下载Flash动画

  • Mozilla Firefox技巧拾零

  • Mozilla Firefox使用技巧大联…

  • Photoshop用相切法制作管道弯…

  • Photoshop漂亮MM模拟淡雅风格…

  • Photoshop打造烟雾弥漫的幻境

  • Photoshop制作毕业典礼照剪影…

  • Photoshop为宝宝打造可爱照片…

  • 用Photoshop制作水珠效果

  • 如何用Photoshop给老照片上色

  • Q
    您现在的位置: 我是IT人 >> 应用学院 >> 图形动画 >> Flash >> 教程正文
    小蜘蛛图解Flash 5坐标系           
    小蜘蛛图解Flash 5坐标系
    作者:网络 文章来源:转载 点击数: 更新时间:2005-8-17
    [ 字体:缩小 正常 放大 | 双击自动滚屏 ]
    请选择合适的字体颜色:

    在制作复杂的Flash动画时,往往会在一个电影剪辑中包含另一个电影剪辑。当你需要通过动作脚本语言来控制动画的显示和播放时,有时需要读取电影剪辑实例的坐标值。这时,你必须清楚理解Flash动画中主时间轴、父电影剪辑实例和子电影剪辑实例的坐标系及其相互关系。本文通过动画实例来图解Flash 5的坐标系,以帮助大家理解。

    在Flash动作脚本语言中,_x和_y属性用来设置或返回电影剪辑实例位于父电影剪辑坐标系中的x和y坐标。怎样理解Flash 5的坐标系呢?请先看看下面的动画,并做下文的操作:

    用鼠标拖动蜘蛛网(把鼠标光标放到蜘蛛网线上,当鼠标指针变成“手形”时按住鼠标左键拖动蜘蛛网,请注意蜘蛛不跟过来,请耐心操作!),观察动画下部蜘蛛网坐标值的变化。此时,蜘蛛的坐标值并不发生变化!

    接着,用鼠标拖动蜘蛛(在蜘蛛上按住鼠标左键拖动),观察动画下部蜘蛛坐标值的变化。此时,蜘蛛网的坐标值并不发生变化!

    再仔细看看图中的文字说明。


    如果一个电影剪辑实例位于主时间轴中,那么该电影剪辑实例的坐标系就以编辑区左上角作为坐标原点(0,0)。如果一个电影剪辑包含在另一个电影剪辑之中,那么该电影剪辑就位于父电影剪辑的坐标系中。父电影剪辑的坐标系以注册点为坐标圆点(0,0)。因此,如果父电影剪辑逆时针旋转90度,其子剪辑将继承逆时针旋转90度的坐标系。

    读取电影剪辑实例坐标值的方法是在_x和_y属性前面加上实例名,必要时加上路径。例如:

    web_x = web._x;
    web_y = web._y;
    spider_x = _root.web.spider._x;
    spider_y = _root.web.spider._y;

    在上面的语句中,web和spider是电影剪辑实例名。web电影剪辑实例位于主时间轴,web剪辑包含spider剪辑。当然,在前面两个语句中也可以加上_root(代表主时间轴)。
    设置电影剪辑实例坐标的方法是直接给_x和_y属性赋值(数值):

    _root.web.spider._x = -20;
    _root.web.spider._y = 30;

    拖动蜘蛛网,蜘蛛网电影剪辑的当前坐标即时显示在画面左下角。拖动蜘蛛电影剪辑,其当前位置的坐标显示在画面的右下角。因为蜘蛛电影剪辑包含在蜘蛛网电影剪辑之中,所以它也就位于其父电影剪辑蜘蛛网的坐标系之中,它的坐标就是父电影剪辑坐标系中的坐标。

    这里特别提请读者注意,当我们移动蜘蛛网时,蜘蛛会跟着移动,但其坐标值并没有变化!这是因为子剪辑在父剪辑坐标系中的相对位置并没有发生变化。

    在上面的动画中,我们给按钮实例添加了以下脚本:

    //按下鼠标左键时允许拖动
    on (press) {
     this.startDrag(lockCenter);
    }

    //释放鼠标按键时禁止拖动
    on (release, releaseOutside) {
     this.stopDrag();
    }
    其作用就是使蜘蛛网可以拖动。

    为使蜘蛛可以拖动,也给蜘蛛剪辑实例添加了下面的脚本:

    //按下鼠标按键时允许拖动
    onClipEvent (mouseDown) {
     this.startDrag(true);
    }

    //按释放鼠标按键时禁止拖动
    onClipEvent (mouseUp) {
     this.stopDrag();
    }

    在动画的第1帧使用下面的脚本来读取剪辑实例的坐标,并送到动态文本框中显示:

    //读取蜘蛛网剪辑实例(web)的坐标
    _root.webX = _root.web._x;
    _root.webY = _root.web._y;

    //读取蜘蛛剪辑实例(web)的坐标
    _root.spiderX = _root.web.spider._x;
    _root.spiderY = _root.web.spider._y;

    语句中的webX、webY、spiderX、spiderY是与动态文本框关联的变量。

    前面我们提到,如果父电影剪辑旋转一定角度,其子剪辑将继承旋转坐标系。大家可以想一想如果用旋转工具旋转web实例,然后测试动画,移动蜘蛛时其坐标发生怎样的变化。

    [1]

    教程录入:小秦    责任编辑:小秦 
  • 上一篇教程:

  • 下一篇教程:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 关于我们 | 友情链接 | 版权申明 |