2011-11-07 4 views
0

나는 성공적으로이 자습서 아래 사용하여 자바에서 트랙볼을 구현 한 :일반 구현에서 트랙볼의 중심을 변경하는 방법은 무엇입니까?

  1. http://nehe.gamedev.net/tutorial/arcball_rotation/19003
  2. http://www.java-tips.org/other-api-tips/jogl/arcball-rotation-nehe-tutorial-jogl-port.html

이 트랙볼은 화면 중앙에 중심. 이제 화면의 어느 지점 에나 센터를 배치하고 싶습니다. 센터 로직을 기존 코드에 통합하려면 어떻게합니까? 마우스 좌표의 표준화가 중심 도입으로 인해 어떻게 바뀌는가?

답변

1

이것은 마우스 좌표를 변형하여 쉽게 얻을 수 있습니다. 첫 번째 튜토리얼의 시작 부분에서 마우스 좌표를 변형 할 때 -1..1.1 범위로 지정된 것만 변형하는 대신 트랙볼을 만들려는 화면의 중심에서 오프셋을 뺍니다 센터. 따라서 트랙볼의 중심을 오른쪽에서 50 픽셀, 중앙에서 20 픽셀 높이려면 사용

MousePt.X = ((MousePt.X-50) /Width)*2)-1; 
MousePt.Y = ((MousePt.X-20) /Height)*2)-1;