码迷,mamicode.com
首页 > 其他好文 > 详细

zrender-粒子动画

时间:2019-11-29 15:45:04      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:shape   nbsp   inf   anim   tar   fill   image   series   地方   

效果:

技术图片

 

 

let x = shuN.style.x + rectValue/4,//粒子开始的地方
y = zuY+140 + 5,
h = 14*0.8,
w = rectValue/2;
this.drawParticles(x, y , w, h, 20, 0, i);

//画牵引粒子

drawParticles(x, y, w, h, num, seriesId, dataId) {//x, y , w, h, 20, 0, i
let partclesGroup = this.getSave(‘partclesGroup‘, seriesId, dataId);
if(!partclesGroup) {
partclesGroup = new zrender.Group();
this.zr.add(partclesGroup);
this.setSave(partclesGroup, seriesId, dataId, ‘partclesGroup‘)
} else {
return;
partclesGroup.removeAll();
}

for(let i = 0; i < num; i++) {
let targetH = Math.random() * w/ 6;//随机
let p = new zrender.Rect({
shape: {
// x: x + Math.random() * (w - 2),
// y: y + h,
x: x +w/2,
y: y + Math.random() * (h - 2),//高度随机改变
width: 2,//粒子的宽
height: 2//粒子的高
},
style: {
fill: ‘#0d81e8‘,
opacity: 0
}
})
partclesGroup.add(p);
let time = w * 10;
let curtime = time * (targetH + w / 2) / w;
//改变x的位置
p.animate(‘shape‘, true).when(curtime + 1000, {
x: x-w/4
}).delay(i * 90 + 500).start();
//每个时刻的透明度
p.animate(‘style‘, true).when(1000, {
opacity: 1
}).when(curtime / 2 + 1000, {
opacity: 1
}).when(curtime + 1000, {
opacity: 0
}).delay(i * 50 + 500).start();
}

}

 

为便于看

技术图片

 

 

zrender-粒子动画

标签:shape   nbsp   inf   anim   tar   fill   image   series   地方   

原文地址:https://www.cnblogs.com/snowbxb/p/11957994.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!