Home

If you're new to Python
and VPython: Introduction

A VPython tutorial

Pictures of 3D objects

What's new

# Rotating an Object

The following statement will rotate the object named "obj" through an angle (measured in radians) about an axis relative to an origin:

obj.rotate(angle=a,
axis=vec(x,y,z),
origin=vector(xo,yo,zo))

If the origin is not given, rotation is relative to obj.pos:

# relative to obj.pos:
obj.rotate(angle=a, axis=vector(x,y,z))

If neither the axis nor the origin is specified, rotation is about obj.axis, relative to obj.pos:

# about obj.axis, relative to obj.pos:
obj.rotate(angle=a)

The rotate function applies a transformation to the specified object (sphere, box, etc.). The transformation is a rotation of angle radians, counterclockwise around the line defined by origin and origin+axis. By default, rotations are around the object's own pos and axis.

There are functions for converting between degrees and radians, where there are 2*pi radians in 360 degrees: