PythonのOpenGLでのテクスチャマッピングに問題があります。上部と下部が湾曲した長方形を描画しようとしていますが、これまでのところ、下部でしか湾曲させることができませんでした。どういうわけか、アッパーは曲線を形成したくありません。この関数をパラメーター0.2で使用しています。
def DrawAWobble(y_wobble):
R = y_wobble/2.0 - 1/(2.0*y_wobble)
glBegin(GL_POLYGON)
x = 0.0
while x<2.1:
glTexCoord2f(x*0.5, 1.0); glVertex2f(x/2 - 0.5, 0.5 + (R + math.sqrt(R**2 - (1 - x)**2 + 1)))
x += 0.1
x = 2.0
while x>-0.1:
glTexCoord2f(x*0.5, 0.0); glVertex2f(x/2 - 0.5, -0.5 + (R + math.sqrt(R**2 - (1 - x)**2 + 1)))
x -= 0.1
glEnd()
私が得ている結果は左側にありますが、画像の右側のようなものが得られるはずです。