📜  Flash 中的运动指南(1)

📅  最后修改于: 2023-12-03 15:30:47.005000             🧑  作者: Mango

Flash 中的运动指南

Flash 是一款非常强大的动画制作工具,其中运动是制作动画时最为重要的环节之一。本文将介绍一些 Flash 中的运动技巧和运动指南。

运动的基本属性

在 Flash 中,运动基本上可以分为以下几个属性:

  • 位置(x、y 坐标)
  • 大小(宽度、高度)
  • 旋转
  • 不透明度
  • 缩放
位置

位置是 Flash 中最基本的动画属性之一,在 Flash 中可以通过改变 MovieClip、Shape、文本等对象的 x、y 坐标来实现位置的变化。例如,以下代码将一个 MovieClip 对象移动到 x 坐标为 100,y 坐标为 200 的位置:

mc.x = 100;
mc.y = 200;
大小

大小是 Flash 中另一个常用的运动属性,在 Flash 中可以通过改变对象的宽度和高度来实现大小的变化。例如,以下代码将一个 Shape 对象的宽度和高度都增加了 50:

shape.width += 50;
shape.height += 50;
旋转

旋转是 Flash 中另一个常用的运动属性,在 Flash 中可以通过改变对象的 rotation 属性来实现旋转。例如,以下代码将一个 MovieClip 对象逆时针旋转了 30 度:

mc.rotation -= 30;
不透明度

不透明度是 Flash 中另一个常用的运动属性,在 Flash 中可以通过改变对象的 alpha 属性来实现不透明度的变化。例如,以下代码将一个 Shape 对象的不透明度降低到一半:

shape.alpha = 0.5;
缩放

缩放是 Flash 中另一个常用的运动属性,在 Flash 中可以通过改变对象的 scaleX 和 scaleY 属性来实现缩放。例如,以下代码将一个 Shape 对象水平方向和垂直方向都缩小了一半:

shape.scaleX *= 0.5;
shape.scaleY *= 0.5;
运动的特效

Flash 中除了基本的运动属性之外,还有很多运动特效可以使用。以下是其中几个比较常见的运动特效:

缓动(Easing)

缓动是一个常用的运动特效,它可以让运动更加自然和流畅。在 Flash 中可以使用 Tween 类来实现缓动效果。例如,以下代码将一个 Shape 对象从当前位置移动到 x 坐标为 200,y 坐标为 300 的位置,并且在 2 秒钟的时间内缓动到目标位置:

import fl.transitions.Tween;
import fl.transitions.easing.*;
var tween:Tween = new Tween(shape, "x", Strong.easeInOut, shape.x, 200, 2, true);
var tween:Tween = new Tween(shape, "y", Strong.easeInOut, shape.y, 300, 2, true);
跟随路径(Motion Path)

跟随路径是一种非常奇妙的运动特效,可以让对象在复杂的路径上运动。在 Flash 中可以使用 MotionPath 类来实现跟随路径效果。例如,以下代码将一个 Shape 对象沿着一个圆形路径运动,并且在 5 秒钟的时间内完成运动:

import fl.motion.MotionPath;
import fl.motion.easing.*;
var path:MotionPath = new MotionPath();
path.addProperty("x", 200, 200, 200, 0);
path.addProperty("y", 200, 0, 200, 200);
var tween:Tween = new Tween(shape, null, Regular.easeInOut, {motionPath: path}, 5, true);
骨骼动画(Bone Animation)

骨骼动画是一种非常流行的动画效果,可以让对象像人体一样运动。在 Flash 中可以使用 Armature 类来实现骨骼动画效果。例如,以下代码将一个 Armature 对象移动到 x 坐标为 200,y 坐标为 300 的位置,并且在 2 秒钟的时间内完成运动:

import dragonBones.Armature;
import dragonBones.factorys.StarlingFactory;
var factory:StarlingFactory = new StarlingFactory();
factory.parseDragonBonesData(dragonData);
factory.parseTextureAtlasData(textureAtlasData);
var armature:Armature = factory.buildArmature("Armature");
armature.x = 200;
armature.y = 300;
addChild(armature.display);
var tween:Tween = new Tween(armature, null, null, {x: 200, y: 300}, 2, true);
总结

以上是 Flash 中一些常用的运动技巧和运动指南,希望对程序员们的动画制作有所帮助。Flash 还有很多强大的运动特效和动画技巧等待开发者去探索和运用。