KineticJS教程(8)

KineticJS教程(8)

作者: ysm

8.动画

动画就是一帧帧的画面按照时间间隔显示出来,Kinetic给我们提供了一个舞台对象的onFrame方法,用这个方法可以绑定一个动画方法,我们要显示的动画的每一帧画面就是在这个方法中完成绘制的。

其中,这个方法接受一个对象frame为参数,此参数对象包含两个属性,一个是frame.time,表示当前帧是动画开始后的毫秒数,另一个属性是 frame.timeDiff,表示的是当前帧与上一帧之间的时间毫秒差。当前帧因该是什么形态就是根据这两个事件来判断的。绘制出当前帧后,注意要调用一下动画所在的层的draw,将当前帧图像显示到屏幕上。

<script>

stage.onFrame(function(frame) {

// update position

// draw layer

});

</script>

如下代码显示了一个左右摆动的圆形

<!DOCTYPE html>

<html>

<head>

<meta charset=“UTF-8″>

<title>KineticJS</title>

<script src=“../kinetic.js”></script>

</head>

<body>

<script>

window.onload = function() {

var stage = new Kinetic.Stage({

container : “container”,

width : 600,

height : 400

});

var layer = new Kinetic.Layer();

var config = {

x : 300,

y : 200,

radius : 30,

fill : “red”,

stroke : “black”,

strokeWidth : 5

};

var circle = new Kinetic.Circle(config);

layer.add(circle);

stage.add(layer);

var amplitude = 150;

var period = 2000;

var centerX = stage.getWidth() / 2;

//动画帧定义方法

stage.onFrame(function(frame) {

circle

.setX(amplitude

* Math.sin(frame.time * 2 * Math.PI / period)

+ centerX);

layer.draw();

});

//动画开始

stage.start();

//动画停止

//stage.stop();

};

</script>

<div id=“container”></div>

</body>

</html>

动画的开始与停止是用舞台对象的start与stop方法实现的。

<script>

var stage = new Kinetic.Stage({

});

//动画开始

stage.start();

//动画停止

stage.stop();

</script>

KineticJS教程(8)

时间: 2024-10-07 04:13:53

KineticJS教程(8)的相关文章

KineticJS教程(7)

KineticJS教程(7) 作者: ysm 7.图形变换 7.1.线性变化 Kinetic提供了一个图形对象的transitionTo(config)方法实现图形的线性变换,也就是从原始的状态线性变换到新的状态,这里的状态是指的尺度上的参数.方法的config参数也就是有关图形尺度的一些参数,比如 x, y, rotation, width, height, radius, strokeWidth, alpha, scale, centerOffset等.除了这些尺度参数,还需要一个durat

KineticJS教程(4)

KineticJS教程(4) 作者: ysm 4.图形样式 4.1.填充 Kinetic中图形的填充属性可以在构造方法中的config参数中的fill属性进行设定,也可以用图形对象的setFill方法进行设定.不过要注意,setFill使用的填充类型必须与创建这个对象时的config中所用的填充类型相同. Kinetic支持颜色.图像.线性渐变和径向渐变四种填充模式. 4.1.1.颜色填充 <!DOCTYPE html> <html> <head> <meta c

KineticJS教程(5)

KineticJS教程(5) 作者: ysm 5.事件响应 5.1.图形的事件响应 图形对象对事件的响应处理可以使用 on() 方法绑定事件类型和相应方法. On() 方法需要一个事件类型参数和相应方法,其中所支持的事件类型包括: mouseover, mouseout, mousemove, mousedown, mouseup, click, dblclick, dragstart 以及 dragend 事件.默认情况下,图形对象事件响应使用的是路径检测方法,下一节还会介绍像素检测方法. 绑

KineticJS教程(6)

KineticJS教程(6) 作者: ysm 6.拖拽 6.1.拖拽功能 要实现Kinetic对象的拖拽功能很简单,只需要将图形对象的draggable属性设为true就可以了. <script> // 在构造方法中的config参数设置 var shape = new Kinetic.Circle({ draggable: true; }); // 用图形对象的方法设置 shape.draggable(true); </script> 这种拖拽功能还可以应用到组(Group).层

KineticJS教程(3)

KineticJS教程(3) 作者: ysm 3.图形对象 3.1.Shape Kinetic提供了一个Shape对象用于在层上绘制图形,我们可以通过Kinetic.Shape()构造方法返回一个Shape对象: <script> var shape = new Kinetic.Shape(config); </script> Shape方法的config参数是关于具体的绘图参数的数组对象,Kinetic就是根据这个参数里的具体信息进行绘图的. Config的完整参数如下表所示:

KineticJS教程(9)

KineticJS教程(9) 作者: ysm 9.选择器 Kinetic在舞台.层和组对象上都提供了get方法,用于返回这三者中包含的对象. 9.1.根据ID获取对象 要用id获取对象,首先要给对象赋予一个id,比如下面代码创建的Rect的id就是id1: <script> var rect = new Kinetic.Rect({ id : “id1“ }); </script> 要注意的是,id是唯一的,不同对象不能使用相同的id,否则get也只能返回其中的一个. 然后用get

KineticJS教程(1-2)

1.基本结构 KineticJS首先是要绑定到HTML页面上的一个DOM容器元素上,比如最常用的<div>标签.KineticJS在此容器中创建一个称之为舞台(stage)的结构,这个舞台由一个不可见的后台层和一个不可见的缓冲层组成,提供了高性能的路径和像素检测能力.舞台上再包含若干(至少一层)用户层(layer),每个层上又包含有若干canvas元素,比如各种图形.图像.元素组(组可以包含其他的图形和其他的组)等.用户还可以给这些层上的图形.元素组.层本身以及舞台本身添加事件监听方法,以响应

html5开放资料

http://www.cnblogs.com/tim-li/archive/2012/08/06/2580252.html KineticJS教程(12) 摘要: KineticJS教程(12) 作者: ysm 12.舞台12.1.舞台的大小舞台创建后还可以用舞台对象的setSize(width, height)方法来设置舞台的宽度与高度.12.2.舞台的缩放舞台创建后还可以用舞台对象的setScale()方法来对舞台进行缩放.setScale方法可以接受一个...阅读全文 posted @ 2

Windows Git+TortoiseGit简易使用教程

转载自 http://blog.csdn.net/jarelzhou/article/details/8256139 官方教程:http://tortoisegit.org/docs/tortoisegit/(英文版) 为什么选择Git 效率 很多人有一种习惯吧,什么软件都要最新的,最好的.其实吧,软件就是工具,生产力工具,为的是提高我们的生产力.如果现有的工具已经可以满足生产力要求了,就没有必要换了.生产效率高低应当是选择工具的第一位. 历史 开源世界的版本控制系统,经历了这么几代: 第一代,