VPython Προγραμματισμός 3D για συνηθισμένους θνητούς

Το VPython διευκολύνει τη δημιουργία οθονών 3D και κινούμενων σχεδίων πλοήγησης, ακόμη και για άτομα με περιορισμένη εμπειρία προγραμματισμού. Επειδή βασίζεται στην Python, έχει επίσης πολλά να προσφέρει στους έμπειρους προγραμματιστές και ερευνητές. Κάντε κλικ εδώ για να δείτε διάφορα παραδείγματα.

Για μια γρήγορη εισαγωγή, δείτε τα παρακάτω βίντεο YouTube, αλλά να γνωρίζετε ότι για την τρέχουσα VPython 7 έκδοση του VPython το όνομα της μονάδας είναι “vpython”, όχι “οπτικό” και η οθόνη γραφικών εμφανίζεται σε μια καρτέλα του προγράμματος περιήγησης αντί σε γυμνό παράθυρο.

3D αντικείμενα (Ισπανική έκδοση Objetos 3D από Javier Carro)

Μεταβλητή αντιστοίχιση (ισπανική εκδοχή Asignación de Variables από Javier Carro)

Ξεκινώντας βρόχους (ισπανική έκδοση Comenzando con Βuλέs από Javier Carro)

Loops and Animation (Ισπανική εκδοχή Μικρές και ζωηρές εικόνες από τον Javier Carro)

Παράγοντες κλίμακας (ισπανική έκδοση Factores de Escala από Javier Carro)

Σφάλματα σύνταξης σφαλμάτων

Λίστες, Μέρος 1

Λίστες, Μέρος 2

Πώς να ξεκινήσετε τη χρήση του VPython

Νέα στη Python ή / και VPython; Το GlowScript VPython είναι ένα καλό μέρος για να ξεκινήσετε:

· Μεταβείτε στο glowscript.org και δημιουργήστε ένα λογαριασμό.

o Θα πρέπει να δείτε την φράση “Έχετε συνδεθεί ως <όνομα χρήστη> και τα προγράμματά σας είναι εδώ” Κάντε κλικ στο “εδώ”.

o Κάντε κλικ στο “Δημιουργία νέου προγράμματος”. Ονομάστε το “πλαίσιο”. Θα δείτε αυτή τη γραμμή:
Glowscript 2.6 VPython
Προσθέστε αυτήν την δήλωση στην επόμενη γραμμή:
κουτί()

· Στη συνέχεια, κάντε κλικ στο “Εκτέλεση αυτού του προγράμματος”. Θα δείτε ένα λευκό πλαίσιο σε μαύρο φόντο.

o Χρησιμοποιήστε το δεξί κουμπί (ή CTRL-drag αριστερό πλήκτρο) του ποντικιού για να περιστρέψετε την κάμερα για να προβάλετε τη σκηνή από διαφορετικές γωνίες.

o Για μεγέθυνση και σμίκρυνση χρησιμοποιήστε δύο κουμπιά ή ALT / OPTION-drag ή το ποντίκι κύλισης του ποντικιού.
Οθόνη αφής: σύρετε ή περιστρέψτε τα δύο δάχτυλα. πιέζετε / επεκτείνετε το ζουμ.

o Κάντε κλικ στο Βοήθεια για να δείτε ποια γραφικά αντικείμενα είναι διαθέσιμα. Πρόσθετες πηγές πληροφοριών παρέχονται παρακάτω.

Έμπειρος χρήστης του Python / VPython; Χρειάζεστε πρόσβαση σε όλες τις μονάδες της Python; Δοκιμάστε VPython 7:

· Εγκαταστήστε τη διανομή Python του Continuum Anaconda (ή Enthought Canopy). Συνιστούμε να επιλέξετε Python 3.5 ή νεότερη έκδοση, ειδικά εάν έχετε ήδη εγκατεστημένο το “Classic” VPython / Python 2.7 στο μηχάνημά σας. Αν είστε ειδικός χρήστης της Python και θέλετε να χρησιμοποιήσετε φορητούς υπολογιστές Jupyter, μπορείτε να εγκαταστήσετε τις ενότητες IPython και Jupyter στην τρέχουσα εγκατάσταση Python. δείτε το jupyter.org.

 

· Σε μια εντολή Power Shell ή Command Prompt (Windows) ή Terminal (Mac / Linux) εκτελέστε αυτήν την εντολή, η οποία θα εγκαταστήσει VPython 7 για Python 2.7, 3.4, 3.5 ή 3.6:
pip install vpython

Ή αν χρησιμοποιείτε Anaconda, το conda install -c vpython vpython
Θα υπάρξουν συχνές ενημερώσεις σε αυτήν την ενότητα. Μπορείτε να πάρετε την πιο πρόσφατη έκδοση με αυτόν τον τρόπο:
pip install vpython – αναβάθμιση

Ή αν χρησιμοποιείτε το Anaconda, το conda update -c vpython vpython

Μπορείτε να τρέξετε από τον επεξεργαστή / εκκινητή Spyder με το Python 3.5 (3.5.3 ή μεγαλύτερο) ή 3.6, αλλά το νεότερο Spyder 3.2 δεν υποστηρίζει τη χρήση του vpython. Οι προγραμματιστές του Spyder έχουν επίγνωση του προβλήματος και έχουν προσφερθεί να αντιμετωπίσουν το πρόβλημα σε μια μεταγενέστερη έκδοση. Ακολουθούν οι λεπτομέρειες σχετικά με το θέμα, με πληροφορίες σχετικά με τις λύσεις. Μια απλή επιλογή είναι να εγκαταστήσετε το παλαιότερο Spyder 3.1.4 εκτελώντας το σε ένα τερματικό:

conda install spyder = 3.1.4

 

Μπορείτε να ξεκινήσετε τον Spyder κάνοντας κλικ στο εικονίδιο Spyder που είναι εγκατεστημένο με το Anaconda ή μπορείτε να ξεκινήσετε τον Spyder από μια γραμμή εντολών πληκτρολογώντας “spyder”. Στο Spyder πρέπει να πάτε στο Run> Configure και να ορίσετε “Execute σε μια νέα αποκλειστική κονσόλα Python”.

Αν διαβάζετε ή γράφετε αρχεία δεδομένων και θέλετε από προεπιλογή να μεταβούν στον ίδιο φάκελο με το πρόγραμμα Python, μεταβείτε στην επιλογή Εργαλεία> Προτιμήσεις> Εκτέλεση και επιλέξτε τον “Κατάλογο προεπιλεγμένων εργασιών” ως “τον κατάλογο σεναρίων”. Μπορείτε επίσης να επιθυμείτε στο μενού Εργαλεία> Προτιμήσεις> Global work directory να καθορίσετε ποιος κατάλογος Spyder αναζητά πρώτα για προγράμματα.

 

Ορισμένοι χρήστες Mac έχουν αναφέρει ότι η εκτέλεση από το Spyder δεν λειτουργεί. Η ακόλουθη λύση, κάνοντας και επικαλούμενη ένα νέο περιβάλλον, λειτουργεί:

conda δημιουργήσει -n vpclean -c vpython vpython python = 3
πηγή ενεργοποίηση vpclean

 

Για να χρησιμοποιήσετε ένα φορητό υπολογιστή Jupyter (Python 2.7, 3.4, 3.5, 3.6): Υπάρχουν δύο τρόποι για να ξεκινήσετε ένα φορητό υπολογιστή Jupyter. Σε ένα τερματικό, εκτελέστε “jupyter notebook”. Ή (ανάλογα με το λειτουργικό σύστημα που χρησιμοποιείτε), κάντε διπλό κλικ στο εικονίδιο “Jupyter Notebook” που εμφανίζεται ως ένα από τα εργαλεία που σχετίζονται με το Anaconda. Στη δεξιά πλευρά υπάρχει ένα αναπτυσσόμενο μενού για να δημιουργήσετε ένα νέο σημειωματάριο και εάν επιλέξετε “VPython” θα πάρετε την ακόλουθη εισαγωγή, η οποία αν δεν είναι απαραίτητη η χρήση του Python 3 (μπορείτε να αλλάξετε τον τύπο του φορητού υπολογιστή από το μενού Kernel> Change kernel) :
από τη __future__ διαίρεση εισαγωγής, print_function

Εάν έχετε πρόσφατα κυκλοφορήσει το λειτουργικό σύστημα Mac, για να ξεκινήσετε το φορητό υπολογιστή Jupyter ίσως χρειαστεί να το εκτελέσετε:
jupyter notebook – browser = Chrome

Είτε με είτε χωρίς σημειωματάριο Jupyter, “από την εισαγωγή vpython *” εισάγει επίσης όλες τις μαθηματικές λειτουργίες, clock (), random () και arange (). Αυτό απλοποιεί τα κινούμενα προγράμματα μεταξύ του GlowScript VPython και του VPython 7.

 

· Γράψτε ένα πρόγραμμα δοκιμής: Αυτό το σύντομο πρόγραμμα θα εμφανίσει ένα λευκό πλαίσιο σε μαύρο φόντο:
από την εισαγωγή vpython *
κουτί()

Εκτέλεση προγράμματος VPython σε σημειωματάριο Jupyter: Κάντε κλικ στο πρώτο κελί (περιέχει τη δήλωση εισαγωγής vpython) και, στη συνέχεια, κάντε κλικ στο εικονίδιο εκτέλεσης, εκείνο που είναι ένα τρίγωνο που βλέπει προς τα δεξιά και αγγίζει μια κάθετη γραμμή. Προς το παρόν, για να εκτελέσετε εκ νέου ένα πρόγραμμα VPython, πρέπει να κάνετε κλικ στο εικονίδιο με το κυκλικό βέλος για να “επανεκκινήσετε τον πυρήνα” και, στη συνέχεια, κάντε κλικ στο κόκκινο φωτισμένο κουμπί, στη συνέχεια κάντε κλικ στο πρώτο κελί και μετά κάντε κλικ στο εικονίδιο εκτέλεσης.

Ορισμένοι χρήστες θεωρούν βολικό να συμπεριλάβουν στο πρώτο κελί μόνο αυτές τις δηλώσεις:
από την εισαγωγή vpython *
σκηνή = καμβάς ()

Στη συνέχεια τοποθετήστε το υπόλοιπο του προγράμματος σε επόμενα κελιά. Το αποτέλεσμα είναι ότι η οθόνη 3D θα εμφανίζεται ακριβώς κάτω από το πρώτο κελί αντί στο τέλος του τελευταίου κελιού. Εξασφαλίζει επίσης ότι η μονάδα vpython έχει πλήρως προετοιμαστεί πριν συνεχίσει. Επιπλέον, μπορείτε να εκτελέσετε ξανά το πρόγραμμα πιο εύκολα.

Η περιστροφή και η μεγέθυνση της κάμερας είναι ίδια με αυτή του GlowScript VPython. βλέπε παραπάνω.

· Τεκμηρίωση: Δείτε τη Βοήθεια GlowScript VPython για την τεκμηρίωση. Το μόνο χαρακτηριστικό GlowScript που δεν έχει ακόμη εφαρμοστεί είναι οι αλληλεπιδράσεις πληκτρολογίου, εν αναμονή της κατανόησης της σχέσης με τις εισόδους του πληκτρολογίου που επεξεργάζεται ο φορητός υπολογιστής Jupyter.

· Προγράμματα επίδειξης: Υπάρχει μια σειρά προγραμμάτων επίδειξης για φορητούς υπολογιστές Jupyter (αρχείο zip) και για χρήση χωρίς φορητό υπολογιστή Jupyter (αρχείο zip).

· Εκτελέστε προγράμματα επίδειξης εξ αποστάσεως: Υπάρχει ένα πακέτο Binder από ορισμένα demo προγράμματα, το οποίο σας επιτρέπει να εκτελείτε προγράμματα Jupyter VPython ακόμα και σε υπολογιστές ή κινητές συσκευές που δεν έχουν εγκατεστημένο το Python. Ακολουθεί μια επεξήγηση του μηχανισμού Binder. Επειδή οι διακομιστές Binder μοιράζονται μεταξύ μεγάλου αριθμού ανθρώπων, η απόδοση μπορεί να διαφέρει πολύ από μέρα σε μέρα και από ώρα σε ώρα.

· Όσοι έχουν εγκατεστημένο το Classic VPython και θέλουν να το διατηρήσουν θα πρέπει να δημιουργήσουν ένα νέο περιβάλλον στο οποίο θα δοκιμάσουν το νέο VPython: “conda create -c vpython -n vpython_jup_env vpython python”. Αφού δημιουργήσετε το νέο περιβάλλον, θα πρέπει να το ενεργοποιήσετε για να δοκιμάσετε το νέο VPython.

Πώς τα GlowScript VPython και VPython 7 διαφέρουν από το Classic VPython 6

· Οι φορείς πρέπει να αντιπροσωπεύονται ως διάνυσμα (x, y, z) ή vec (x, y, z), όχι ως (x, y, z).

· Η εμφάνιση ονόματος έχει αλλάξει σε καμβά (για τεχνικούς λόγους).

· Το όνομα gdisplay έχει αλλάξει σε γράφημα.

· Τα αντικείμενα καμπύλης και τα σημεία αντικειμένων έχουν ένα νέο σύνολο μεθόδων.

Στη Βοήθεια VPython στο glowscript.org είναι ένα πρόγραμμα μετατροπής για τη μετατροπή από τη σύνταξη Classic σε GlowScript. Κάνει μια ατελείωτη αλλά χρήσιμη δουλειά αντιμετώπισης των κυριότερων διαφορών.

Σχέδια για μελλοντικές εξελίξεις

· Εδώ είναι μια περιγραφή του σχεδίου για τη μελλοντική ανάπτυξη του VPython.

 

Το παλαιότερο Classic VPython 6

· Εδώ υπάρχει τεκμηρίωση σχετικά με το παλαιότερο VPython 6, το οποίο είναι ακόμα διαθέσιμο αλλά δεν υποστηρίζεται πλέον.

Πρόσθετες πηγές πληροφοριών

Τεκμηρίωση: Επισκόπηση, σεμινάρια και λεπτομερή τεκμηρίωση

Φόρουμ χρηστών. (Μέχρι το Φεβρουάριο του 2013, υπήρχε μια λίστα αλληλογραφίας των οποίων τα αρχεία μπορούν να βρεθούν στη διεύθυνση https://sourceforge.net/mailarchive/forum.php?forum_name=visualpython-users.Μπορείτε να μην γράψετε σε αυτήν τη λίστα, αντί να δημοσιεύσετε στον Χρήστη δικαστήριο.)

VPython για την υπερχείλιση στοίβας: ένας ιστότοπος ερωτήσεων και απαντήσεων τρίτου μέρους για τους χρήστες να μοιράζονται το VPython. Ενθαρρύνουμε τους ανθρώπους να δημοσιεύουν στο φόρουμ χρήστη, καθώς υπάρχει μεγαλύτερος αριθμός έμπειρων χρηστών εκεί.

Ιστοσελίδα Python: Η γλώσσα προγραμματισμού Python, στην οποία βασίζεται το VPython

Χρησιμοποιώντας εργαλεία στο trinket.io είναι εύκολο να προσθέσετε τόσο την επεξεργασία όσο και την εκτέλεση του GlowScript VPython στις δικές σας ιστοσελίδες. Ο Rhett Allain στο ιστολόγιο φυσικής του για το περιοδικό Wired έχει δείξει παραδείγματα για αυτό.

Ο Jay Wang έχει δημοσιεύσει μια συλλογή φωτογραφιών και ταινιών από διάφορα ενδιαφέροντα προγράμματα VPython.

Μια συνέντευξη podcast με τους Ruth Chabay και Bruce Sherwood για την ιστορία του VPython.

Ένα άρθρο blog σχετικά με μια γραμμή χρόνου για την ανάπτυξη του VPython από τον Bruce Sherwood.

Μια αφίσα σχετικά με τη σχέση μεταξύ GlowScript VPython και Jupyter VPython

Μια τεχνική παρουσίαση της σχέσης μεταξύ GlowScript VPython και VPython 7.

Θέματα & Αλληλεπιδράσεις: Εισαγωγική φυσική με χρήση του VPython

Ορισμένα βιβλία προχωρημένου επιπέδου στα οποία χρησιμοποιείται το VPython:

Υπολογιστική Φυσική: Επίλυση Προβλημάτων με την Python, Rubin H. Landau, Manuel J. Páez, Cristian Bordeianu (2015)

Υπολογιστική Φυσική με την Python Mark Newman (2012)

Εισαγωγή στη Στατιστική Μηχανική και Θερμοδυναμική Robert H. Swendsen (2012)

Στατιστική φυσική ισορροπίας με προσομοιώσεις υπολογιστών στην Python Leonard M. Sander (2013)

Φυσική εδάφους με την Python: Μεταφορά στο σύστημα εδάφους-φυτών-ατμόσφαιρας
Μάρκο Μπιτέλλι, Γκάμλον Σ. Κάμπελ, και Φάουστο Τομέι (2015)

Υπολογιστική Μοντελοποίηση και Οπτικοποίηση Φυσικών Συστημάτων με Python Jay Wang (2016)

Γράψτε στο [email protected] αν δεν βρείτε αυτό που χρειάζεστε ή για να μας πείτε πώς χρησιμοποιείτε το VPython.