1. moveTo()
moveTo()함수란 <canvas>에서 실제로 어떤 것도 그리지 않지만 경로의 일부가 되는 함수 입니다.
펜이나 연필을 종이위에서 들어 옆으로 옮기는것이라고 볼 수 있습니다.
moveTo(x, y);
캔버스가 초기화 되었거나 beginPath() 메소드가 호출되었을 때, 특정 시작점 설정을 위해 moveTo() 함수를 사용하는 것이 좋습니다. 또한 moveTo() 함수는 연결되지 않은 경로를 그리는데에도 사용할 수 있습니다.
2. 예제) 스마일 그리기
function draw() {
var canvas = document.getElementById('tutorial');
if (canvas.getContext) {
var ctx = canvas.getContext('2d');
ctx.beginPath();
ctx.arc(75, 75, 50, 0, Math.PI * 2, true); // Outer circle
ctx.moveTo(110, 75);
ctx.arc(75, 75, 35, 0, Math.PI, false); // Mouth (clockwise)
ctx.moveTo(65, 65);
ctx.arc(60, 65, 5, 0, Math.PI * 2, true); // Left eye
ctx.moveTo(95, 65);
ctx.arc(90, 65, 5, 0, Math.PI * 2, true); // Right eye
ctx.stroke();
}
}
moveTo()를 사용한 코드를 지우면 연결된 선들을 확인 할 수 있습니다.
function draw()
var canvas = document.getElementById('tutorial');
if (canvas.getContext) {
var ctx = canvas.getContext('2d');
ctx.beginPath();
ctx.arc(75, 75, 50, 0, Math.PI * 2, true); // Outer circle
// ctx.moveTo(110, 75);
ctx.arc(75, 75, 35, 0, Math.PI, false); // Mouth (clockwise)
// ctx.moveTo(65, 65);
ctx.arc(60, 65, 5, 0, Math.PI * 2, true); // Left eye
// ctx.moveTo(95, 65);
ctx.arc(90, 65, 5, 0, Math.PI * 2, true); // Right eye
ctx.stroke();
}
}
**참고 사이트 https://developer.mozilla.org/ko/docs/Web/API/Canvas_API/Tutorial
반응형
'HTML' 카테고리의 다른 글
HTML <canvas> arc(), arcTo() 함수 - 호나 원 그리기 (0) | 2022.04.25 |
---|---|
HTML <canvas> lineTo() 함수 - 직선 그리기 (0) | 2022.04.25 |
HTML <canvas> 경로(path) 기본 개념 (0) | 2022.04.22 |
HTML <canvas>를 이용한 직사각형 그리기 (0) | 2022.04.22 |
HTML <canvas> 란? (0) | 2022.04.21 |