VPython: Difference between revisions

From Physics Book
Jump to navigation Jump to search
(Updated images)
(Filled out vpython getting started. Added animation)
Line 3: Line 3:
VPython is a Python graphics module used for modeling objects in 3-dimensional space.  In the field of physics, this is especially useful for calculating and modeling complex relationships between objects and their properties.
VPython is a Python graphics module used for modeling objects in 3-dimensional space.  In the field of physics, this is especially useful for calculating and modeling complex relationships between objects and their properties.


[[File:VPythonMagneticForce.png|thumb|VPython modeling the magnetic force on a moving particle]]
[[File:VPythonMagneticForceAnimated.gif|thumb|VPython modeling the magnetic force on a moving particle]]


==Installation==
==Installation==
Line 15: Line 15:


2. Download and install VPython from [http://sourceforge.net/projects/vpythonwx/files/6.11-release/VPython-Win-64-Py2.7-6.11.exe/download Sourceforge].
2. Download and install VPython from [http://sourceforge.net/projects/vpythonwx/files/6.11-release/VPython-Win-64-Py2.7-6.11.exe/download Sourceforge].


To troubleshoot any installation issues, look at the extensive [http://vpython.org/contents/download_windows.html VPython Windows installation guide].
To troubleshoot any installation issues, look at the extensive [http://vpython.org/contents/download_windows.html VPython Windows installation guide].
Line 38: Line 39:
If your Linux distribution's repository does not have the latest version of VPython, you can run the Windows version using [https://www.winehq.org/ Wine].  The [http://vpython.org/contents/download_linux.html VPython Linux installation guide] contains detailed instructions.
If your Linux distribution's repository does not have the latest version of VPython, you can run the Windows version using [https://www.winehq.org/ Wine].  The [http://vpython.org/contents/download_linux.html VPython Linux installation guide] contains detailed instructions.


==Getting started with Python==
==Getting started with VPython==
Introduction to basic Python use
The easiest way to use VPython is with VIDLE.  VIDLE is a development environment and is the most useful for editing and running code.  To start, open the VIDLE application (it may be called something like VIDLE-Py2.7).  A blank file should open.  Type the following two lines in:
 
<code>from __future__ import division</code>
 
This first line tells Python to not use integer division, which would result in <code>1/3</code> returning the floor <code>0</code> instead of <code>0.3333333333333333</code>.
 
<code>from visual import *</code>
 
This line tells Python to import everything from the visual (VPython) library for you to use.
 
After these two lines, you can create objects, assign variables, do calculations, and much more.  You can also run VPython from the command line, although it may require additional setup.


==Creating VPython Objects==
==Creating VPython Objects==
#Sphere
When you create objects, it is often useful to assign them to variables so you can reference them later to either get or set values describing such as the position and size of the object.
#Arrow
 
#Updating objects
'''Sphere'''
 
<code>particle = sphere(pos=(0,0,0), radius=8, color=color.blue)</code>
 
This creates a blue sphere at the origin with radius 8.
 
'''Arrow'''
 
<code>arrowToOrigin = arrow(pos=(5,0,0), axis=(-5,0,0), color=color.green)</code>
 
This creates a green arrow pointing from <5,0,0> to the origin <0,0,0>.
 
'''Updating objects'''


==Useful built-in functions==
==Useful built-in functions==

Revision as of 01:30, 3 December 2015

Claimed by Nathan Cheek

VPython is a Python graphics module used for modeling objects in 3-dimensional space. In the field of physics, this is especially useful for calculating and modeling complex relationships between objects and their properties.

Error creating thumbnail: sh: /usr/bin/convert: No such file or directory Error code: 127
VPython modeling the magnetic force on a moving particle

Installation

VPython is compatible with Windows, OSX, and Linux. While there is an older VPython version available that supports Python 3, the Georgia Tech physics courses use Python 2 syntax so it is recommended to install the latest version of VPython as outlined below.

Windows

Error creating thumbnail: sh: /usr/bin/convert: No such file or directory Error code: 127
VPython running in Windows 7

1. Install Python-2.7.

2. Download and install VPython from Sourceforge.


To troubleshoot any installation issues, look at the extensive VPython Windows installation guide.

OSX

Error creating thumbnail: sh: /usr/bin/convert: No such file or directory Error code: 127
VPython running in OSX 10.10

1. Install Python-2.7. This is required as the version of Python that Apple provides is not compatible.

2. Download and install the VPython package from Sourceforge.


To troubleshoot installation issues, see the extensive VPython Mac installation guide.

GNU/Linux

Error creating thumbnail: sh: /usr/bin/convert: No such file or directory Error code: 127
VPython running in Ubuntu 15.04

Some Linux distributions include VPython in their repositories. For example, to install VPython in Ubuntu 15.04:

sudo apt-get install python-visual


If your Linux distribution's repository does not have the latest version of VPython, you can run the Windows version using Wine. The VPython Linux installation guide contains detailed instructions.

Getting started with VPython

The easiest way to use VPython is with VIDLE. VIDLE is a development environment and is the most useful for editing and running code. To start, open the VIDLE application (it may be called something like VIDLE-Py2.7). A blank file should open. Type the following two lines in:

from __future__ import division

This first line tells Python to not use integer division, which would result in 1/3 returning the floor 0 instead of 0.3333333333333333.

from visual import *

This line tells Python to import everything from the visual (VPython) library for you to use.

After these two lines, you can create objects, assign variables, do calculations, and much more. You can also run VPython from the command line, although it may require additional setup.

Creating VPython Objects

When you create objects, it is often useful to assign them to variables so you can reference them later to either get or set values describing such as the position and size of the object.

Sphere

particle = sphere(pos=(0,0,0), radius=8, color=color.blue)

This creates a blue sphere at the origin with radius 8.

Arrow

arrowToOrigin = arrow(pos=(5,0,0), axis=(-5,0,0), color=color.green)

This creates a green arrow pointing from <5,0,0> to the origin <0,0,0>.

Updating objects

Useful built-in functions

Vectors

  1. cross(vectorA, vectorB)
  2. mag(vector)

Connectedness

  1. How is this topic connected to something that you are interested in?
  2. How is it connected to your major?
  3. Is there an interesting industrial application?

History

Put this idea in historical context. Give the reader the Who, What, When, Where, and Why.

VPython was originally released in 2000 by David Scherer after he took an introductory physics class at Carnegie Mellon University. At the time, the school used the cT programming language for 2D modeling, and David saw the need for something better. Working with several people including professors Ruth Chabay and Bruce Sherwood, he developed a Python module called Visual. Visual Python or VPython featured 3D modeling, as well as an easier-to-understand object-oriented syntax. VPython is released under an Open Source license, and development continues today.

See also

Are there related topics or categories in this wiki resource for the curious reader to explore? How does this topic fit into that context?

See the VPython Basics wiki page for getting started with Python programming.

Further reading

Books, Articles or other print media on this topic

External links

Internet resources on this topic

References

This section contains the the references you used while writing this page

1. The cT Programming Language

2. VPython Wiki Site