도와주세요!!
글 수 15,339
2004.09.13 02:23:36 (*.114.253.144)
6907
Microwindows 구성 요소 중에 nanox 라는 놈은 좌표 수정이 실시간 가능합니
다.
nanox의 데모중에 nxcal 이라는 녀석이 있는데, 이 프로그램을 사용하면
좌표를 올바르게 수정할 수 있더군요.
물론 /src/drivers/mou_mk712.c를 수정하셔야 하는데,
mou_touchscreen.c를 보시면서 비슷하게
수정하시면 됩니다. 수정한 파일은 첨부했구요.
근데, 마이크로윈도우만 쓰신다면 대략 낭팬데... ㅡㅡ;
요기는 아직 제다 들여다 보지 않아서 모르겠네요...
그리고 matrix를 쓴다는 말은,
좌표 변환을 matrix로 쓴다는 말인 것 같습니다.
첨에 저도 nxcal 쓸때 nanox를 respawn 시킨 것을 모르고,
괜히 nanox의 transform function의 matrix 계산이 틀린 줄 알고,
새로 짰거든요...
nanox의 경우에는 각각의 좌표 변환을
X = ax + by + c
Y = dx + ey + c
로 구현했는데,
요기서 X, Y를 구할 때 (3,3) Matrix 1개와 (3*2) Matrix를 이용하면
구할 수 있습니다.
자세한 구현은 /src/nanox/nxtransform.c에 구현되어 있습니다.
그럼.
다.
nanox의 데모중에 nxcal 이라는 녀석이 있는데, 이 프로그램을 사용하면
좌표를 올바르게 수정할 수 있더군요.
물론 /src/drivers/mou_mk712.c를 수정하셔야 하는데,
mou_touchscreen.c를 보시면서 비슷하게
수정하시면 됩니다. 수정한 파일은 첨부했구요.
근데, 마이크로윈도우만 쓰신다면 대략 낭팬데... ㅡㅡ;
요기는 아직 제다 들여다 보지 않아서 모르겠네요...
그리고 matrix를 쓴다는 말은,
좌표 변환을 matrix로 쓴다는 말인 것 같습니다.
첨에 저도 nxcal 쓸때 nanox를 respawn 시킨 것을 모르고,
괜히 nanox의 transform function의 matrix 계산이 틀린 줄 알고,
새로 짰거든요...
nanox의 경우에는 각각의 좌표 변환을
X = ax + by + c
Y = dx + ey + c
로 구현했는데,
요기서 X, Y를 구할 때 (3,3) Matrix 1개와 (3*2) Matrix를 이용하면
구할 수 있습니다.
자세한 구현은 /src/nanox/nxtransform.c에 구현되어 있습니다.
그럼.