필자는 이것이 파이썬의 루핑 구문에서의 구체적 오류라고 확신하지만, 내 인생에서 틀린 것이 무엇인지 파악할 수는 없습니다.PyOpenGL에서 중첩 루프가 분명히 루핑되지 않음
저는 아주 기본적인 프로그램을 위해 PyXpen과 GLUT를 사용하여 OSX에서 파이썬을 사용하고 있습니다 : 그것은 (0,0,0) 주위에 3D 그리드를 그리기위한 것입니다. 주어진 높이에서 2D 그리드를 생성했습니다. (그래서 x = -10에서 x = 10까지, z = -10에서 z = 10까지 y = 10에 그리드가 있습니다.) 그러나 나는 그것을 만들 수 없습니다. y 좌표를 반복합니다.
This screenshot should help to show what I mean. 내 의도 된 시나리오는 큐브를 형성하는 y = 0 및 10 아래에 이러한 평면 그리드가 10 개 존재한다는 것입니다. 나중에 역시 y 축의 선으로 확장하겠습니다. 그러나 이전에 같은 문제가 발생하지 않았으므로 큰 문제는 없습니다.
내 코드에 어떤 문제가 있는지 알려주십시오. 그것은 꽤 간단한 문제처럼 보이지만, 이것에 대해 몇 시간을 낭비했고, 정말로 도움이 될 것입니다.
부인의 몇 :
내가 그 GLUT이 코드의 대부분이 사용되지 않습니다 오래된 기술이며, 알고 있어요,하지만이 프로젝트가 그것에 대해하지 않습니다.
어떤 시점에서 z- 및 x- 좌표에서 "-10-10"상수를 변경해야하지만이 y가 작동하면 해당 방법은 간단해야합니다. 당신은 당신의 루프에서 제로로 당신의 '난'변수를 재설정해야처럼
from OpenGL.GL import *
from OpenGL.GLUT import *
from OpenGL.GLU import *
grid_range = 10
def DrawGLScene():
i = 0
j = 0
fl_range = float(grid_range)
while (j <= (grid_range*2)):
while (i <= (grid_range*2)):
# x grid
glColor3f(0.0, 1.0, 0.0)
glBegin(GL_LINES)
glVertex3f(grid_range - i, grid_range - j, -10)
glVertex3f(grid_range - i, grid_range - j, 10)
glEnd()
# z grid
glColor3f(0.0, 0.0, 1.0)
glBegin(GL_LINES)
glVertex3f(-10, grid_range - j, grid_range - i)
glVertex3f(10, grid_range - j, grid_range - i)
glEnd()
i += 1
j += 1
당신은 첫 번째 줄에 즉시 그것을 해결. 고맙습니다! "j = 1"다음에 "i = 0"을 추가 했으므로 지금은 완벽합니다. 나는 내가 무언가를 놓치고 있다는 것을 알았다. 파이썬 루핑 문서를 보내 주셔서 감사합니다. 아마 어느 시점에서 유용 할 것이기 때문에 그 문서를 읽을 것입니다. –
좋아요! 다행스럽게도 코드에서 그래픽 출력을 얻는 것이 항상 재미 있습니다. –