源码:
<!DOCTYPE html>
<html>
<head>
<meta charset=”gbk”>
<title>中国标准国旗</title>
1、首先在画纸上画旗杆。2、然后开始画五星红旗的旗帜。3、下一步,开始画小五角星,分别画四颗小五角星。4、然后开始在画纸上画大五角星。5、接下来该给它涂色了,首先给五角星涂色漂亮的黄色。6、然后给它的旗帜涂成。
</head>
<body>
<canvas id=”canvas” width=”600″ height=”400″></canvas>
<script>
**
使用HTML5绘制标准五星红旗
*
var canvas = document.getElementById(“canvas”);
var context = canvas.getContext(‘2d’);
var width=canvas.width;
var height=width*2/3;
var w=width/30;//小网格的宽
context.fillStyle=”red”;
context.fillRect(0,0,width,height);
var maxR = 0.15,minR = 0.05;/
var maxX = 0.25,maxY = 0.25;//大五星的位置
var minX = [0.50,0.60,0.60,0.50];
var minY = [0.10,0.20,0.35,0.45];
/ 画大☆
var ox = height * maxX,oy = height * maxY;
create5star(context,画车高手宝马,ox,oy,height * maxR,”#ff0″,0);//绘制五角星
/ 画小★
for (var idx = 0; idx < 4; idx++) {
var theta = Math.atan((oy – sy)/(ox – sx));
}
/辅助线
context.moveTo(0,height/2)
context.lineTo(width,height/2);
context.stroke();
context.moveTo(width/2,0);
context.lineTo(width/2,height);
context.stroke();
1、首先将红旗的旗杆画出来,旗杆顶端再画上一个小圆球。2、然后依着旗杆位置相右侧画出矩形的红旗的旗面,并在旗面的左上位置画出五星图案。3、接着留白五星图案,将整个旗面都用大红色涂上。4、最后给五颗星星涂黄。
/画网格,竖线
for(var j=0;j< 15;j++){
context.moveTo(j*w,0);
context.lineTo(j*w,height/2);
context.stroke();
}
/画网格,横线
for(var j=0;j< 10;j++){
context.moveTo(0,j*w);
context.lineTo(width/2,j*w);
context.stroke();
}
/画大圆
context.beginPath();
context.arc(ox,oy,maxR*height,0,Math.PI*2,false);
context.closePath();
context.stroke();
/ 画小圆
for (var idx = 0; idx < 4; idx++) {
context.beginPath();
context.arc(sx,sy,height * minR,0,Math.PI*2,false);
context.closePath();
context.stroke();
}
/大圆中心与小圆中心连接线
for (var idx = 0; idx < 4; idx++) {
context.moveTo(ox,oy);
1.先画一面飘扬的旗帜。也就是画上一个变形的长方形,记得中间要弯曲一下。2.用细笔画在旗子上画五颗星星。星星一大四小。3.画旗杆。旗杆上头大一下,下面就是一个小小的长方形。4.上色。五星红旗的简笔画就画好啦。
var sx = minX[idx] * height,sy = minY[idx] * height;
context.lineTo(sx,sy);
context.stroke();
}
/绘制五角星
**
* rotate:绕对称轴旋转rotate弧度
*
context.save();
context.fillStyle=color;
context.translate(sx,sy);//移动坐标原点
1、在纸张上画一条竖直方形当作旗杆。2、然后画出迎风飘动的五星红旗轮廓。3、在合适的位置画出四个小的五角星。4、在小五角星的左侧画一个大的五角星。5、给五星红旗添加颜色,五星红旗简笔画就完成啦。五星红旗的设计者。
context.rotate(Math.PI+rotato);//旋转
context.beginPath();//创建路径
var x = Math.sin(0);
var y= Math.cos(0);
var dig = Math.PI/5 *4;
for(var i = 0;i< 5;i++){//画五角星的五条边
var x = Math.sin(i*dig);