flash怎么设计铅笔人拆分又组合的动画?

首先,我们需要了解几个基础概念:

  • 形状(Shape):包含了线条、填充和样式的图形对象。
  • 画笔(Brush):用于绘制形状的工具,包括钢笔工具、直线工具、椭圆工具等。
  • 描边(Stroke):绘制形状边缘的外边框。
  • 填充(Fill):填充形状内部的颜色或图案。
  • 运动(Motion):形状或对象的移动、旋转、缩放等。
  • 动画(Animation):对形状或对象进行多次运动的序列。

下面是设计铅笔人拆分又组合的动画的步骤:

  1. 创建铅笔人图形

使用钢笔工具和一些线段和曲线来创建一个铅笔人的轮廓。可以使用不同颜色对轮廓进行填充和描边,使其更加美观。

  1. 拆分铅笔人图形

可以通过使用剪刀工具或裁剪工具来拆分铅笔人的不同部分。例如,可以将头、身体、手臂和腿分别拆分为单独的形状。

  1. 设计动画序列

可以使用Flash的动画工具来为铅笔人不同的部分设计不同的动画序列。例如,可以为头部设计上下移动的动画,为身体设计旋转的动画,为手臂设计摆动的动画,为腿部设计行走的动画等。

  1. 组合成全新的动画

将不同部分的动画序列组合在一起,形成一个全新的、生动的动画。可以使用Flash的时间轴工具来控制动画的时间长度和播放速度,使动画效果更流畅。

示例1:

以下是拆分铅笔人头部和身体的示例代码:

// 头部
var head:Shape = new Shape();
head.graphics.beginFill(0x000000);
head.graphics.drawCircle(50, 50, 30);
head.graphics.endFill();
addChild(head);

// 身体
var body:Shape = new Shape();
body.graphics.beginFill(0x000000);
body.graphics.drawRect(35, 80, 30, 70);
body.graphics.endFill();
addChild(body);

示例2:

以下是为铅笔人不同的部分设置动画序列的示例代码:

// 动画序列1:头部上下移动
var headTween:Tween = new Tween(head, "y", Strong.easeInOut, 50, 70, 1, true);
headTween.yoyo = true; // 使动画循环播放

// 动画序列2:身体旋转
var bodyTween:Tween = new Tween(body, "rotation", Strong.easeInOut, 0, 360, 2, true);

// 动画序列3:手臂摆动
var leftArmTween:Tween = new Tween(leftArm, "rotation", Strong.easeInOut, 0, -30, 0.5, true);
leftArmTween.yoyo = true;

var rightArmTween:Tween = new Tween(rightArm, "rotation", Strong.easeInOut, 0, 30, 0.5, true);
rightArmTween.yoyo = true;

// 动画序列4:腿部行走
var leftLegTween:Tween = new Tween(leftLeg, "y", Strong.easeInOut, 80, 90, 1, true);
leftLegTween.yoyo = true;

var rightLegTween:Tween = new Tween(rightLeg, "y", Strong.easeInOut, 80, 70, 1, true);
rightLegTween.yoyo = true;

在组合这些动画序列的时候,可以使用TweenGroup类来统一管理这些Tween对象,以及控制它们的播放和暂停等操作。例如:

var group:TweenGroup = new TweenGroup();
group.addTween(headTween);
group.addTween(bodyTween);
group.addTween(leftArmTween);
group.addTween(rightArmTween);
group.addTween(leftLegTween);
group.addTween(rightLegTween);
group.play();
阅读剩余 45%

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:flash怎么设计铅笔人拆分又组合的动画? - Python技术站

(0)
上一篇 2023年6月27日
下一篇 2023年6月27日

相关文章

  • php继承中方法重载(覆盖)的应用场合

    PHP继承中的方法重载(或称为方法覆盖)是一种面向对象编程中常见的概念。当一个子类继承了其父类的某一方法时,如果子类需要对该方法进行特殊的处理或修改,则可以使用方法重载。在本文中,我们将详细介绍PHP继承中方法重载的应用场合以及其完整攻略。 应用场合 1. 重载构造函数 重载构造函数是使用方法重载的一种常见场景。当子类需要在构造函数中添加特殊的操作或修改一些…

    other 2023年6月26日
    00
  • css样式的优先级究竟庞杂到什么程度

    标题:CSS样式的优先级完整攻略 1. 优先级的概念 在CSS中,样式的优先级决定了多个样式规则之间的应用顺序。当同一个元素有多个样式规则时,优先级规则帮助确定哪些样式会被应用在元素上。 2. 优先级的计算规则 下面是计算优先级的规则,按照顺序依次比较: 2.1. 选择器的特殊性(Specificity) 特殊性指的是选择器的权重,权重越高,优先级别越高。计…

    other 2023年6月28日
    00
  • mac下使用gcc

    以下是在Mac下使用gcc的完整攻略,过程中包含两个示例说明的标准Markdown格式文本: 在Mac下使用gcc的完整攻略 GCC是一种广泛使用的编译器,可以在Mac上使用。以下是在Mac下使用gcc的步骤: 确认是否已安装Xcode。Xcode是Mac上开发工具包,其中包含了GCC编译器。可以在终端中输入以下命令来检查是否已安装Xcode: bash x…

    other 2023年5月10日
    00
  • shadowsocks服务器搭建及优化解决方案 教你如何正确上网!

    以下是关于“shadowsocks服务器搭建及优化解决方案教你如何正确上网!”的完整攻略,包括基本概念、使用方法和两个示例。 基本概念 Shadowsocks是一种基于Socks代理的加密传输协议,可以用于科学上网。Shadowsocks服务器搭建及优化解决方案是一种教你如何搭建和优化Shadowsocks的教程,以便更好地使用Shadowsocks进行科学…

    other 2023年5月7日
    00
  • vue3.0手动封装分页组件的方法

    首先,我们需要明确什么是分页组件。分页组件是网页或应用中常见的一种翻页工具,可以按照一定的页面数或者数据条数来分割数据,并且实现数据的分页展示。Vue 3.0 是当下最新版本的 Vue 框架,它具有精简、性能优越、使用方便等特点,因此我们选择 Vue 3.0 作为开发分页组件的平台。 手动封装分页组件的过程主要包括以下几个步骤: 在 Vue 项目中创建一个分…

    other 2023年6月25日
    00
  • WinRAR压缩软件如何创建配置文件 WinRAR创建WinRAR.ini文件教程

    一、WinRAR压缩软件创建配置文件 WinRAR是一款非常流行的压缩软件,它不仅可以对文件进行压缩和解压缩,还可以有许多高级选项,例如创建RAR文件、加密压缩文件等。为了方便用户使用,WinRAR提供了创建配置文件的功能,将你常用的选项保存在一个配置文件中,方便下次打开WinRAR时直接使用。 二、WinRAR创建WinRAR.ini文件教程 1.打开Wi…

    other 2023年6月25日
    00
  • vue中使用stompjs实现mqtt消息推送通知

    Vue中使用stompjs实现mqtt消息推送通知 简介 在一些实时性较高的应用场景下,常常需要使用到消息推送,而mqtt协议由于其简单实用、扩展性好等优势而逐渐被广泛应用于这方面。本文将介绍如何在Vue框架中使用stompjs库与mqtt协议结合实现消息推送功能。 前置知识 Vue框架基础知识 mqtt协议基础知识 安装依赖 在使用stompjs之前,需要…

    其他 2023年3月28日
    00
  • Android中Binder IPC机制介绍

    Android中Binder IPC机制介绍 什么是Binder IPC机制? Binder是Android系统中的一种进程间通信(IPC)机制,用于在不同的进程之间进行通信和数据交换。它是一种高效、安全和可靠的IPC机制,被广泛用于Android系统的各个组件之间的通信。 Binder的基本原理 Binder的基本原理是通过Binder驱动在内核层面提供了…

    other 2023年8月2日
    00
合作推广
合作推广
分享本页
返回顶部