indexing description: "[ Objects that can be rotated in all three dimensions. ]" author: "" date: "$Date$" revision: "$Revision$" deferred class EM_VIZ_ROTATEABLE inherit EM_VIZ_UPDATEABLE feature -- Initialization make_rotateable is -- Initialize with `a_size' do set_rotation_axis ([0.0, 0.0, 1.0]) set_rotation_angle (0.0) end feature -- Access rotation_axis: EM_VECTOR3D -- Axis of rotation rotation_angle: DOUBLE -- Angle of rotation feature -- Resizing set_rotation_axis (an_axis: like rotation_axis) is -- Set rotation axis do rotation_axis := an_axis expire ensure -- set: expired: needs_update end set_rotation_angle (an_angle: like rotation_angle) is -- Set rotation angle do rotation_angle := an_angle expire ensure set: rotation_angle = an_angle expired: needs_update end end