Advertisement
overloop

venn3.js

Dec 27th, 2014
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var r1 = 100;
  2. var r2 = 150;
  3. var b = 10;
  4. var w = 2 * (r2 + r1 * Math.cos(Math.PI / 6)) + 2 * b;
  5. var h = r2 * 2 + r1 * (1 + Math.sin(Math.PI / 6)) + 2 * b;
  6.  
  7. var myCanvas = document.createElement('canvas');
  8. document.body.appendChild(myCanvas);
  9. myCanvas.width = w;
  10. myCanvas.height = h;
  11. var myContext = myCanvas.getContext('2d');
  12. //myContext.globalCompositeOperation = "lighter";
  13.  
  14. var fillStyles = [];
  15. for (var i=0;i<3;i++) {
  16.     fillStyles.push('rgba(' + [i%3 == 0 ? 255 : 220, i%3 == 1 ? 255 : 220, i%3 == 2 ? 255 : 220].join(',') + ',0.3)');
  17. }
  18.  
  19. var ox = w / 2;
  20. var oy = r2 + r1 + b;
  21. for (var i=0;i<3;i++) {
  22.     var a = 2 * Math.PI / 3 * i;
  23.     var cx = ox + r1 * Math.sin(a);
  24.     var cy = oy - r1 * Math.cos(a);
  25.     myContext.beginPath();
  26.     myContext.arc(cx,cy,r2,0,2*Math.PI);
  27.     myContext.fillStyle = fillStyles[i];
  28.     myContext.fill();
  29.     //myContext.stroke();
  30. }
  31.  
  32. for (var i=0;i<3;i++) {
  33.     var a = 2 * Math.PI / 3 * i;
  34.     var cx = ox + r1 * Math.sin(a);
  35.     var cy = oy - r1 * Math.cos(a);
  36.     myContext.beginPath();
  37.     myContext.arc(cx,cy,r2,0,2*Math.PI);
  38.     myContext.stroke();
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement