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

Evaluator class representing the projection and and tangent curve given a set of input curves. More...

#include <ProjectCurveAndCrossTan.h>

Inheritance diagram for Go::ProjectCurveAndCrossTan:

Go::EvalCurveSet List of all members.

Public Member Functions

 ProjectCurveAndCrossTan (const SplineCurve &space_crv, const SplineCurve &crosstan_crv, const SplineSurface &surf, const Point *start_par_pt, const Point *end_par_pt, double epsgeo, const RectDomain *domain_of_interest=NULL)
 Constructor.
virtual ~ProjectCurveAndCrossTan ()
 Destructor.
virtual std::vector< Go::Pointeval (double t)
 Evaluate the curve set.
virtual void eval (double t, int n, std::vector< std::vector< Go::Point > > &ders)
 Evaluate derivatives in the curve set.
virtual double start ()
 Start parameter of domain.
virtual double end ()
 End parameter of domain.
virtual int dim ()
 Dimension of space (parameter domain, i.e.
virtual bool approximationOK (double par, const std::vector< Go::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

Evaluator class representing the projection and and tangent curve given a set of input curves.

In total 3 points are computed: the parameter point of the projection on an input surface, the corresponding space pt and the projected cross tangent point.

Definition at line 56 of file ProjectCurveAndCrossTan.h.


Constructor & Destructor Documentation

Go::ProjectCurveAndCrossTan::ProjectCurveAndCrossTan ( const SplineCurve space_crv,
const SplineCurve crosstan_crv,
const SplineSurface surf,
const Point start_par_pt,
const Point end_par_pt,
double  epsgeo,
const RectDomain domain_of_interest = NULL 
)

Constructor.

Parameters:
space_crv the input space curve to project.
crosstan_crv the cross tangent curve associated with space_crv.
surf the parametric surface onto which to project the two curves.
start_par_pt We may require that the projected curve shall start in a specific point in the parameter domain (input pointer may be NULL).
end_par_pt We may require that the projected curve shall end in a specific point in the parameter domain (input pointer may be NULL).
epsgeo geometric tolerance for the projection.
domain_of_interest if not null, specifies the part of the SplineSurface s parametric domain that will be considered.


Member Function Documentation

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

Evaluate the curve set.

Parameters:
t parameter in which to evaluate.
Returns:
the evaluated points in the input parameter, size of vector is 3.

Implements Go::EvalCurveSet.

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

Evaluate derivatives in the curve set.

Parameters:
t parameter in which to evaluate.
n the number of derivatives to evaluate.
ders the evaluated points in the input parameter. Size of vector is 3, each holding 'n + 1' points.

Implements Go::EvalCurveSet.

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

Start parameter of domain.

Returns:
start parameter of domain.

Implements Go::EvalCurveSet.

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

End parameter of domain.

Returns:
end parameter of domain.

Implements Go::EvalCurveSet.

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

Dimension of space (parameter domain, i.e.

2).

Returns:
geometric dimension of the space.

Implements Go::EvalCurveSet.

virtual bool Go::ProjectCurveAndCrossTan::approximationOK ( double  par,
const std::vector< Go::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::ProjectCurveAndCrossTan::nmbCvs (  )  [virtual]

The number of curves in the curve set.

Returns:
the number of curves in the curve set, i.e. 3.

Implements Go::EvalCurveSet.


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