请马上登录,朋友们都在花潮里等着你哦:)
您需要 登录 才可以下载或查看,没有账号?立即注册
x
效果
代码
<canvas id="canv" width="400" height="400"></canvas>
<script>
var ctx = canv.getContext('2d');
var size = canv.width / 2, r1 = size - 10, r2 = r1 * 2/5, points = [];
for(var i = 0; i < 5; i ++) {
var x1 = Math.cos((18 + i * 72) / 180 * Math.PI) * r1 + size,
y1 = -Math.sin((18 + i * 72) / 180 * Math.PI) * r1 + size,
x2 = Math.cos((54 + i * 72) / 180 * Math.PI) * r2 + size,
y2 = -Math.sin((54 + i * 72) / 180 * Math.PI) * r2 + size;
points.push({x1: x1, y1: y1, x2: x2, y2: y2});
}
var drawTriangle = () => {
for(var j = 0; j < 5; j++) {
ctx.beginPath();
ctx.moveTo(points[j].x1, points[j].y1);
ctx.lineTo(size, size);
ctx.lineTo(points[j].x2, points[j].y2);
ctx.lineTo(points[j].x1, points[j].y1);
ctx.fill();
}
};
var draw5star = () => {
ctx.fillStyle = 'red';
drawTriangle();
ctx.save();
ctx.fillStyle = 'darkred';
ctx.translate(size, size);
ctx.scale(-1, 1);
ctx.translate(-size, -size);
drawTriangle();
ctx.restore();
};
draw5star();
</script>
|