`
starbhhc
  • 浏览: 649193 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

图片组成2D动画

阅读更多
import java.awt.AlphaComposite;   
import java.awt.Graphics;   
import java.awt.Graphics2D;   
import java.awt.Image;   
import java.awt.event.ActionEvent;   
import java.awt.event.ActionListener;   
import java.awt.image.BufferedImage;   
  
import javax.swing.ImageIcon;   
import javax.swing.JFrame;   
import javax.swing.JPanel;   
import javax.swing.Timer;   
  
public class ImageComposite extends JPanel implements ActionListener {   
  Image a = new ImageIcon(this.getClass().getResource("a.png")).getImage();   
  Image b = new ImageIcon(this.getClass().getResource("b.png")).getImage();   
  Timer timer = new Timer(800, this);   
  float alpha = 1f;   
  
  public ImageComposite() {   
    timer.start();   
  }   
  
  public void paint(Graphics g) {   
    super.paint(g);   
    Graphics2D g2d = (Graphics2D) g;   
  
    BufferedImage buffImg = new BufferedImage(200, 100, BufferedImage.TYPE_INT_ARGB);   
    Graphics2D gbi = buffImg.createGraphics();   
  
    AlphaComposite ac = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha);   
  
    gbi.drawImage(a, 40, 30, null);   
    gbi.setComposite(ac);   
    gbi.drawImage(b, 0, 0, null);   
  
    g2d.drawImage(buffImg, 20, 20, null);   
  }   
  public void actionPerformed(ActionEvent e) {   
    alpha -= 0.1;   
    if (alpha <= 0) {   
      alpha = 0;   
      timer.stop();   
    }   
    repaint();   
  }   
  
  public static void main(String[] args) {   
    JFrame frame = new JFrame();   
    frame.add(new ImageComposite());   
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);   
    frame.setSize(300, 210);   
    frame.setVisible(true);   
  }   
  
}   
分享到:
评论

相关推荐

    cocos2d中 获取动画当前帧数1

    在Cocos2d-x中,动画通常由一系列的精灵帧(SpriteFrame)组成,每个精灵帧对应于一个单独的图像(纹理,CCTexture2D)。当我们创建动画时,会基于这些纹理生成精灵帧,并将它们组织成一个动画序列。这样,我们就...

    玩转Android---2D图形及动画---Frame动画

    在Android开发中,2D图形和动画是构建用户界面和提升用户体验的重要组成部分。这篇博文"玩转Android---2D图形及动画---Frame动画"显然会深入探讨如何在Android平台上创建和管理帧动画。帧动画是一种将一系列静态图像...

    基于canvas的粒子组成文字动画特效

    【基于canvas的粒子组成文字动画特效】是一种利用HTML5的核心技术Canvas实现的视觉效果。Canvas是HTML5中用于绘制2D图形的API,允许开发者在网页上动态渲染图像。在这个特效中,粒子由无数个小点构成,通过...

    帧动画图片切割

    帧动画由一系列有序的静态图片组成,这些图片按照一定的顺序和时间间隔快速切换,形成视觉上的连续运动。例如,一个简单的行走动画可能包括从左到右连续的脚部移动帧。当这些帧以适当的速率连续播放时,我们就能看到...

    多种图片浏览动画方式集合,可选择方式

    UI是用户与软件交互的窗口,而动画元素则是UI设计中的重要组成部分。UIAnimation可能包含了不同浏览模式的实现代码、动画效果的资源文件(如精灵图、动画序列帧)以及相关配置文件。开发者可能使用了诸如Cocos2d-x、...

    cocos2d-x更新图层上的N多怪物站立动画

    怪物的站立动画通常由一系列静态帧组成,这些帧可以通过精灵帧动画(SpriteFrameAnimation)来实现连续播放,从而创建出动态效果。 1. **创建精灵和精灵帧** - 使用`Sprite::createWithSpriteFrameName`或`Sprite:...

    GifAnimation:实现将gif图片转换为cocos2d-x帧动画

    在cocos2d-x中,动画是由一系列的精灵帧(SpriteFrames)组成的。为了将GIF转换为帧动画,我们需要创建这些帧,并将它们添加到一个帧动画序列中。每个精灵帧包含精灵的图像、裁剪区域和持续时间信息。 3. **帧缓存...

    Cocos2d的API

    3. **精灵(Sprite)**:精灵是2D游戏中的基本图形元素,可以是静态图片或动画序列。Cocos2d提供了强大的精灵管理,包括旋转、缩放、移动和透明度控制。 4. **动作(Actions)**:Cocos2d的动作系统允许开发者定义...

    cocos2D-lua 核心编程内置代码

    3. 精灵(Sprite):精灵是游戏中的基本图形元素,可以是静态图片或动画序列。 4. 动画(Animation):通过帧序列和时间间隔实现精灵的动态效果。 5. 路径(Path):用于精灵或其他对象沿预定义路径移动。 三、Lua...

    Unity3D项目小游戏(2D打鱼)

    在这个项目中,游戏中的鱼类、炮弹、背景等可能都是由精灵图片组成,通过Sprite Renderer组件进行渲染。 2. **游戏对象和组件**:Unity3D中的每个游戏元素都是一个GameObject,包含各种组件,如Transform(用于位置...

    cocos2d-x播放flash序列帧示例

    本示例主要讲解如何在cocos2d-x环境中播放Flash序列帧动画,这对于创建动态游戏场景和角色动作至关重要。 首先,我们需要理解序列帧动画的概念。序列帧动画是通过连续播放一系列静态图像来实现动态效果,这些图像...

    2D文字与3D图像粒子转换动画特效.rar

    2D文字是基于二维平面的文本,通常由字体、大小、颜色和布局组成,而3D图像则引入了深度维度,使得图像看起来有立体感,可以进行旋转、缩放等操作,增加视觉冲击力。将2D文字转化为3D图像粒子效果,意味着将静态的...

    cocos2d的jar包

    Cocos2d是一个多层次、模块化的框架,主要由以下几个部分组成: - **渲染引擎**:提供2D图形绘制,支持精灵、图层、场景、动作和动画等元素。 - **物理引擎**:如Box2D或Chipmunk,用于模拟物体的碰撞和运动。 - **...

    unity 2D Toolkit

    Unity 2D Toolkit是Unity引擎的一个重要组成部分,专为2D游戏开发而设计。随着3D技术的普及,Unity并没有忽视2D领域的开发者,而是推出了这个工具包来满足2D项目的需求。Unity 3D虽然以3D渲染和交互为核心,但通过2D...

    Cocos2d-x 地图行走的实现2

    2. **Tile Set**:每个TMX地图由一系列的Tile Set组成,每个Tile Set包含多个图片,这些图片可以组合成不同的地图块。在Cocos2d-x中,`cocos2d::TMXTilesetInfo`表示一个Tile Set。 3. **Layers and Objects**:...

    Android andengine中直接加载多张小图片合成一张大图片生成动画精灵源码.zip

    3. **精灵(Sprite)**:`Sprite`类是AndEngine中表示2D动画的基本元素。它包含了对`TextureRegion`的引用,以及位置、旋转和缩放等属性。 4. **动画(Animation)**:AndEngine的`Animation`类用于管理精灵的帧...

    Cocos2d-X教程

    事件处理是Cocos2d-X中的重要组成部分。你将学习如何监听并响应用户输入,如触摸和键盘事件,以及如何实现游戏逻辑和交互。Cocos2d-X提供了一套简洁的事件系统,使得开发者可以方便地管理事件流。 在脚本语言方面,...

    Flash制作环绕的立体图片效果动画

    通过打开这个FLA文件,我们可以查看和编辑动画的各个组成部分,包括图片的3D变换参数和动画的帧速率。 ActionScript是Flash中的编程语言,用于控制动画行为和交互。在这个环绕立体效果中,可能有ActionScript代码...

    cocos2d-x教程

    cocos2d-x提供了一系列绘图函数,如绘制矩形、圆形、线条,以及加载图片、精灵等。通过动作(Action)和动画(Animation),可以实现物体的移动、旋转、缩放等效果。同时,还可以使用Tiled Map编辑器创建复杂的地图...

    ios 基于cocos2d开发的连连看源码

    1. **场景和层(Scenes and Layers)**:Cocos2D中的场景是游戏的主要组成部分,包含了游戏的所有视觉元素。层是场景的子组件,用于组织游戏的不同部分,如游戏界面、菜单系统等。在连连看游戏中,可能有一个主游戏...

Global site tag (gtag.js) - Google Analytics