Difference between revisions of "Flag EU"

From ProgZoo
Jump to navigation Jump to search
 
(One intermediate revision by the same user not shown)
Line 2: Line 2:
== Flag of Europe (nearly) ==
== Flag of Europe (nearly) ==
<div class=qu data-width=150 data-height=100>
<div class=qu data-width=150 data-height=100>
{{#ev:youtube|yyWxBGbvAnA}}
[[Image:flagEuropeWrong.png|frame|Flag of Europe (almost)]]
[[Image:flagEuropeWrong.png|frame|Flag of Europe (almost)]]
* 150 by 100
* 150 by 100
Line 94: Line 95:
   ctx.fillStyle = 'gold';
   ctx.fillStyle = 'gold';
   for(let i = 0;i<12; i++){
   for(let i = 0;i<12; i++){
    ctx.rotate(i*Math.PI/6);
     ctx.translate(0,-50*2/3);
     ctx.translate(0,-50*2/3);
     ctx.scale(7/100,7/100);
     ctx.scale(7/100,7/100);
    ctx.rotate(-i*Math.PI/6);
     star(ctx);
     star(ctx);
    ctx.rotate(i*Math.PI/6);
     ctx.scale(100/7,100/7);
     ctx.scale(100/7,100/7);
     ctx.translate(0,50*2/3);
     ctx.translate(0,50*2/3);
     ctx.rotate(Math.PI/6);
     ctx.rotate(-i*Math.PI/6);
   }
   }
}
}

Latest revision as of 08:50, 21 August 2021


Flag of Europe (nearly)

Flag of Europe (almost)
  • 150 by 100
  • stars are in a circle radius 100/3
  • each star is had radius 7
function drawFlag(ctx){
  ctx.fillStyle = 'blue';
  ctx.fillRect(0,0,150,100);
  ctx.translate(75,50);
  ctx.fillStyle = 'gold';
  for(let i = 0;i<12; i++){
    ctx.translate(0,-50*2/3);
    ctx.scale(7/100,7/100);
    star(ctx);
    ctx.scale(100/7,100/7);
    ctx.translate(0,50*2/3);
    ctx.rotate(Math.PI/6);
  }
}

function star(ctx)
{
  ctx.beginPath();
  [[0,-100],[22,-31],[95,-31],[36,12],[59,81],
   [0,38],[-59,81],[-36,12],[-95,-31],[-22,-31]]
  .forEach((xy)=>ctx.lineTo(xy[0],xy[1]));
  ctx.fill();
}
function drawFlag(ctx){
  ctx.fillStyle = 'blue';
  ctx.fillRect(0,0,150,100);
  ctx.translate(75,50);
  ctx.fillStyle = 'gold';
  for(let i = 0;i<12; i++){
    ctx.translate(0,-50*2/3);
    ctx.scale(7/100,7/100);
    star(ctx);
    ctx.scale(100/7,100/7);
    ctx.translate(0,50*2/3);
    ctx.rotate(Math.PI/6);
  }
}

function star(ctx)
{
  ctx.beginPath();
  [[0,-100],[22,-31],[95,-31],[36,12],[59,81],
   [0,38],[-59,81],[-36,12],[-95,-31],[-22,-31]]
  .forEach((xy)=>ctx.lineTo(xy[0],xy[1]));
  ctx.fill();
}

Flag of Europe

Flag of Europe
function drawFlag(ctx){
  ctx.fillStyle = 'blue';
  ctx.fillRect(0,0,150,100);
  ctx.translate(75,50);
  ctx.fillStyle = 'gold';
  for(let i = 0;i<12; i++){
    ctx.translate(0,-50*2/3);
    ctx.scale(7/100,7/100);
    star(ctx);
    ctx.scale(100/7,100/7);
    ctx.translate(0,50*2/3);
    ctx.rotate(Math.PI/6);
  }
}

function star(ctx)
{
  ctx.beginPath();
  [[0,-100],[22,-31],[95,-31],[36,12],[59,81],
   [0,38],[-59,81],[-36,12],[-95,-31],[-22,-31]]
  .forEach((xy)=>ctx.lineTo(xy[0],xy[1]));
  ctx.fill();
}
function drawFlag(ctx){
  ctx.fillStyle = 'blue';
  ctx.fillRect(0,0,150,100);
  ctx.translate(75,50);
  ctx.fillStyle = 'gold';
  for(let i = 0;i<12; i++){
    ctx.rotate(i*Math.PI/6);
    ctx.translate(0,-50*2/3);
    ctx.scale(7/100,7/100);
    ctx.rotate(-i*Math.PI/6);
    star(ctx);
    ctx.rotate(i*Math.PI/6);
    ctx.scale(100/7,100/7);
    ctx.translate(0,50*2/3);
    ctx.rotate(-i*Math.PI/6);
  }
}

function star(ctx)
{
  ctx.beginPath();
  [[0,-100],[22,-31],[95,-31],[36,12],[59,81],
   [0,38],[-59,81],[-36,12],[-95,-31],[-22,-31]]
  .forEach((xy)=>ctx.lineTo(xy[0],xy[1]));
  ctx.fill();
}