EW_Object | +---- EW_Generic | +---- EW_Cube
The EW_Cube provides a six sided polyhedron that can be used in constructive solid geometry modeling. The Cube is defined by a center point, a radius (measured from it's center to the center of any of it's six sides before scaling), an x-y-z scaling vector and a Euler rotation vector.
EW_Cube::EW_Cube()
The constructor creates a cube with a radius of 10.0, and assigns a new name to the EW_Cube. The EW_Cube (like most other objects), does not allocate a point in the point_db for itself. The creator of the EW_Cube is responsible for doing this.EW_bool EW_Cube::uses_point (int p)
Returns true if point p is the center of the EW_Cube.EW_bool EW_Cube::select_point_down (int p, sgVec3 v)
When the EW_Cube's center point is selected (by a mouse down event), this method is called. The EW_Cube doesn't use this event.EW_bool EW_Cube::select_point_drag (int p, sgVec3 v) When the EW_Cube's center point is selected and then dragged (by an FL_DRAG event), this method is called.
void EW_Cube::update_gui() Update the user interface with the current values.
void EW_Cube::write (FILE *file, int ind) This method writes the EW_Cube object to the file specified by the first argument in Extreme Wave's native file format. The second argument is the amount of space to indent this object (in columns) so that the resulting file is pretty-printed.
void EW_Cube::initialize() This method initializes the class so that it can be used by Extreme Wave. This should be done only once.
void EW_Cube::pdb_register() This method registers all the available procedures with the procedural database.
void EW_Cube::replicate() Create a new cube with the same properties as this one. All points will be duplicated.
void EW_Cube::gl_draw() Draws the cube.
SCM EW_Cube::set_radius(SCM a)
SCM EW_Cube::get_radius(SCM a)
SCM EW_Cube::set_center(SCM a)
SCM EW_Cube::get_center(SCM a)
SCM EW_Cube::set_bone(SCM a)
SCM EW_Cube::get_bone(SCM a)
SCM EW_Cube::set_material(SCM a)
SCM EW_Cube::get_material(SCM a)
SCM EW_Cube::set_scale(SCM a)
SCM EW_Cube::get_scale(SCM a)
SCM EW_Cube::set_rotate(SCM a)
SCM EW_Cube::get_rotate(SCM a)
EW_Cube* EW_Cube::scm2obj(SCM a) Convert a scheme EW_Cube object to a C++ EW_Cube object.
SCM EW_Cube::scm2obj(EW_Object *a) Convert an EW_Cube object to a scheme EW_Cube object.
none.