VPython 3D Programmierung für Normalsterbliche
Mit VPython ist es spielend einfach, gut bedienbare 3D-Darstellungen und Animationen zu gestalten. Ausführliche Programmier-Kenntnisse sind für die Anwendung nicht erforderlich. Weil das Programm auf der Basis von Python entwickelt wurde, hat es jedoch auch dem erfahrenen Programmierer und Forscher viel zu bieten.
Eine schnelle Einführung erhältst Du über diese Youtube-Videos:
Der Einstieg mit VPython
Du bist neu bei Python und/oder VPython? Ein guter Einstieg ist die Benutzung von GlowScript VPython:
- Geh zu glowscript.org und registriere Dich für ein Account.
- Du solltest dann diese Mitteilung sehen: ”Du bist eingeloggt als <DeinBenutezrName> und hier sind Deine Programme“.
- Du klickst nun auf „hier”.
- Klicke jetzt auf “Erstelle ein neues Programm”. Nenne es „Box“.
Unterhalb der Zeile
Glowscript 2.1 VPython
tippst Du box()ein. - Dann klickst Du auf “Dieses Programm starten”. Du siehst daraufhin ein weißes Feld vor schwarzem Hintergrund.
- Benutze die rechte Maustaste (oder Strg und Ziehen mit der linken Maustaste), um die Kamera zu drehen, so, dass Du die Darstellung vor Dir aus verschiedenen Blickwinkeln betrachten kannst.
- Um Dich ein- oder auszuzoomen, benutzt Du ALT/OPTION und die linke Maustaste zum Ziehen, oder das Mouse-Pad. Beim Touch Screen: Wische über die Fläche oder benutze zwei Finger zum Drehen oder zum Erweitern oder Verkleinern.
- Klicke auf VPython Help – hier siehst Du, welche graphischen Objekte verfügbar sind.
Du bist bereits erfahrener Python / VPython-Benutzer ? Jupyter VPython benutzt die gängige und professionelle IPython/Jupyter Entwicklungs-Umgebung.
- Installiere die Python-Version Continuum Anaconda (oder Enthought Canopy). Wir empfehlen Anaconda mit Python 3.x., insbesondere dann, wenn Du bereits die “Klassische” Version VPython/Python 2.7 auf Deinem Computer installiert hast (Canopy nutzt Python 2.7). Wenn Du Dich mit Python bereits gut auskennst, kannst Du auch die Module IPython und Jupyter zugleich mit Python hochladen; hier findest Du mehr dazu: jupyter.org.
- Entweder in einer Power Shell, über Command Prompt (Windows) oder dem Terminal (bei Mac oder Linux) gibst Du nun dieses Kommando ein:
pip install vpython
Für dieses Modul werden immer wieder Updates geliefert. Mit der Eingabe von Weg
pip install vpython –upgrade erhältst Du die jeweils aktuellste Version.
Lege ein Jupyter Notizbuch an: Dazu stehen Dir zwei Wege zur Verfügung: Über eines Deiner Kommando-Fenster gibst Du den Befehl „“jupyter notebook“ ein. Oder (abhängig davon, welches Betriebssystem Du nutzt) klicke doppelt auf das Icon „Jupyter Notebook„, das Du bei den Anaconda-Hilfsprogrammen findest. Auf der rechten Seite gibt es hier ein Pulldown-Menü, um ein neues Notizbuch zu erstellen.
(Den Notizbuch-Typ kannst Du übrigens ändern, indem Du im Menü „Kernel“- Betriebssystemkern – und dann „Change kernel“ anwählst.)
Wählst Du nun „VPython“, bekommst Du die folgenden Importe
from __future__ import division, print_function
from math import *
- Schreibe ein Testprogramm: In diesem kurzen Programm wird ein weißes Feld vor einem schwarzen Hintergrund erstellt:
from vpython import *
box()So bekommst Du ein VPython-Programm zum Laufen: Klicke in das erste Feld (indem die Vpython Import-Bestätigung steht), dann klicke auf das Symbol zum Ausführen – darauf ist ein nach rechts zeigendes Dreieck zu sehen, das eine senkrechte Linie berührt.
Derzeit musst Du, um ein VPython-Programm erneut zu starten, das runde Pfeil-Symbol anklicken, um den “Betriebssystemkern neu zu starten”, dann klickst Du auf den rot markierten Button, dann auf die erste Eingabezelle, dann auf das Symbol zum Ausführen. Diese Vorgehensweise soll künftig durch eine Anpassung des Jupyter Notizbuchs vereinfacht werden.
- Drehen und Zoomen der Kamera wird genauso gehandhabt wie bei GlowScript VPython; siehe weiter oben.
Dokumentation: Schlage nach bei GlowScript VPython Help, wenn Du mehr zur Dokumentation wissen möchtest. Die einzigen Objekte von GlowScript, die noch nicht implementiert sind, sind Umformungen und 3D-Text. Auch einige Aktionen über die Tastatur sind noch nicht freigeschaltet, weil die Eingaben über das Keyboard erst noch über das Jupyter Notebook verstanden und verarbeitet werden müssen.
Demo-Programme: In diesem zip file findest Du einen ganzen Satz von Demo-Programmen, bei denen Du auf die gleichen Bedienmöglichkeiten zurückgreifen kannst wie sie bei GlowScript VPython verfügbar sind (Button, Radiobutton, Checkbox, Schiebe-Schalter und Menü).
Demo-Programme „fern“-steuern: Hier ist ein Sammelordner mit einer Reihe von Demo-Programmen, die es Dir gestatten, Jupyter VPython-Programme sogar auf Computern oder Mobilgeräten laufen zu lassen, bei denen Python nicht installiert ist. Hier ist die Erklärung dafür, wie diese Fernsteuerung funktioniert. Weil sehr viele Nutzer auf diese Verbindungs-Server Zugriff haben, kann die Arbeit damit täglich unterschiedlich schnell und effektiv laufen.
“Conda” als Hilfe zum Installieren von VPython: Matt Craig bietet eine Alternative an, wie das Programm bei Anaconda installiert werden kann. Benutzer, die nicht über die Classic VPython Anaconda Package verfügen: Eingabe „conda install -c vpython vpython“. Ein Update für eine ältere Version erhältst Du über den Befehl „conda update -c vpython vpython“.
Wer bereits Classic VPython installiert hat und damit weiter arbeiten möchte, sollte sich stattdessen eine neue Umgebung erstellen, in der er das neue VPython ausprobieren kann: „conda create -c vpython -n vpython_jup_env vpython python“.
Nach dem Erstellen der neuen Umgebung must DU diese aktivieren, um das neue VPython auszuprobieren.
So unterscheiden sich GlowScript VPython und Jupyter VPython von Classic VPython
- Vektoren werden so dargestellt: vector(x,y,z) oder vec(x,y,z), nicht so: (x,y,z).
- Die Bezeichnung display wurde aus technischen Gründen geändert auf canvas.
- Die Bezeichnung gdisplay wurde abgeändert zu graph.
- Objekte für curve (Kurven, gekrümmte Linien) und points (Punkte) verfügen über neue Darstellungs-Möglichkeiten.
Bei VPython Help unter glowscript.org ist ein Konvertierungsprogram verfügbar, das die Syntax von Classic in die von GlowScript umwandelt. Das funktioniert nicht perfekt, hilft aber, trotz der meisten Unterschiede mit dem Programm zu arbeiten.
Zum Herunterladen von Classic VPython:
- Klicke auf die für Dich richtige Download-Version auf der Seite und folge den Anweisungen. Drehen und Zoomen der Kamera ist identisch mit der Handhabung bei GlowScript VPython. Ausnahme: Weder Berührung noch Betätigung des Maus-Rades werden unterstützt.
- Classic VPython bleibt auch weiterhin verfügbar, es werden aber keine Updates mehr dafür geliefert.
Mehr Informationen über VPython und die künftigen Entwicklungen
- Hier ist eine Beschreibung des Plans der weiteren Entwicklung von VPython.
Beschreibungen der Optionen bei Classic VPython sind am oberen rechten Rand zu finden:
Dokumentation: Überblick, Tutorials und detaillierte Dokumentation
Download: Frei verfügbare Downloads jeweils für Windows, Macintosh und Linux
Was ist neu bei VPython 6: Neue Bedienung von Maus und Tastatur: Native (speziell für das Programm entwickelte) Buttons, Schieberegler etc.
Logbuch der Programme: Geschichte, Dokumentation, Werdegang
Benutzerforum. (Bis zum Februar 2013 existierte eine Mailing-Liste, wessen Archive bei https://sourceforge.net/mailarchive/forum.php?forum_name=visualpython-users zu finden waren. Bitte benutzt die EMail-Adressen dieser Liste nicht mehr, sondern schreibt direkt an das Benutzerforum.)
Von Nutzern beigesteuerte Programme: Interessante und nützliche Programme, die von verschiedenen Nutzern beigetragen wurden.
Für Entwickler: Für alle, die gerne zur Weiterentwicklung von Python beitragen möchten
Python Website: Die Python Programmiersprache, auf der VPython basiert.
Weitere Informationen zu Nutzung und Anwendung von Python:
Hilfsprogramme bei trinket.io: Sie machen es einfach, GlowScript VPython auf Deiner eigenen Webseite zu editieren oder anzuwenden.
Rhett Allain in seinem Physik-Blog für das Online-Magazin “Wired” liefert dafür einige gute Beispiele.
Jay Wang hat eine Galerie von Photos und Filmen einer Vielzahl interessanter VPython-Anwendungen ins Netz gestellt.
Ein Podcast-Interview über die Geschichte von VPython wurde mit Ruth Chabay und Bruce Sherwood aufgenommen.
Ein Übersichtsposter veranschaulicht die Zusammenhänge zwischen GlowScript VPython und Jupyter VPython
VIDLE: Eine Alternative zu IDLE, womit Du einige wesentliche Probleme gut lösen kannst.
Material und Interaktion: Einführung in die Physik unter Anwendung von VPython
Einige Fachbücher für höhere Ansprüche, die mit VPython erstellt wurden:
Computer-Physik: Probleme lösen mit Python, Rubin H. Landau, Manuel J. Páez, Cristian Bordeianu (2015)
Computerphysik mit Python Mark Newman (2012)
Eine Einführung in Statistische Mechanik und Thermodynamik Robert H. Swendsen (2012)
Gleichgewicht und Statistische Physik mit Computersimulationen mit Python Leonard M. Sander (2013)
Bodenphysik mit Python: Transport im Boden-Pflanzen-Atmosphären-System
Marco Bittelli, Gaylon S. Campbell, and Fausto Tomei (2015)
Computerdarstellung und Visualisierung physikalischer Probleme mit Python Jay Wang (2016)
Schreibe eine EMail an an [email protected], wenn Du in dieser Aufzählung nicht findest, was Du brauchst – oder berichte uns, wie Du VPython benutzt.
Rumänische Übersetzung dieser Seite von Jessica Parker
Estnische Übersetzung dieser Seite von Sonja Kulmala
Indonesische Übersetzung dieser Seite von Jordan Silaen
Polnische Übersetzung einer früheren Version dieser Seite von Milana Sharapovan
Die Entwicklung von VPython wurde zum Teil von der National Science Foundation unterstützt.