Go::SmoothTransition Class Reference
['geometry' - a spline library]

This abstract class provides an interface to a curve that can be evaluated. More...

#include <SmoothTransition.h>

Inheritance diagram for Go::SmoothTransition:

Go::EvalCurveSet List of all members.

Public Member Functions

 SmoothTransition (boost::shared_ptr< const SplineCurve > &inters_crv, boost::shared_ptr< const SplineCurve > &p_crv1, boost::shared_ptr< const SplineCurve > &p_crv2, boost::shared_ptr< const ParamSurface > surf1, boost::shared_ptr< const ParamSurface > surf2, double offset_dist1, double offset_dist2, double epsgeo)
 Constructor. By not using CurveOnSurface, object is more general.
virtual ~SmoothTransition ()
 Empty destructor.
virtual std::vector< Pointeval (double t)
 Evaluate the curves.
virtual void eval (double t, int n, std::vector< std::vector< Point > > &der)
 Evaluate the curve derivatives.
virtual double start ()
 Start parameter of domain.
virtual double end ()
 End parameter of domain.
virtual int dim ()
 The geometric dimension of the spline curves.
virtual bool approximationOK (double par, const std::vector< Point > &approxpos, double tol1, double tol2)
 Whether the approximation is within tolerances in input parameter.
virtual int nmbCvs ()
 The number of curves in the curve set.

Detailed Description

This abstract class provides an interface to a curve that can be evaluated.

Given input of curve lying on two surfaces, we create a smooth transition surface by offsetting both surfaces, approximating intersecting curve, continue with projection of intersection curve on the two surfaces. Resulting projected curves and cross tangent curves may then be lofted. We're thus computing four points in eval().

Definition at line 57 of file SmoothTransition.h.


Member Function Documentation

virtual std::vector<Point> Go::SmoothTransition::eval ( double  t  )  [virtual]

Evaluate the curves.

Parameters:
t parameter in which to evaluate.
Returns:
the evaluated points for the curve set.

Implements Go::EvalCurveSet.

virtual void Go::SmoothTransition::eval ( double  t,
int  n,
std::vector< std::vector< Point > > &  der 
) [virtual]

Evaluate the curve derivatives.

Parameters:
t parameter in which to evaluate.
n number of derivatives to compute.
der the evaluated points up to the n'th derivative for the curve set.

Implements Go::EvalCurveSet.

virtual double Go::SmoothTransition::start (  )  [virtual]

Start parameter of domain.

Returns:
start parameter of the spline space.

Implements Go::EvalCurveSet.

virtual double Go::SmoothTransition::end (  )  [virtual]

End parameter of domain.

Returns:
end parameter of the spline space.

Implements Go::EvalCurveSet.

virtual int Go::SmoothTransition::dim (  )  [virtual]

The geometric dimension of the spline curves.

Returns:
geometric dimension of the space.

Implements Go::EvalCurveSet.

virtual bool Go::SmoothTransition::approximationOK ( double  par,
const std::vector< Point > &  approxpos,
double  tol1,
double  tol2 
) [virtual]

Whether the approximation is within tolerances in input parameter.

Parameters:
par parameter in which to evaluate.
approxpos whether the input points are within tolerance from the evaluated points (as given by eval()).
tol1 tolerance used to decide approximation accuracy.
tol2 tolerance used to decide approximation accuracy.
Returns:
whether the approximation is within tolerances in input parameter.

Implements Go::EvalCurveSet.

virtual int Go::SmoothTransition::nmbCvs (  )  [inline, virtual]

The number of curves in the curve set.

Returns:
the number of curves in the curve set.

Implements Go::EvalCurveSet.

Definition at line 82 of file SmoothTransition.h.


The documentation for this class was generated from the following file:
Generated on Mon Jun 11 14:48:19 2007 for GoTools Core Library by  doxygen 1.5.1