sitelink1 | http://blog.naver.com/shadowbug/220741936442 |
---|---|
sitelink2 | |
sitelink3 | |
sitelink4 | |
extra_vars5 | |
extra_vars6 |
도형의 클릭 이벤트를 처리하기 위해서는,
Path2D객체를 이용해서 Path정보를 따로 저장해 놓고, 이 정보로 클릭 여부를 체크 할 수 있다.
Path2D 객체
context의 패스작업을 따로 보관하는 객체
context에서 제공하는 Path관련 함수들을 사용 할 수 있다.
html
-
<body onload="load(this)">
-
<canvas id="draw" onclick="clickCanvas(window.event)" width="300px" height="300px;"></canvas>
-
</body>
javascript
Path2D 객체로 Path작업을 분리시키고,
따로 보관한 Path2D객체를 context객체의 isPointInPath 객체로 포인트 접근 여부를 확인한다.
-
var ctx = null;
-
var path = null;
-
-
function load(target) {
-
// 실제로 그려지는 위치의 캔버스 생성
-
var canvas = document.getElementById("draw");
-
ctx = canvas.getContext("2d");
-
-
path = new Path2D();
-
path.fillStyle = "rgb(255, 0, 0)";
-
path.arc(100, 100, 100, 0, 2*Math.PI, true);
-
ctx.stroke(path);
-
}
-
-
function clickCanvas(event) {
-
var x = event.pageX;
-
var y = event.pageY;
-
if(ctx.isPointInPath(path, x, y)) {
-
alert("in circle");
-
} else {
-
alert("out circle");
-
}
-
}
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
» | Canvas 도형의 클릭 이벤트 처리 | 황제낙엽 | 2016.08.22 | 351 |
67 | Canvas 이미지 추출 | 황제낙엽 | 2016.08.22 | 202 |
66 | Canvas 더블버퍼링 | 황제낙엽 | 2016.08.22 | 281 |
65 |
Canvas 비트맵 그리기
![]() | 황제낙엽 | 2016.08.22 | 124 |
64 |
Canvas 그라디언트 그리기
![]() | 황제낙엽 | 2016.08.22 | 141 |
63 |
Canvas 텍스트 그리기
![]() | 황제낙엽 | 2016.08.22 | 102 |
62 |
Canvas 곡선 그리기
![]() | 황제낙엽 | 2016.08.22 | 493 |
61 |
Canvas 다각형 그리기
![]() | 황제낙엽 | 2016.08.22 | 196 |
60 |
Canvas 사각형 그리기
![]() | 황제낙엽 | 2016.08.22 | 141 |
59 |
Canvas 시작하기
![]() | 황제낙엽 | 2016.08.22 | 100 |
58 | HTML5 개발을 도와주는 도구들 | 황제낙엽 | 2014.04.04 | 119 |
57 |
encoding, charset, code page, UTF-8, UNICODE ...
![]() | 황제낙엽 | 2013.08.07 | 838 |
56 | document.domain (from mozilla.org) | 황제낙엽 | 2013.03.13 | 555 |
55 |
우리은행 웹 접근성 가이드
![]() | 황제낙엽 | 2013.03.08 | 158 |
54 | 모든 브라우저에서 동작하는 opacity 설정 코드 | 황제낙엽 | 2013.02.14 | 132 |
53 | DXImageTransform.Microsoft.AlphaImageLoader 와 file dialog | 황제낙엽 | 2013.01.28 | 244 |
52 | Gradient 와 Background-Image 동시 적용 방안 | 황제낙엽 | 2013.01.11 | 202 |
51 |
그라디언트와 다중 배경 (gradient)
![]() | 황제낙엽 | 2013.01.11 | 130 |
50 |
CSS Gradient Background Maker
![]() | 황제낙엽 | 2013.01.11 | 141 |
49 | Radius, Gradient, Padding | 황제낙엽 | 2013.01.11 | 142 |