Go::Spline1FunctionInt Class Reference
[Intersections]

Class that represents the "intersection object" of a spline curve of dimension 1. More...

#include <Spline1FunctionInt.h>

Inheritance diagram for Go::Spline1FunctionInt:

Go::Param1FunctionInt Go::ParamFunctionInt Go::ParamObjectInt Go::GeomObjectInt List of all members.

Public Member Functions

 Spline1FunctionInt (boost::shared_ptr< ParamCurve > curve)
 Constructor.
 Spline1FunctionInt (boost::shared_ptr< ParamCurve > curve, ParamFunctionInt *parent)
 Constructor.
virtual ~Spline1FunctionInt ()
 Destructor.
virtual boost::shared_ptr<
Param1FunctionInt
makeIntFunction (boost::shared_ptr< ParamCurve > curve)
 Return an intersection object for the input curve.
virtual bool hasInnerKnots (int pardir) const
 Return true if the object has any inner knots in the specified parameter direction.
virtual bool hasCriticalValsOrKnots (int pardir) const
 Return true if the object has any critical parameter values or inner knots.
virtual std::vector< double > getInnerKnotVals (int pardir, bool sort=false) const
 Return the inner knot values in the specified direction.
virtual std::vector< double > getCriticalValsAndKnots (int pardir) const
 Return the critical parameter values and inner knots for object.
virtual int getMeshSize (int dir)
 Return the size of the geometric sample mesh in the specified direction.
virtual double paramFromMesh (int dir, int idx)
 Return the corresponding mesh parameter.
virtual std::vector< double
>::iterator 
getMesh ()
 Return the geometric sample mesh for the spline function.
virtual bool monotone (Point &dir, double tol=1.0e-15) const
 Return true if the curve is monotone.
virtual int knotIntervalFuzzy (double &t, double tol) const
 Return the knot interval for which t lies inside, moving the value t if it lies close to a knot.
virtual double nextSegmentVal (double par, bool forward) const
 Return the value of the knot next to the input parameter par.

Protected Attributes

boost::shared_ptr< SplineCurve > spcv_

Detailed Description

Class that represents the "intersection object" of a spline curve of dimension 1.

Definition at line 52 of file Spline1FunctionInt.h.


Constructor & Destructor Documentation

Go::Spline1FunctionInt::Spline1FunctionInt ( boost::shared_ptr< ParamCurve >  curve  )  [explicit]

Constructor.

Input curve must be of type SplineCurve. This is not checked run-time, so we rely on the user to obey this rule.

Parameters:
curve the parametric 1-dimensional curve defining the object.

Go::Spline1FunctionInt::Spline1FunctionInt ( boost::shared_ptr< ParamCurve >  curve,
ParamFunctionInt parent 
) [explicit]

Constructor.

Input curve must be of type SplineCurve. This is not checked run-time, so we rely on the user to obey this rule.

Parameters:
curve the parametric 1-dimensional curve defining the object. Can be either a curve or a surface.
parent the parent object to this object.


Member Function Documentation

virtual boost::shared_ptr<Param1FunctionInt> Go::Spline1FunctionInt::makeIntFunction ( boost::shared_ptr< ParamCurve >  curve  )  [virtual]

Return an intersection object for the input curve.

Input curve must be of type SplineCurve. This is not checked run-time, so we rely on the user to obey this rule. This object is used as the parent for the intersection object.

Parameters:
curve the parametric curve defining the intersection object.

Reimplemented from Go::Param1FunctionInt.

virtual bool Go::Spline1FunctionInt::hasInnerKnots ( int  pardir  )  const [virtual]

Return true if the object has any inner knots in the specified parameter direction.

Parameters:
pardir the parameter direction in question. Indexing starts at 0.

Reimplemented from Go::Param1FunctionInt.

virtual bool Go::Spline1FunctionInt::hasCriticalValsOrKnots ( int  pardir  )  const [virtual]

Return true if the object has any critical parameter values or inner knots.

Parameters:
pardir the parameter direction in question. Indexing starts at 0.

Reimplemented from Go::Param1FunctionInt.

virtual std::vector<double> Go::Spline1FunctionInt::getInnerKnotVals ( int  pardir,
bool  sort = false 
) const [virtual]

Return the inner knot values in the specified direction.

Parameters:
pardir the parameter direction in question. Indexing starts at 0.
sort the returned values may be sorted by the function.

Reimplemented from Go::Param1FunctionInt.

virtual std::vector<double> Go::Spline1FunctionInt::getCriticalValsAndKnots ( int  pardir  )  const [virtual]

Return the critical parameter values and inner knots for object.

Parameters:
pardir the parameter direction in question. Indexing starts at 0.

Reimplemented from Go::Param1FunctionInt.

virtual int Go::Spline1FunctionInt::getMeshSize ( int  dir  )  [virtual]

Return the size of the geometric sample mesh in the specified direction.

Parameters:
dir the parameter direction in question. Indexing starts at 0.

Reimplemented from Go::Param1FunctionInt.

virtual double Go::Spline1FunctionInt::paramFromMesh ( int  dir,
int  idx 
) [virtual]

Return the corresponding mesh parameter.

Parameters:
dir the parameter direction in question. Indexing starts at 0.
idx the mesh idx in the specified direction. Indexing starts at 0.

Reimplemented from Go::Param1FunctionInt.

virtual std::vector<double>::iterator Go::Spline1FunctionInt::getMesh (  )  [virtual]

Return the geometric sample mesh for the spline function.

Returns:
The geometric sample mesh for the spline function.

Reimplemented from Go::Param1FunctionInt.

virtual bool Go::Spline1FunctionInt::monotone ( Point &  dir,
double  tol = 1.0e-15 
) const [virtual]

Return true if the curve is monotone.

Parameters:
dir the direction in which the object is monotone. Is not of interest here as the curve has only 1 parameter direction.
Returns:
Whether or not the curve is monotone.

Reimplemented from Go::Param1FunctionInt.

virtual int Go::Spline1FunctionInt::knotIntervalFuzzy ( double &  t,
double  tol 
) const [virtual]

Return the knot interval for which t lies inside, moving the value t if it lies close to a knot.

Parameters:
t the parameter value
tol the parametric tolerance deciding if the input parameter t should be moved.

Reimplemented from Go::Param1FunctionInt.

virtual double Go::Spline1FunctionInt::nextSegmentVal ( double  par,
bool  forward 
) const [virtual]

Return the value of the knot next to the input parameter par.

Parameters:
par the parameter value
forward if true we return the closest knot to the right, otherwise the closest knot to the left.
Returns:
The knot closest to the input parameter.

Reimplemented from Go::Param1FunctionInt.


The documentation for this class was generated from the following file:
Generated on Fri Nov 23 12:24:35 2007 for GoTools Intersections Library by  doxygen 1.5.1