Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
Blend_AppFunction Class Reference

Deferred class for a function used to compute a blending
surface between two surfaces, using a guide line.
The vector <X> used in Value, Values and Derivatives methods
has to be the vector of the parametric coordinates U1,V1,
U2,V2, of the extremities of a section on the first and
second surface.

#include <Blend_AppFunction.hxx>

Inheritance diagram for Blend_AppFunction:
Inheritance graph
[legend]

Public Member Functions

virtual DEFINE_STANDARD_ALLOC
Standard_Integer 
NbVariables () const =0
 returns the number of variables of the function.

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 4 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 4 variables.
Returns in the vector SupBound the greatest values allowed
for each of the 4 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 =0
 Returns the minimal Distance beetween two
extremitys of calculed sections.

virtual const gp_PntPnt1 () const =0
 Returns the point on the first support.

virtual const gp_PntPnt2 () const =0
 Returns the point on the first support.

virtual Standard_Boolean IsRational () const =0
 Returns if the section is rationnal

virtual Standard_Real GetSectionSize () const =0
 Returns the length of the maximum section

virtual void GetMinimalWeight (TColStd_Array1OfReal &Weigths) const =0
 Compute the minimal value of weight for each poles
of all sections.

virtual Standard_Integer NbIntervals (const GeomAbs_Shape S) const =0
 Returns the number of intervals for continuity
<S>. May be one if Continuity(me) >= <S>

virtual void Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const =0
 Stores in <T> the parameters bounding the intervals
of continuity <S>.

The array must provide enough room to accomodate
for the parameters. i.e. T.Length() > NbIntervals()
raises
OutOfRange from Standard

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)=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 Resolution (const Standard_Integer IC2d, const Standard_Real Tol, Standard_Real &TolU, Standard_Real &TolV) const =0
Standard_Real Parameter (const Blend_Point &P) const
 Returns the parameter of the point P. Used to
impose the parameters in the approximation.


Member Function Documentation

virtual void Blend_AppFunction::GetBounds ( math_Vector InfBound,
math_Vector SupBound 
) const [pure virtual]
virtual Standard_Real Blend_AppFunction::GetMinimalDistance ( ) const [pure virtual]
virtual void Blend_AppFunction::GetMinimalWeight ( TColStd_Array1OfReal Weigths) const [pure virtual]
virtual Standard_Real Blend_AppFunction::GetSectionSize ( ) const [pure virtual]
virtual void Blend_AppFunction::GetShape ( Standard_Integer NbPoles,
Standard_Integer NbKnots,
Standard_Integer Degree,
Standard_Integer NbPoles2d 
) [pure virtual]
virtual void Blend_AppFunction::GetTolerance ( math_Vector Tolerance,
const Standard_Real  Tol 
) const [pure virtual]
virtual void Blend_AppFunction::GetTolerance ( const Standard_Real  BoundTol,
const Standard_Real  SurfTol,
const Standard_Real  AngleTol,
math_Vector Tol3d,
math_Vector Tol1D 
) const [pure virtual]
virtual void Blend_AppFunction::Intervals ( TColStd_Array1OfReal T,
const GeomAbs_Shape  S 
) const [pure virtual]
virtual Standard_Boolean Blend_AppFunction::IsRational ( ) const [pure virtual]
virtual void Blend_AppFunction::Knots ( TColStd_Array1OfReal TKnots) [pure virtual]
virtual void Blend_AppFunction::Mults ( TColStd_Array1OfInteger TMults) [pure virtual]
virtual Standard_Integer Blend_AppFunction::NbEquations ( ) const [pure virtual]
virtual const gp_Pnt& Blend_AppFunction::Pnt1 ( ) const [pure virtual]
virtual const gp_Pnt& Blend_AppFunction::Pnt2 ( ) const [pure virtual]
virtual void Blend_AppFunction::Resolution ( const Standard_Integer  IC2d,
const Standard_Real  Tol,
Standard_Real TolU,
Standard_Real TolV 
) const [pure virtual]
virtual Standard_Boolean Blend_AppFunction::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]
virtual void Blend_AppFunction::Section ( const Blend_Point P,
TColgp_Array1OfPnt Poles,
TColgp_Array1OfPnt2d Poles2d,
TColStd_Array1OfReal Weigths 
) [pure virtual]
virtual Standard_Boolean Blend_AppFunction::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 
) [pure virtual]
virtual void Blend_AppFunction::Set ( const Standard_Real  Param) [pure virtual]
virtual void Blend_AppFunction::Set ( const Standard_Real  First,
const Standard_Real  Last 
) [pure virtual]
virtual Standard_Boolean Blend_AppFunction::Value ( const math_Vector X,
math_Vector F 
) [pure virtual]
virtual Standard_Boolean Blend_AppFunction::Values ( const math_Vector X,
math_Vector F,
math_Matrix D 
) [pure virtual]

The documentation for this class was generated from the following file: