"Tutorial 3" ist ein Beispiel für die Kontaktbeurteilung. Die Visualisierung ist PyOpenGL. -PyOpenGL-Setup ist erforderlich.
Es war ein bisschen schwierig. ・ Https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyopengl Ich habe "PyOpenGL-3.1.5-cp38-cp38-win_amd64.whl" von und habe es mit pip installiert. → Tutorial 3 funktioniert normal.
"Tutorial 3" ist umgezogen. Ich habe eine Bildspeicherroutine hinzugefügt, um einen GIF-Film zu erstellen. (Verwenden Sie Kissen)
・ Der Wert des Ansichtspunkts wurde gegenüber dem ursprünglichen Code geändert.
Gibt eine PNG-Bildgruppe und ein GIF-Video als Datei aus. Nur das zusätzliche Teil wird auf ↓ platziert.
Wie benutzt man: -Installieren Sie "Kissen".
Generieren Sie einen Snapshot aus PyOpenGL/sparen
from PIL import Image
from PIL import ImageOps
step=-1
intvl = 10
imgs = []
def capture():
global step
step += 1
if step % intvl != 0:
return
pad_step = '{0:04d}'.format(step)
print( pad_step )
savepath = "img/tutorial3_"+pad_step+".png "
width = glutGet(GLUT_WINDOW_WIDTH)
height = glutGet(GLUT_WINDOW_HEIGHT)
glReadBuffer(GL_FRONT)
glPixelStorei(GL_UNPACK_ALIGNMENT, 1)
data = glReadPixels(0, 0, width, height, GL_RGBA, GL_UNSIGNED_BYTE)
#image = Image.fromstring("RGBA", (width, height), data)
image = Image.frombytes("RGBA", (width, height), data)
image = ImageOps.flip(image)
image.save( savepath )
imgs.append( image )
Routine zum Speichern von GIF-Videos
def export_movie():
if not imgs:
return
imgs[0].save('gif/tutorial3.gif'
, save_all=True
, append_images=imgs[1:]
, optimize=False
, duration=100 #40
, loop=0)
Recommended Posts