#include <var_rad.hxx>


Public Member Functions | |
| virtual void | append (var_radius &var_rad) |
Appends the var_rad_rot_ellipse. | |
| virtual void | calibrate_radius (double t0, double t1) |
| Calibrates the variable radius between the two given parameters. | |
| logical | calibrated (void) const |
Returns TRUE if the ends are calibrated; otherwise, it returns FALSE. | |
| virtual var_radius * | copy () const |
Copies the var_rad_rot_ellipse. | |
| virtual void | debug (const char *leader, FILE *fp=debug_file_ptr) const |
| Prints out a class-specific identifying line to standard output or to the specified file. | |
| virtual double | end_deriv1 () const |
| Returns the end derivative. | |
| double | end_maj () const |
| Returns the end major. | |
| double | end_min () const |
| Returns the end minor. | |
| virtual double | end_radius () const |
| Returns the end radius. | |
| double | end_rot () const |
| Returns the end rotation. | |
| virtual void | eval (double v_param, logical is_left, double *val=NULL, double *der1=NULL, double *der2=NULL, double *der3=NULL, double *der4=NULL) const |
| Finds the position of the 1st, 2nd, and 3rd derivatives. | |
| virtual void | eval (double v_param, double *val=NULL, evaluate_curve_side side=evaluate_curve_unknown, double *der1=NULL, double *der2=NULL, double *der3=NULL, double *der4=NULL) const |
| Finds the position of the 1st, 2nd, and 3rd derivatives. | |
| void | eval_all (double param, int n_derivs, double left_rad[5], double right_rad[5], double left_tbw[5], double right_tbw[5]) const |
| Returns the position of all the evaluators. | |
| virtual logical | explicit_var_radius () const |
Returns TRUE if the radius function is an explicit function of v. | |
| virtual int | form () const |
Returns a var_rad_rot_ellipse form. | |
| virtual void | get_disc_info (discontinuity_info &di) const |
| Get the discontinuities of the radius function. | |
| double | get_max_radius () const |
| Returns the maximum radius. | |
| double | get_min_radius () const |
| Returns the minimum radius. | |
| virtual logical | implicit_var_radius () const |
| Determines if implicit. | |
| virtual logical | is_constant (double *rad_value=NULL) const |
| Determines whether the input is constant. | |
| virtual logical | is_zero (double eps) const |
Returns TRUE the two var_rad_rot_ellipse are zero - else, it returns FALSE. | |
| virtual bs2_curve | make_bs2 () const |
| Returns a bs2_curve representation of this radius function. | |
| virtual void | negate () |
| Reverses this variable radius, front to back. | |
| virtual logical | operator!= (var_radius const &other) const |
Determines whether a var_rad_rot_ellipse is equal. | |
| virtual void | operator*= (SPAtransf const &trans) |
| Transforms the variable radius by the specified transform. | |
| virtual logical | operator== (var_radius const &other) const |
Implements an assignment operator, which tests to see if a var_rad_rot_ellipse is equal to a var_radius. | |
| SPAinterval | param_range (void) const |
| Returns the parameter range. | |
| logical | ref_is_left () const |
Returns TRUE if the given reference is from the left - else, it returns FALSE. | |
| virtual void | reparam (double start, double end) |
| Reparameterizes the variable radius with new start and end parameter values. | |
| virtual void | restore_data () |
Restores the data for a var_rad_rot_ellipse from a save file. | |
| virtual void | save () const |
Saves the form or id, calls save_data, saves the major radius, minor radius, rotation, and face left or right. | |
| void | save_data () const |
Saves the information for the var_radius to a save file. | |
| void | set_end_maj (double new_maj1) |
| Sets end major. | |
| void | set_end_min (double new_min1) |
| Sets end minor. | |
| void | set_end_param (double new_param) |
| Sets the end parameter. | |
| void | set_end_rot (double new_rot1) |
| Sets end rotation. | |
| void | set_max_radius (double max_rad) |
| Sets the maximum radius. | |
| void | set_min_radius (double min_rad) |
| Sets the minimum radius. | |
| void | set_ref_face (logical new_left) |
| Sets the referenced face. | |
| void | set_start_maj (double new_maj0) |
| Sets the start major. | |
| void | set_start_min (double new_min0) |
| Sets the start minor. | |
| void | set_start_param (double new_param) |
| Sets the start parameter. | |
| void | set_start_rot (double new_rot0) |
| Sets the start rotation. | |
| virtual void | shift (double delta) |
| Shifts the variable radius by the given value. | |
| virtual void | split (double param, var_radius *pieces[2]) |
| Returns the split. | |
| virtual double | start_deriv1 () const |
| Returns the start derivative. | |
| double | start_maj () const |
| Returns the start major. | |
| double | start_min () const |
| Returns the start minor. | |
| virtual double | start_radius () const |
| Returns the start radius. | |
| double | start_rot () const |
| Returns the start rotation. | |
| virtual void | trim_to_range (SPAinterval const &r) |
| Trims to range. | |
| virtual char const * | type_name () const |
| Returns the string "elliptical". | |
| virtual void | uncalibrate_radius () |
| Un-calibrates the radius function(s). | |
| var_rad_rot_ellipse (var_rad_rot_ellipse const &old) | |
| C++ copy constructor requests memory for this object and populates it with the data from the object supplied as an argument. | |
| var_rad_rot_ellipse (double start_maj, double end_maj, double start_min, double end_min, double start_rot, double end_rot, logical left_face_is_ref) | |
| C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments. | |
| var_rad_rot_ellipse () | |
| C++ allocation constructor requests memory for this object but does not populate it. | |
| virtual logical | zero_end_deriv1 (logical at_start, double tol=SPAresabs) const |
Returns TRUE if the first derivative at the start or end point of the var_rad_rot_ellipse is zero (less than SPAresabs). | |
| virtual logical | zero_end_radius (logical at_start, double tol=SPAresabs) const |
Returns TRUE if the radius at the start or end point of the var_rad_rot_ellipse is zero (less than SPAresabs). | |
| virtual | ~var_rad_rot_ellipse () |
C++ destructor, deleting a var_rad_rot_ellipse. | |
| var_rad_rot_ellipse::var_rad_rot_ellipse | ( | ) |
C++ allocation constructor requests memory for this object but does not populate it.
| var_rad_rot_ellipse::var_rad_rot_ellipse | ( | double | start_maj, | |
| double | end_maj, | |||
| double | start_min, | |||
| double | end_min, | |||
| double | start_rot, | |||
| double | end_rot, | |||
| logical | left_face_is_ref | |||
| ) |
C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments.
| start_maj | start major. | |
| end_maj | end major. | |
| start_min | start minor. | |
| end_min | end minor. | |
| start_rot | start rotation. | |
| end_rot | end rotation. | |
| left_face_is_ref | left face. |
| var_rad_rot_ellipse::var_rad_rot_ellipse | ( | var_rad_rot_ellipse const & | old | ) |
C++ copy constructor requests memory for this object and populates it with the data from the object supplied as an argument.
| old | old. |
| virtual var_rad_rot_ellipse::~var_rad_rot_ellipse | ( | ) | [virtual] |
C++ destructor, deleting a var_rad_rot_ellipse.
| virtual void var_rad_rot_ellipse::append | ( | var_radius & | var_rad | ) | [virtual] |
Appends the var_rad_rot_ellipse.
| var_rad | variance radius. |
Reimplemented from var_radius.
| virtual void var_radius::calibrate_radius | ( | double | t0, | |
| double | t1 | |||
| ) | [virtual, inherited] |
Calibrates the variable radius between the two given parameters.
| t0 | start parameter. | |
| t1 | end parameter. |
Reimplemented in var_rad_functional.
| logical var_radius::calibrated | ( | void | ) | const [inline, inherited] |
Returns TRUE if the ends are calibrated; otherwise, it returns FALSE.
| virtual var_radius* var_rad_rot_ellipse::copy | ( | ) | const [virtual] |
| virtual void var_rad_rot_ellipse::debug | ( | const char * | leader, | |
| FILE * | fp = debug_file_ptr | |||
| ) | const [virtual] |
Prints out a class-specific identifying line to standard output or to the specified file.
| leader | leader. | |
| fp | file. |
Reimplemented from var_radius.
| virtual double var_rad_rot_ellipse::end_deriv1 | ( | ) | const [virtual] |
| double var_rad_rot_ellipse::end_maj | ( | ) | const [inline] |
Returns the end major.
| double var_rad_rot_ellipse::end_min | ( | ) | const [inline] |
Returns the end minor.
| virtual double var_rad_rot_ellipse::end_radius | ( | ) | const [virtual] |
| double var_rad_rot_ellipse::end_rot | ( | ) | const [inline] |
Returns the end rotation.
| virtual void var_rad_rot_ellipse::eval | ( | double | v_param, | |
| logical | is_left, | |||
| double * | val = NULL, |
|||
| double * | der1 = NULL, |
|||
| double * | der2 = NULL, |
|||
| double * | der3 = NULL, |
|||
| double * | der4 = NULL | |||
| ) | const [virtual] |
Finds the position of the 1st, 2nd, and 3rd derivatives.
| v_param | v-parameter. | |
| is_left | is left. | |
| val | value. | |
| der1 | 1st derivative. | |
| der2 | 2nd derivative. | |
| der3 | 3rd derivative. | |
| der4 | 4th derivative. |
| virtual void var_rad_rot_ellipse::eval | ( | double | v_param, | |
| double * | val = NULL, |
|||
| evaluate_curve_side | side = evaluate_curve_unknown, |
|||
| double * | der1 = NULL, |
|||
| double * | der2 = NULL, |
|||
| double * | der3 = NULL, |
|||
| double * | der4 = NULL | |||
| ) | const [virtual] |
Finds the position of the 1st, 2nd, and 3rd derivatives.
| v_param | v-parameter. | |
| val | value. | |
| der1 | 1st derivative. | |
| der2 | 2nd derivative. | |
| der3 | 3rd derivative. | |
| der4 | 4th derivative. |
Reimplemented from var_radius.
| void var_rad_rot_ellipse::eval_all | ( | double | param, | |
| int | n_derivs, | |||
| double | left_rad[5], | |||
| double | right_rad[5], | |||
| double | left_tbw[5], | |||
| double | right_tbw[5] | |||
| ) | const |
Returns the position of all the evaluators.
| param | parameter. | |
| n_derivs | n derivatives. | |
| left_rad | left radius. | |
| right_rad | right radius. | |
| left_tbw | left thumbweight. | |
| right_tbw | right thumbweight. |
| virtual logical var_radius::explicit_var_radius | ( | ) | const [inline, virtual, inherited] |
Returns TRUE if the radius function is an explicit function of v.
Role: The function is an explicit function if it can be evaluated independently of the blend surface.
| virtual int var_rad_rot_ellipse::form | ( | ) | const [inline, virtual] |
| virtual void var_radius::get_disc_info | ( | discontinuity_info & | di | ) | const [virtual, inherited] |
| double var_radius::get_max_radius | ( | ) | const [inline, inherited] |
Returns the maximum radius.
| double var_radius::get_min_radius | ( | ) | const [inline, inherited] |
Returns the minimum radius.
| virtual logical var_rad_rot_ellipse::implicit_var_radius | ( | ) | const [inline, virtual] |
| virtual logical var_rad_rot_ellipse::is_constant | ( | double * | rad_value = NULL |
) | const [virtual] |
Determines whether the input is constant.
| const_rad_value | tolerance. |
Implements var_radius.
| virtual logical var_rad_rot_ellipse::is_zero | ( | double | eps | ) | const [inline, virtual] |
Returns TRUE the two var_rad_rot_ellipse are zero - else, it returns FALSE.
| eps | zero tolerance. |
Reimplemented from var_radius.
| virtual bs2_curve var_rad_rot_ellipse::make_bs2 | ( | ) | const [virtual] |
| virtual void var_rad_rot_ellipse::negate | ( | ) | [virtual] |
| virtual logical var_rad_rot_ellipse::operator!= | ( | var_radius const & | other | ) | const [inline, virtual] |
Determines whether a var_rad_rot_ellipse is equal.
| other | other var_radius. |
Reimplemented from var_radius.
| virtual void var_rad_rot_ellipse::operator*= | ( | SPAtransf const & | trans | ) | [virtual] |
Transforms the variable radius by the specified transform.
| trans | transformation. |
Reimplemented from var_radius.
| virtual logical var_rad_rot_ellipse::operator== | ( | var_radius const & | other | ) | const [virtual] |
Implements an assignment operator, which tests to see if a var_rad_rot_ellipse is equal to a var_radius.
| other | other var_radius. |
Reimplemented from var_radius.
| SPAinterval var_radius::param_range | ( | void | ) | const [inline, inherited] |
Returns the parameter range.
| logical var_rad_rot_ellipse::ref_is_left | ( | ) | const [inline] |
Returns TRUE if the given reference is from the left - else, it returns FALSE.
| virtual void var_radius::reparam | ( | double | start, | |
| double | end | |||
| ) | [virtual, inherited] |
Reparameterizes the variable radius with new start and end parameter values.
| start | start parameter. | |
| end | end parameter. |
Reimplemented in var_rad_functional.
| virtual void var_rad_rot_ellipse::restore_data | ( | ) | [virtual] |
Restores the data for a var_rad_rot_ellipse from a save file.
Role:
read_real | Start major radius |
read_real | End major radius |
read_real | Start minor radius |
read_real | End minor radius |
read_real | Start rotation angle |
read_real | End rotation angle |
read_logical | Face for reference. Either "right" or "left" |
Reimplemented from var_radius.
| virtual void var_rad_rot_ellipse::save | ( | ) | const [virtual] |
Saves the form or id, calls save_data, saves the major radius, minor radius, rotation, and face left or right.
Reimplemented from var_radius.
| void var_radius::save_data | ( | ) | const [inherited] |
Saves the information for the var_radius to a save file.
| void var_rad_rot_ellipse::set_end_maj | ( | double | new_maj1 | ) | [inline] |
Sets end major.
| new_maj1 | new major. |
| void var_rad_rot_ellipse::set_end_min | ( | double | new_min1 | ) | [inline] |
Sets end minor.
| new_min1 | new minor. |
| void var_radius::set_end_param | ( | double | new_param | ) | [inline, inherited] |
Sets the end parameter.
| new_param | end parameter. |
| void var_rad_rot_ellipse::set_end_rot | ( | double | new_rot1 | ) | [inline] |
Sets end rotation.
| new_rot1 | new rotation. |
| void var_radius::set_max_radius | ( | double | max_rad | ) | [inline, inherited] |
Sets the maximum radius.
| max_rad | maximum radius. |
| void var_radius::set_min_radius | ( | double | min_rad | ) | [inline, inherited] |
Sets the minimum radius.
| min_rad | minimum radius. |
| void var_rad_rot_ellipse::set_ref_face | ( | logical | new_left | ) | [inline] |
Sets the referenced face.
| new_left | new left. |
| void var_rad_rot_ellipse::set_start_maj | ( | double | new_maj0 | ) | [inline] |
Sets the start major.
| new_maj0 | new major. |
| void var_rad_rot_ellipse::set_start_min | ( | double | new_min0 | ) | [inline] |
Sets the start minor.
| new_min0 | new minor. |
| void var_radius::set_start_param | ( | double | new_param | ) | [inline, inherited] |
Sets the start parameter.
| new_param | start parameter. |
| void var_rad_rot_ellipse::set_start_rot | ( | double | new_rot0 | ) | [inline] |
Sets the start rotation.
| new_rot0 | new rotation. |
| virtual void var_radius::shift | ( | double | delta | ) | [virtual, inherited] |
Shifts the variable radius by the given value.
| delta | shift delta. |
Reimplemented in var_rad_functional.
| virtual void var_rad_rot_ellipse::split | ( | double | param, | |
| var_radius * | pieces[2] | |||
| ) | [virtual] |
| virtual double var_rad_rot_ellipse::start_deriv1 | ( | ) | const [virtual] |
| double var_rad_rot_ellipse::start_maj | ( | ) | const [inline] |
Returns the start major.
| double var_rad_rot_ellipse::start_min | ( | ) | const [inline] |
Returns the start minor.
| virtual double var_rad_rot_ellipse::start_radius | ( | ) | const [virtual] |
| double var_rad_rot_ellipse::start_rot | ( | ) | const [inline] |
Returns the start rotation.
| virtual void var_rad_rot_ellipse::trim_to_range | ( | SPAinterval const & | r | ) | [virtual] |
| virtual char const* var_rad_rot_ellipse::type_name | ( | ) | const [virtual] |
| virtual void var_radius::uncalibrate_radius | ( | ) | [virtual, inherited] |
Un-calibrates the radius function(s).
| virtual logical var_rad_rot_ellipse::zero_end_deriv1 | ( | logical | at_start, | |
| double | tol = SPAresabs | |||
| ) | const [inline, virtual] |
Returns TRUE if the first derivative at the start or end point of the var_rad_rot_ellipse is zero (less than SPAresabs).
| at_start | at start point if true. | |
| tol | tolerance. |
Implements var_radius.
| virtual logical var_rad_rot_ellipse::zero_end_radius | ( | logical | at_start, | |
| double | tol = SPAresabs | |||
| ) | const [inline, virtual] |
Returns TRUE if the radius at the start or end point of the var_rad_rot_ellipse is zero (less than SPAresabs).
| at_start | at start point if true. | |
| tol | tolerance. |
Implements var_radius.