2012-03-03 4 views
1

x 축과 y 축에 2D 사인 커브가 있으며이를 3D로 만들고 싶습니다. 최종 결과가 this과 같은 것으로 보이기를 바래요. 커브의 정점을 y 축 주위로 회전하고 어떻게 든 함께 결합하여이 작업을 수행 할 수 있다고 생각합니다. 누구든지 그것에 대해 갈 방법에 대한 제안이 있습니까?OpenGL에서 3D 선 그래프 그리기

답변

2

x 위치가 아닌 가운데에서 거리를 사인 함수의 입력으로 사용할 수 있습니다. 이런 식으로 뭔가 :

z = sin (sqrt ((x * x) + (y * y))); 

당신은 다음, x와 y 축에 걸쳐 행진 값에 연결하고 다음과 같이 값 사이의 선을 그릴 수 있습니다 : 위키 책에

glBegin (GL_LINES); 
for (x = xmin; x <= xmax; x++) 
{ 
    for (y = ymin; y <= ymax; y++) 
    { 
     z = sin (sqrt ((x*x) + (y*y))); 
     glVertex3f (x, y, z); 
    } 
} 
glEnd(); 
1

는 OpenGL 프로그래밍 책 최신 OpenGL을 사용하여 2D와 3D 모두에서 기능을 플롯하는 방법을 보여주는 scientific arc이 있습니다. the fourth part이 관심있는 것 같습니다.

기본적으로 플롯하려는 기능은 NxN 포인트로 평가되고 그 결과는 텍스처에 저장되며이 텍스처는 정점에서 Z 좌표로 사용됩니다 셰이더.