GlowScript
Claimed by Autumn Toms Fall 2020
GlowScript is an intuitive website used to create 3D animations and share them on the web. Programs can be written right in your browser, stored on the cloud for free, and easily shared with a link.
GlowScript supports both VPython, JavaScript, and CoffeeScript, however for the purposes of this course, programs are written in VPython.
All labs are completed in GlowScript.
glowscript.org
Once signed in, select the bolded word here to open your programs.
Example Programs provides examples of all the capabilities of the GlowScript website.
Forum opens a Google Group page where anyone can ask questions or voice concerns regarding the use of GlowScript.
Help in the upper right offers basic instructions on how to use the website including how to get started and how to use the text editor.
Writing a Program
Select Create New Program to create a new program in the desired folder. Names for programs cannot include spaces or underscores. New folders and programs can be set as either private or public.
Run this progam in the upper left will run the program.
Share or export this program opens a page containing instructions on the different ways available to share your code.
Introduction to Vpython
Header
GlowScript 3.0 VPython is required in header to run Vpython.
Comments
A comment is a line of code that is not run.
Begin any line with # to create a comment. Comments are not only useful to the writer to help them keep track of their own code, comments also allow other people using your code to keep track of what your program is executing.
Deleting # from the beginning of a line of code will result in that line of code running next time the code is run.
Initialize new Variables
Use var and assign values.
var x, y x = 2 y = 3
3D Objects
Arrow
newArrow = arrow(pos=vec(x0, y0, z0), shaftwidth=1, axis_and_length=vec(x1, y1, z1))
This creates arrow that starts at point <x0, y0, z0> that points <x1, y1, z1>
Box
newBox = box(pos=vec(x0, y0, z0), size=vec(L, H, W))
This creates a box with a center <x0, y0, z0> and with size <L, H, W>
Sphere
newSphere = sphere(pos=vec(x0, y0, z0), size=vec(x1, y1, z1) )
This creates a box with a center <x0, y0, z0> and with size <x1, y1, z1>
Customizing Objects
Color
There are 10 default colors that can be used.
color.red, color.yellow, color.green, color.orange color.blue, color.cyan, color.magenta, color.purple color.black, color.white
Colors can be customized by user by using following code.
vec(1, 0.5, 0.3)
In this case, R is 1, G = 0.7, and B = 0.2, which has color of pastel orange.
Animation Speed
rate(50)
This line will halt each computations to have interval of 1.0/50.0 second.
Supported Environments
Browsers: Chrome, Firefox, Safari, Internet Explorer, and Edge. Chrome and Edge are recommended.
Devices: Most smart devices running Android or iOS.
Connectedness
Glowscirpt will be used in all labs to find ideal data that is compared to observed data.
History
David Scherer and Bruce Sherwood began working on GlowScript in May 2011. GlowScript 0.7 was released to the public in January of 2012. The website originally only ran using VPython, but grew to support JavaScript and CoffeeScript a year later. Website began supporting textures, then straight-lined shapes, text, and eventually curves. CoffeeScript was also removed due to its low use. GlowSript currently operates on version 3.0.
See Also
Below are links to other Physics Book pages that discuss VPython in much more depth.
VPython
VPython Basics
VPython Common Errors and Troubleshooting
VPython Functions
VPython Loops
VPython 3D Objects
References
https://www.glowscript.org/docs/VPythonDocs/index.html
https://www.glowscript.org/docs/VPythonDocs/history.html