최신 웹 개발 튜토리얼
 

Canvas Clock


이 장에서 우리는 HTML 캔버스를 사용하여 아날로그 시계를 구축 할 것입니다.


부품 난 - 캔버스 만들기

시계는 HTML 용기를 필요로한다. 300 X 300 픽셀 HTML 캔버스 만들기 :

HTML 코드 :

<!DOCTYPE html>
<html>
<body>

<canvas id="canvas" width="300" height="300" style="background-color:#333"></canvas>

<script>
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");
var radius = canvas.height / 2;
ctx.translate(radius, radius);
radius = radius * 0.90
drawClock();

function drawClock() {
    ctx.arc(0, 0, radius, 0 , 2*Math.PI);
    ctx.fillStyle = "white";
    ctx.fill();
}
</script>

</body>
</html>
»그것을 자신을 시도

코드 설명

귀하의 페이지에 HTML <캔버스> 요소를 추가합니다 :

<canvas id="canvas" width="300" height="300" style="background-color:#333"></canvas>

는 HTML 캔버스 요소로부터 캔버스 객체 (VAR 캔버스) 만들기 :

var canvas = document.getElementById("canvas");

캔버스 객체의 2D 그리기 개체 (var에 CTX) 만들기 :

var ctx = canvas.getContext("2d");

캔버스의 높이를 이용하여 클록 반경을 계산한다 :

var radius = canvas.height / 2;

클록 반경을 계산하는 캔버스 높이를 사용하여, 모든 캔버스 크기 클록 일 수있다.

캔버스의 중심 (그리기 개체의)이 (0,0) 위치를 매핑 :

ctx.translate(radius, radius);

캔버스 내부에 잘 시계를 그릴 (90 %) 클럭 반경을 감소 :

radius = radius * 0.90;

시계를 그리는 함수 만들기 :

function drawClock() {
    ctx.arc(0, 0, radius, 0 , 2*Math.PI);
    ctx.fillStyle = "white";
    ctx.fill();
}