Skip to content

Commit 01080da

Browse files
rounded linked line + fix onclick event if anim disabled
1 parent 99b96da commit 01080da

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

particles.js

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -387,8 +387,10 @@ function launchParticlesJS(tag_id, params){
387387
var p = pJS.particles.array[i];
388388

389389
/* move the particle */
390-
p.x += p.vx * (pJS.particles.anim.speed/2);
391-
p.y += p.vy * (pJS.particles.anim.speed/2);
390+
if(pJS.particles.anim.enable){
391+
p.x += p.vx * (pJS.particles.anim.speed/2);
392+
p.y += p.vy * (pJS.particles.anim.speed/2);
393+
}
392394

393395
/* change opacity status */
394396
if(pJS.particles.opacity.anim.enable) {
@@ -401,7 +403,6 @@ function launchParticlesJS(tag_id, params){
401403
}
402404
}
403405

404-
405406
/* change particle position if it is out of canvas */
406407
if(p.x - p.radius > pJS.canvas.w) p.x = p.radius;
407408
else if(p.x + p.radius < 0) p.x = pJS.canvas.w + p.radius;
@@ -444,6 +445,7 @@ function launchParticlesJS(tag_id, params){
444445
};
445446

446447
pJS.fn.particlesDraw = function(){
448+
447449
/* clear canvas */
448450
pJS.canvas.ctx.clearRect(0, 0, pJS.canvas.w, pJS.canvas.h);
449451

@@ -453,7 +455,6 @@ function launchParticlesJS(tag_id, params){
453455
/* draw each particle */
454456
for(var i = 0; i < pJS.particles.array.length; i++){
455457
var p = pJS.particles.array[i];
456-
//console.log(p.color.rgb);
457458
p.draw('rgba('+p.color.rgb.r+','+p.color.rgb.g+','+p.color.rgb.b+','+p.opacity+')');
458459
}
459460

@@ -477,11 +478,14 @@ function launchParticlesJS(tag_id, params){
477478

478479
/* draw the line */
479480
var color_line = pJS.particles.line_linked.color_rgb_line;
480-
pJS.canvas.ctx.beginPath();
481+
481482
pJS.canvas.ctx.strokeStyle = 'rgba('+color_line.r+','+color_line.g+','+color_line.b+','+ (pJS.particles.line_linked.opacity-dist/pJS.particles.line_linked.distance) +')';
483+
pJS.canvas.ctx.lineWidth = pJS.particles.line_linked.width;
484+
pJS.canvas.ctx.lineCap = 'round';
485+
486+
pJS.canvas.ctx.beginPath();
482487
pJS.canvas.ctx.moveTo(p1.x, p1.y);
483488
pJS.canvas.ctx.lineTo(p2.x, p2.y);
484-
pJS.canvas.ctx.lineWidth = pJS.particles.line_linked.width;
485489
pJS.canvas.ctx.stroke();
486490
pJS.canvas.ctx.closePath();
487491

@@ -577,13 +581,17 @@ function launchParticlesJS(tag_id, params){
577581
}
578582
)
579583
)
584+
if(i == nb-1){
585+
pJS.fn.particlesDraw();
586+
}
580587
}
581588
}
582589
};
583590

584591
pJS.fn.vendors.interactivity.removeParticles = function(nb){
585592
if(pJS){
586593
pJS.particles.array.splice(0, nb);
594+
pJS.fn.particlesDraw();
587595
}
588596
};
589597

@@ -601,11 +609,14 @@ function launchParticlesJS(tag_id, params){
601609
if(dist <= pJS.particles.line_linked.distance && dist_mouse <= pJS.interactivity.mouse.distance && pJS.interactivity.status == 'mousemove'){
602610
/* Draw the line */
603611
var color_line = pJS.particles.line_linked.color_rgb_line;
604-
pJS.canvas.ctx.beginPath();
612+
605613
pJS.canvas.ctx.strokeStyle = 'rgba('+color_line.r+','+color_line.g+','+color_line.b+','+ (pJS.interactivity.line_linked.opacity-dist_mouse/pJS.interactivity.mouse.distance) +')';
614+
pJS.canvas.ctx.lineWidth = pJS.particles.line_linked.width;
615+
pJS.canvas.ctx.lineCap = 'round';
616+
617+
pJS.canvas.ctx.beginPath();
606618
pJS.canvas.ctx.moveTo(p1.x, p1.y);
607619
pJS.canvas.ctx.lineTo(pJS.interactivity.mouse.pos_x, pJS.interactivity.mouse.pos_y);
608-
pJS.canvas.ctx.lineWidth = pJS.particles.line_linked.width;
609620
pJS.canvas.ctx.stroke();
610621
pJS.canvas.ctx.closePath();
611622
}

0 commit comments

Comments
 (0)