Created
December 20, 2016 11:22
-
-
Save hanjae-jea/f99d7f3fbcf9a0f8f047410a8ad7d143 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<meta charset="utf-8" /> | |
<title>벽돌깨기</title> | |
<script type="text/javascript"> | |
var myBody = null; | |
var canvas = null; | |
var context = null; | |
var width_canvas = 0; | |
var height_canvas = 0; | |
var movement = 4; | |
var x_my = 0; //공 4개의 x축 y축 좌표 | |
var y_my = 0; | |
var x_my1 = 0; | |
var y_my1 = 0; | |
var x_my2 = 0; | |
var y_my2 = 0; | |
var x_my3 = 0; | |
var y_my3 = 0; | |
var angle = 0; //공 4개의 각도 초기화 | |
var angle1 = 0; | |
var angle2 = 0; | |
var angle3 = 0; | |
function initBrick() | |
{ | |
canvas = document.getElementById("canvas"); | |
context = canvas.getContext("2d"); | |
myBody = document.getElementById("myBody"); | |
width_canvas = canvas.width; | |
height_canvas = canvas.height; | |
x_my = width_canvas/2; //공의 위치 초기화 | |
y_my = height_canvas/2; | |
x_my1 = width_canvas/2; | |
y_my1 = height_canvas/3; | |
x_my2 = width_canvas/2; | |
y_my2 = height_canvas/6; | |
x_my3 = width_canvas/2; | |
y_my3 = height_canvas/3/10; | |
context.beginPath(); //첫번째공 생성 | |
context.arc(x_my, y_my, 12, 0, 360*Math.PI/180, false); | |
context.closePath(); | |
context.fill(); | |
context.beginPath(); //두번째공 생성 | |
context.arc(x_my1, y_my1, 12, 0, 360*Math.PI/180, false); | |
context.closePath(); | |
context.fill(); | |
context.beginPath(); //세번째공 생성 | |
context.arc(x_my2, y_my2, 12, 0, 360*Math.PI/180, false); | |
context.closePath(); | |
context.fill(); | |
context.beginPath(); //네번째공 생성 | |
context.arc(x_my3, y_my3, 12, 0, 360*Math.PI/180, false); | |
context.closePath(); | |
context.fill(); | |
angle = (Math.PI/180)*30; //(Math.PI/180)*Math.round(360*Math.random()); | |
angle1 = (Math.PI/180)*30; //(Math.PI/180)*Math.round(360*Math.random()); | |
angle2 = (Math.PI/180)*30; //(Math.PI/180)*Math.round(360*Math.random()); | |
angle3 = (Math.PI/180)*30; //(Math.PI/180)*Math.round(360*Math.random()); | |
} | |
function drawCanvas() | |
{ | |
x_my += Math.round(Math.cos(angle)*movement); | |
y_my += Math.round(Math.sin(angle)*movement); | |
if(x_my+Math.round(Math.cos(angle)*movement) >= width_canvas || x_my-Math.round(Math.cos(angle)*movement) <= 0) | |
angle = (Math.PI/180)*Math.round(360*Math.random()); | |
if(y_my-Math.round(Math.sin(angle)*movement) <=0 || y_my+Math.round(Math.sin(angle)*movement) >= height_canvas) | |
angle = (Math.PI/180)*Math.round(360*Math.random()); | |
x_my1 += Math.round(Math.cos(angle1)*movement); | |
y_my1 += Math.round(Math.sin(angle1)*movement); | |
if(x_my1+Math.round(Math.cos(angle1)*movement) >= width_canvas || x_my1-Math.round(Math.cos(angle1)*movement) <= 0) | |
angle1 = (Math.PI/180)*Math.round(360*Math.random()); | |
if(y_my1-Math.round(Math.sin(angle1)*movement) <=0 || y_my1+Math.round(Math.sin(angle1)*movement) >= height_canvas) | |
angle1 = (Math.PI/180)*Math.round(360*Math.random()); | |
x_my2 += Math.round(Math.cos(angle2)*movement); | |
y_my2 += Math.round(Math.sin(angle2)*movement); | |
if(x_my2+Math.round(Math.cos(angle2)*movement) >= width_canvas || x_my2-Math.round(Math.cos(angle2)*movement) <= 0) | |
angle2 = (Math.PI/180)*Math.round(360*Math.random()); | |
if(y_my2-Math.round(Math.sin(angle2)*movement) <=0 || y_my2+Math.round(Math.sin(angle2)*movement) >= height_canvas) | |
angle2 = (Math.PI/180)*Math.round(360*Math.random()); | |
x_my3 += Math.round(Math.cos(angle3)*movement); | |
y_my3 += Math.round(Math.sin(angle3)*movement); | |
if(x_my3+Math.round(Math.cos(angle3)*movement) >= width_canvas || x_my3-Math.round(Math.cos(angle3)*movement) <= 0) | |
angle3 = (Math.PI/180)*Math.round(360*Math.random()); | |
if(y_my3-Math.round(Math.sin(angle3)*movement) <=0 || y_my3+Math.round(Math.sin(angle3)*movement) >= height_canvas) | |
angle3 = (Math.PI/180)*Math.round(360*Math.random()); | |
context.clearRect(0, 0, width_canvas, height_canvas); | |
context.beginPath(); | |
context.arc(x_my, y_my, 10, 0, 360*Math.PI/180, false); | |
context.closePath(); | |
/*context.arc(x_my1, y_my1, 10, 0, 360*Math.PI/180, false); | |
context.closePath(); | |
context.arc(x_my2, y_my2, 10, 0, 360*Math.PI/180, false); | |
context.closePath(); | |
context.arc(x_my3, y_my3, 10, 0, 360*Math.PI/180, false); | |
context.closePath();*/ | |
context.fill(); | |
} | |
setInterval("drawCanvas()", 14); | |
</script> | |
</head> | |
<body id="myBody" onload="initBrick();"> | |
<canvas id="canvas" width="400" height="400" style="border:solid 1px #000000"> | |
canvas 사용하기 | |
</canvas><br> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment