Open CASCADE Technology
6.5.4
|
Deferred class for a function used to compute a blending
surface between a surface and a curve, using a guide line.
The vector <X> used in Value, Values and Derivatives methods
may be the vector of the parametric coordinates U,V,
W of the extremities of a section on the surface and
the curve.
#include <Blend_CSFunction.hxx>
Public Member Functions | |
virtual DEFINE_STANDARD_ALLOC Standard_Integer | NbVariables () const |
Returns 3 (default value). Can be redefined. | |
virtual Standard_Integer | NbEquations () const =0 |
returns the number of equations of the function. | |
virtual Standard_Boolean | Value (const math_Vector &X, math_Vector &F)=0 |
computes the values <F> of the Functions for the variable <X>. Returns True if the computation was done successfully, False otherwise. | |
virtual Standard_Boolean | Derivatives (const math_Vector &X, math_Matrix &D)=0 |
returns the values <D> of the derivatives for the variable <X>. Returns True if the computation was done successfully, False otherwise. | |
virtual Standard_Boolean | Values (const math_Vector &X, math_Vector &F, math_Matrix &D)=0 |
returns the values <F> of the functions and the derivatives <D> for the variable <X>. Returns True if the computation was done successfully, False otherwise. | |
virtual void | Set (const Standard_Real Param)=0 |
Sets the value of the parameter along the guide line. This determines the plane in which the solution has to be found. | |
virtual void | Set (const Standard_Real First, const Standard_Real Last)=0 |
Sets the bounds of the parametric interval on the guide line. This determines the derivatives in these values if the function is not Cn. | |
virtual void | GetTolerance (math_Vector &Tolerance, const Standard_Real Tol) const =0 |
Returns in the vector Tolerance the parametric tolerance for each of the 3 variables; Tol is the tolerance used in 3d space. | |
virtual void | GetBounds (math_Vector &InfBound, math_Vector &SupBound) const =0 |
Returns in the vector InfBound the lowest values allowed for each of the 3 variables. Returns in the vector SupBound the greatest values allowed for each of the 3 variables. | |
virtual Standard_Boolean | IsSolution (const math_Vector &Sol, const Standard_Real Tol)=0 |
Returns Standard_True if Sol is a zero of the function. Tol is the tolerance used in 3d space. The computation is made at the current value of the parameter on the guide line. | |
virtual Standard_Real | GetMinimalDistance () const |
Returns the minimal Distance beetween two extremitys of calculed sections. | |
const gp_Pnt & | Pnt1 () const |
Returns the point on the first support. | |
const gp_Pnt & | Pnt2 () const |
Returns the point on the seconde support. | |
virtual const gp_Pnt & | PointOnS () const =0 |
Returns the point on the surface. | |
virtual const gp_Pnt & | PointOnC () const =0 |
Returns the point on the curve. | |
virtual const gp_Pnt2d & | Pnt2d () const =0 |
Returns U,V coordinates of the point on the surface. | |
virtual Standard_Real | ParameterOnC () const =0 |
Returns parameter of the point on the curve. | |
virtual Standard_Boolean | IsTangencyPoint () const =0 |
Returns True when it is not possible to compute the tangent vectors at PointOnS and/or PointOnC. | |
virtual const gp_Vec & | TangentOnS () const =0 |
Returns the tangent vector at PointOnS, in 3d space. | |
virtual const gp_Vec2d & | Tangent2d () const =0 |
Returns the tangent vector at PointOnS, in the parametric space of the first surface. | |
virtual const gp_Vec & | TangentOnC () const =0 |
Returns the tangent vector at PointOnC, in 3d space. | |
virtual void | Tangent (const Standard_Real U, const Standard_Real V, gp_Vec &TgS, gp_Vec &NormS) const =0 |
Returns the tangent vector at the section, at the beginning and the end of the section, and returns the normal (of the surfaces) at these points. | |
virtual void | GetShape (Standard_Integer &NbPoles, Standard_Integer &NbKnots, Standard_Integer &Degree, Standard_Integer &NbPoles2d)=0 |
virtual void | GetTolerance (const Standard_Real BoundTol, const Standard_Real SurfTol, const Standard_Real AngleTol, math_Vector &Tol3d, math_Vector &Tol1D) const =0 |
Returns the tolerance to reach in approximation to respecte BoundTol error at the Boundary AngleTol tangent error at the Boundary SurfTol error inside the surface. | |
virtual void | Knots (TColStd_Array1OfReal &TKnots)=0 |
virtual void | Mults (TColStd_Array1OfInteger &TMults)=0 |
virtual Standard_Boolean | Section (const Blend_Point &P, TColgp_Array1OfPnt &Poles, TColgp_Array1OfVec &DPoles, TColgp_Array1OfPnt2d &Poles2d, TColgp_Array1OfVec2d &DPoles2d, TColStd_Array1OfReal &Weigths, TColStd_Array1OfReal &DWeigths)=0 |
Used for the first and last section The method returns Standard_True if the derivatives are computed, otherwise it returns Standard_False. | |
virtual void | Section (const Blend_Point &P, TColgp_Array1OfPnt &Poles, TColgp_Array1OfPnt2d &Poles2d, TColStd_Array1OfReal &Weigths)=0 |
virtual Standard_Boolean | Section (const Blend_Point &P, TColgp_Array1OfPnt &Poles, TColgp_Array1OfVec &DPoles, TColgp_Array1OfVec &D2Poles, TColgp_Array1OfPnt2d &Poles2d, TColgp_Array1OfVec2d &DPoles2d, TColgp_Array1OfVec2d &D2Poles2d, TColStd_Array1OfReal &Weigths, TColStd_Array1OfReal &DWeigths, TColStd_Array1OfReal &D2Weigths) |
Used for the first and last section The method returns Standard_True if the derivatives are computed, otherwise it returns Standard_False. |
virtual Standard_Boolean Blend_CSFunction::Derivatives | ( | const math_Vector & | X, |
math_Matrix & | D | ||
) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::GetBounds | ( | math_Vector & | InfBound, |
math_Vector & | SupBound | ||
) | const [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual Standard_Real Blend_CSFunction::GetMinimalDistance | ( | ) | const [virtual] |
Implements Blend_AppFunction.
virtual void Blend_CSFunction::GetShape | ( | Standard_Integer & | NbPoles, |
Standard_Integer & | NbKnots, | ||
Standard_Integer & | Degree, | ||
Standard_Integer & | NbPoles2d | ||
) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::GetTolerance | ( | math_Vector & | Tolerance, |
const Standard_Real | Tol | ||
) | const [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::GetTolerance | ( | const Standard_Real | BoundTol, |
const Standard_Real | SurfTol, | ||
const Standard_Real | AngleTol, | ||
math_Vector & | Tol3d, | ||
math_Vector & | Tol1D | ||
) | const [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual Standard_Boolean Blend_CSFunction::IsSolution | ( | const math_Vector & | Sol, |
const Standard_Real | Tol | ||
) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual Standard_Boolean Blend_CSFunction::IsTangencyPoint | ( | ) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::Knots | ( | TColStd_Array1OfReal & | TKnots | ) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::Mults | ( | TColStd_Array1OfInteger & | TMults | ) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual Standard_Integer Blend_CSFunction::NbEquations | ( | ) | const [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual DEFINE_STANDARD_ALLOC Standard_Integer Blend_CSFunction::NbVariables | ( | ) | const [virtual] |
Implements Blend_AppFunction.
Reimplemented in BlendFunc_CSCircular.
virtual Standard_Real Blend_CSFunction::ParameterOnC | ( | ) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
const gp_Pnt& Blend_CSFunction::Pnt1 | ( | ) | const [virtual] |
Implements Blend_AppFunction.
const gp_Pnt& Blend_CSFunction::Pnt2 | ( | ) | const [virtual] |
Implements Blend_AppFunction.
virtual const gp_Pnt2d& Blend_CSFunction::Pnt2d | ( | ) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual const gp_Pnt& Blend_CSFunction::PointOnC | ( | ) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual const gp_Pnt& Blend_CSFunction::PointOnS | ( | ) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual Standard_Boolean Blend_CSFunction::Section | ( | const Blend_Point & | P, |
TColgp_Array1OfPnt & | Poles, | ||
TColgp_Array1OfVec & | DPoles, | ||
TColgp_Array1OfPnt2d & | Poles2d, | ||
TColgp_Array1OfVec2d & | DPoles2d, | ||
TColStd_Array1OfReal & | Weigths, | ||
TColStd_Array1OfReal & | DWeigths | ||
) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::Section | ( | const Blend_Point & | P, |
TColgp_Array1OfPnt & | Poles, | ||
TColgp_Array1OfPnt2d & | Poles2d, | ||
TColStd_Array1OfReal & | Weigths | ||
) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual Standard_Boolean Blend_CSFunction::Section | ( | const Blend_Point & | P, |
TColgp_Array1OfPnt & | Poles, | ||
TColgp_Array1OfVec & | DPoles, | ||
TColgp_Array1OfVec & | D2Poles, | ||
TColgp_Array1OfPnt2d & | Poles2d, | ||
TColgp_Array1OfVec2d & | DPoles2d, | ||
TColgp_Array1OfVec2d & | D2Poles2d, | ||
TColStd_Array1OfReal & | Weigths, | ||
TColStd_Array1OfReal & | DWeigths, | ||
TColStd_Array1OfReal & | D2Weigths | ||
) | [virtual] |
Implements Blend_AppFunction.
Reimplemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::Set | ( | const Standard_Real | Param | ) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::Set | ( | const Standard_Real | First, |
const Standard_Real | Last | ||
) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual void Blend_CSFunction::Tangent | ( | const Standard_Real | U, |
const Standard_Real | V, | ||
gp_Vec & | TgS, | ||
gp_Vec & | NormS | ||
) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual const gp_Vec2d& Blend_CSFunction::Tangent2d | ( | ) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual const gp_Vec& Blend_CSFunction::TangentOnC | ( | ) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual const gp_Vec& Blend_CSFunction::TangentOnS | ( | ) | const [pure virtual] |
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual Standard_Boolean Blend_CSFunction::Value | ( | const math_Vector & | X, |
math_Vector & | F | ||
) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.
virtual Standard_Boolean Blend_CSFunction::Values | ( | const math_Vector & | X, |
math_Vector & | F, | ||
math_Matrix & | D | ||
) | [pure virtual] |
Implements Blend_AppFunction.
Implemented in BlendFunc_CSCircular, and BlendFunc_CSConstRad.