Home Pictures of 3D objects

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=vec(xo,yo,zo))

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

# relative to obj.pos:
obj.rotate(angle=a, axis=vec(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:

radians(360)  # equal to 2*pi

degrees(2*pi) # equal to 360

Also see the rotation function available for vectors.

Top of page