#include <var_rad.hxx>


Public Member Functions | |
| virtual void | append (var_radius &vrad) |
| Appends one variable radius to the specified variable radius. | |
| 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 a var_rad_fixed_width. | |
| virtual void | debug (const char *leader, FILE *fp=debug_file_ptr) const |
Outputs a leader line and details about the var_rad_fixed_width to the debug file or to the specified file. | |
| virtual double | end_deriv1 () const |
| Returns the end of the first derivative. | |
| virtual double | end_radius () const |
| Returns the end of the radius. | |
| 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 |
| Evaluates a variable radius at a given parameter value. | |
| virtual logical | explicit_var_radius () const |
Returns TRUE if the radius function is an explicit function of v. | |
| virtual int | form () const |
Returns the form FIXED_WIDTH. | |
| 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 |
Returns TRUE for a var_rad_fixed_width. | |
| virtual logical | is_constant (double *rad_value=NULL) const |
| Determines whether the input is constant. | |
| virtual logical | is_zero (double eps) const |
Returns TRUE if a radius function is zero everywhere, to within a given tolerance - 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 |
Tests the two var_rad_fixed_widths to see if they are not equal. | |
| virtual void | operator*= (SPAtransf const &trans) |
Transforms the var_rad_fixed_width. | |
| virtual logical | operator== (var_radius const &other) const |
Implements an assignment operator, which tests to see if a var_rad_fixed_width is equal to a var_radius. | |
| SPAinterval | param_range (void) const |
| Returns the parameter range. | |
| 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_fixed_width from a save file. | |
| virtual void | save () const |
Saves the form or id, calls a save_data, then saves width data. | |
| void | save_data () const |
Saves the information for the var_radius to a save file. | |
| void | set_end_param (double new_param) |
| Sets the end parameter. | |
| void | set_max_radius (double max_rad) |
| Sets the maximum radius. | |
| void | set_min_radius (double min_rad) |
| Sets the minimum radius. | |
| void | set_start_param (double new_param) |
| Sets the start parameter. | |
| void | set_width (double width) |
| Sets the width of the radius. | |
| virtual void | shift (double delta) |
| Shifts the variable radius by the given value. | |
| virtual void | split (double param, var_radius *pieces[2]) |
| Splits a variable radius into two pieces. | |
| virtual double | start_deriv1 () const |
| Returns the start of the first derivative. | |
| virtual double | start_radius () const |
| Returns the start of the radius. | |
| virtual void | trim_to_range (SPAinterval const &r) |
| Trims the variable radius to the specified range. | |
| virtual char const * | type_name () const |
| Returns the string "fixed_width". | |
| virtual void | uncalibrate_radius () |
| Un-calibrates the radius function(s). | |
| var_rad_fixed_width (var_rad_fixed_width 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_fixed_width (double width=-1.) | |
| C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments. | |
| double | width () const |
Gets the width of a var_rad_fixed_width. | |
| virtual logical | zero_end_deriv1 (logical, double=SPAresabs) const |
Returns TRUE if the first derivative at the start or end point of the var_rad_fixed_width 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_fixed_width is zero (less than SPAresabs). | |
| virtual | ~var_rad_fixed_width () |
C++ destructor, deleting a var_fixed_width. | |
Role: This radius is an implicit function of the parameter v. It cannot be evaluated explicitly as r(v) without partially evaluating the blend surface itself.
| var_rad_fixed_width::var_rad_fixed_width | ( | double | width = -1. |
) |
C++ initialize constructor requests memory for this object and populates it with the data supplied as arguments.
| width | given width. |
| var_rad_fixed_width::var_rad_fixed_width | ( | var_rad_fixed_width const & | old | ) |
C++ copy constructor requests memory for this object and populates it with the data from the object supplied as an argument.
| old | given width. |
| virtual var_rad_fixed_width::~var_rad_fixed_width | ( | ) | [virtual] |
C++ destructor, deleting a var_fixed_width.
| virtual void var_radius::append | ( | var_radius & | vrad | ) | [virtual, inherited] |
Appends one variable radius to the specified variable radius.
| varrad | variable radius. |
Reimplemented in var_rad_const, var_rad_two_ends, var_rad_functional, and var_rad_rot_ellipse.
| 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_fixed_width::copy | ( | ) | const [virtual] |
| virtual void var_rad_fixed_width::debug | ( | const char * | leader, | |
| FILE * | fp = debug_file_ptr | |||
| ) | const [virtual] |
Outputs a leader line and details about the var_rad_fixed_width to the debug file or to the specified file.
| leader | leader string. | |
| fp | file pointer. |
Reimplemented from var_radius.
| virtual double var_rad_fixed_width::end_deriv1 | ( | ) | const [inline, virtual] |
| virtual double var_rad_fixed_width::end_radius | ( | ) | const [inline, virtual] |
| virtual void var_radius::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, inherited] |
Evaluates a variable radius at a given parameter value.
| v_param | parameter value. | |
| val | value. | |
| der1 | first derivative. | |
| der2 | second derivative. | |
| der3 | third derivative initializer. | |
| der4 | fourth derivative. |
Reimplemented in var_rad_const, var_rad_two_ends, var_rad_functional, and var_rad_rot_ellipse.
| 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_fixed_width::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_fixed_width::implicit_var_radius | ( | ) | const [inline, virtual] |
| virtual logical var_rad_fixed_width::is_constant | ( | double * | rad_value = NULL |
) | const [inline, virtual] |
| virtual logical var_rad_fixed_width::is_zero | ( | double | eps | ) | const [inline, virtual] |
Returns TRUE if a radius function is zero everywhere, to within a given tolerance - else, it returns FALSE.
| eps | zero tolerance. |
Reimplemented from var_radius.
| virtual bs2_curve var_rad_fixed_width::make_bs2 | ( | ) | const [virtual] |
| virtual void var_radius::negate | ( | ) | [virtual, inherited] |
Reverses this variable radius, front to back.
Reimplemented in var_rad_two_ends, var_rad_functional, and var_rad_rot_ellipse.
| virtual logical var_rad_fixed_width::operator!= | ( | var_radius const & | other | ) | const [inline, virtual] |
Tests the two var_rad_fixed_widths to see if they are not equal.
| other | variable radius. |
Reimplemented from var_radius.
| virtual void var_rad_fixed_width::operator*= | ( | SPAtransf const & | trans | ) | [virtual] |
Transforms the var_rad_fixed_width.
Role: Only scaling is significant here.
| trans | transformation. |
Reimplemented from var_radius.
| virtual logical var_rad_fixed_width::operator== | ( | var_radius const & | other | ) | const [virtual] |
Implements an assignment operator, which tests to see if a var_rad_fixed_width is equal to a var_radius.
| other | variable radius. |
Reimplemented from var_radius.
| SPAinterval var_radius::param_range | ( | void | ) | const [inline, inherited] |
Returns the parameter range.
| 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_fixed_width::restore_data | ( | ) | [virtual] |
Restores the data for a var_rad_fixed_width from a save file.
Role:
var_radius::restore_data | Save the underlying data |
read_real | radius width |
Reimplemented from var_radius.
| virtual void var_rad_fixed_width::save | ( | ) | const [virtual] |
| void var_radius::save_data | ( | ) | const [inherited] |
Saves the information for the var_radius to a save file.
| void var_radius::set_end_param | ( | double | new_param | ) | [inline, inherited] |
Sets the end parameter.
| new_param | end parameter. |
| 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_radius::set_start_param | ( | double | new_param | ) | [inline, inherited] |
Sets the start parameter.
| new_param | start parameter. |
| void var_rad_fixed_width::set_width | ( | double | width | ) | [inline] |
Sets the width of the radius.
| width | width value. |
| 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_radius::split | ( | double | param, | |
| var_radius * | pieces[2] | |||
| ) | [virtual, inherited] |
Splits a variable radius into two pieces.
| param | parameter value. | |
| pieces | the two pieces. |
Reimplemented in var_rad_two_ends, var_rad_functional, and var_rad_rot_ellipse.
| virtual double var_rad_fixed_width::start_deriv1 | ( | ) | const [inline, virtual] |
| virtual double var_rad_fixed_width::start_radius | ( | ) | const [inline, virtual] |
| virtual void var_radius::trim_to_range | ( | SPAinterval const & | r | ) | [virtual, inherited] |
Trims the variable radius to the specified range.
| inter | interval. |
Reimplemented in var_rad_two_ends, and var_rad_rot_ellipse.
| virtual char const* var_rad_fixed_width::type_name | ( | ) | const [virtual] |
| virtual void var_radius::uncalibrate_radius | ( | ) | [virtual, inherited] |
Un-calibrates the radius function(s).
| double var_rad_fixed_width::width | ( | ) | const [inline] |
Gets the width of a var_rad_fixed_width.
| virtual logical var_rad_fixed_width::zero_end_deriv1 | ( | logical | , | |
| double | = SPAresabs | |||
| ) | const [inline, virtual] |
Returns TRUE if the first derivative at the start or end point of the var_rad_fixed_width is zero (less than SPAresabs).
| at_start | at start point if true. | |
| tol | tolerance. |
Implements var_radius.
| virtual logical var_rad_fixed_width::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_fixed_width is zero (less than SPAresabs).
| at_start | at start point if true. | |
| tol | tolerance. |
Implements var_radius.