2014-11-29 4 views
-1

안녕하세요, 저는 폴리곤을 만드는 프로그램을 작성했습니다. 내 프로그램에서 두 개 이상의 영역을 클릭 할 수 있고 내 프로그램은 1과 2를 연결하고 두 번째는 3 등으로 연결합니다. 오른쪽 클릭을하면 마지막 점이 첫 번째 점과 연결되고 그 다음 폴리곤 준비되었다. 이제 폴리곤의 꼭지점을 옮기고 싶습니다. 드래그 앤 드롭과 같은 것입니다.OpenGL에서 정점을 이동하는 방법

void move(GLint button, GLint action, GLint xPosition, GLint yPosition){ 
     screenCoordinates newCoord; 
     if (button == GLUT_LEFT_BUTTON && action == GLUT_UP) { 
      for (int i = 0; i <= position; i++){ 
       if ((xPosition == vertexCoord[0][position] + 5 || xPosition == vertexCoord[0][position] - 5) && ((yPosition == vertexCoord[1][position] + 5 || yPosition == vertexCoord[1][position] - 5))) 
        //.... 
      } 


} 
} 

는 모든 꼭지점 배열을 가지고 vertex.I 정확히 클릭 어렵 기 때문에 내가 + -5가 (vertexCoord를 [2] [200]) :이 코드를 작성하기 시작했다. 이제 버텍스를 어떻게 움직일 수 있습니까?

+1

을 선호하는 교수가있다. OpenGL은 그렇게하지 않을 것입니다. 이것은 단지 렌더링 API 일뿐입니다. – derhass

+0

나는 vertexCoord 테이블 [2] [200]에 모든 정점 데이터를 가지고 있습니다. vertexCoord [0] [i]에서 xPosition이 있고 vertexCoord [1] [i]에 yPosition이 있습니다. – athinatha

+1

데이터를 변경하고 장면을 다시 그립니다. – derhass

답변

0

아마 매트릭스 변환을 사용하고 싶을 것입니다. 현대 OpenGL (3.3+)에서이를 수행하는 방법을 가르치는 자습서가 많이 있습니다.

나는 개인적으로 정말 Open.GL 좋아하지만 친구들과는 정점 데이터를 관리하는 방법에 따라 그 OpenGL-Tutorial

관련 문제