일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 미국자전거길
- 세계여행
- 리컴번트자전거
- 사랑
- 세월호참사
- 자전거과학
- IT·컴퓨터
- 리컴번트삼륜자전거
- amsterdam
- 아이폰
- 국내여행
- Flex3.0
- KT
- 미국
- 보청기
- 자전거길
- iPhone
- 샌프란시스코
- 자전거
- 암스테르담
- FlashDevelop
- 낙동강 종주
- 국토종주
- 자전거여행
- 리컴번트삼륜
- CenturyRide
- Maxcruz
- 삼륜자전거
- 낙동강
- 북아메리카(북미)
- Today
- Total
지구별에서 - Things Old and New
Jogl에서 MouseEvent 쓰는 법 본문
Jogl에서 MouseEvent 쓰는 법
Jogl에 MouseEvent를 쓰는 법은 여느 Java Applet 이나 Application에서 MouseEvent 를 쓰는 것과 별반 다를 것이 없다. 여기서는 Mouse를 클릭하는 곳에 작은 네고꼴이 옮겨 지는 Applet을 만들어 설명할까한다. 먼저 GLCanvas를 생성하고 GLEventListener의 인터페이스를 부착시키고 하는 따위 기본인프라를 구축하는 JoglApplet 클래스를 작성하는 법은 12째 강좌에서 설명한 바 있다. 12 강좌의 애플랫클라스와 다른 점은 GLEventListener의 자식 클래스를 정의하는데 애플렛윈도우의 사이즈를 인수로 전달하였는데 여기서 그 쓸모가 없으므로 생략한다.
그 대신 마우스 이벤트와 관련해서 여기서 정의된 (10, 16째줄) canvas를 인자로 전달해야 할 필요가 있다. 간단한 방법은 GLEventListener의 자식클래스 JoglDisplay 에 GLCanvas의 객체변수 하나를 정의하고 거기에 canvas 의 참조를 제 22째 줄 처럼 넘기는 것이다.
|
아래에 GLEventListener의 자식클래스 JoglDisplay를 정의한 것이다.
아래의 코드 중에서 54째 줄에서 56째 줄이 Jogl 과 MouseEvent를 통합하기 위해서 불가피하게 변환시키는 코드가 된다. Jogl 은 자리표의 y의 증가 방향이 아래에서 위로 올라가는 방향이 되는데 MouseEvent 에 마우스 이벤트가 일어난 자리표는 위에서 아래로 가는 방향이 Y 값의 증가방향이 된다. 그래서 이 서로 반대되는 자리표읽기를 융합한 부분이다. 잘 음미해 두기를 권장한다.
|
이 코드를 컴파일하고 실행시켜 보기 바란다. 여기를 열면 그 결과를 볼 수 있다. 마우스를 클릭해 보세요 작은 네모꼴이 마우스 클릭한 곳이 따라 온다.
'IT > JOGL(Java OpenGL)' 카테고리의 다른 글
왜 도둑질이 나쁜가? (4) | 2005.12.27 |
---|---|
인터넷은 쓰레기인가? (2) | 2005.12.25 |
Jogl에서 KeyEvent 쓰는 법 (0) | 2005.12.06 |
Jogl을 JApplet 에 담는 법 (0) | 2005.12.04 |
Jogl을 Applet에 담는 법 (0) | 2005.12.03 |
Swing 을 사용하는 Jogl 코드의 해설 (0) | 2005.12.02 |
Jogl 과 Swing (0) | 2005.12.01 |
JOGL (0) | 2005.12.01 |