Open CASCADE Technology 6.6.0
Public Member Functions
Blend_RstRstFunction Class Reference

Deferred class for a function used to compute a blending
surface between a surface and a pcurve on an other Surface,
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_RstRstFunction.hxx>

Inheritance diagram for Blend_RstRstFunction:
Inheritance graph
[legend]

Public Member Functions

virtual Standard_Integer NbVariables () const =0
 Returns 2 (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 variable;
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 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.

Standard_Real GetMinimalDistance () const
 Returns the minimal Distance beetween two
extremitys of calculed sections.

const gp_PntPnt1 () const
 Returns the point on the first support.

const gp_PntPnt2 () const
 Returns the point on the seconde support.

virtual const gp_PntPointOnRst1 () const =0
 Returns the point on the surface.

virtual const gp_PntPointOnRst2 () const =0
 Returns the point on the curve.

virtual const gp_Pnt2dPnt2dOnRst1 () const =0
 Returns U,V coordinates of the point on the surface.

virtual const gp_Pnt2dPnt2dOnRst2 () const =0
 Returns U,V coordinates of the point on the curve on
surface.

virtual Standard_Real ParameterOnRst1 () const =0
 Returns parameter of the point on the curve.

virtual Standard_Real ParameterOnRst2 () 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 PointOnRst.

virtual const gp_VecTangentOnRst1 () const =0
 Returns the tangent vector at PointOnS, in 3d space.

virtual const gp_Vec2dTangent2dOnRst1 () const =0
 Returns the tangent vector at PointOnS, in the
parametric space of the first surface.

virtual const gp_VecTangentOnRst2 () const =0
 Returns the tangent vector at PointOnC, in 3d space.

virtual const gp_Vec2dTangent2dOnRst2 () const =0
 Returns the tangent vector at PointOnRst, in the
parametric space of the second surface.

virtual Blend_DecrochStatus Decroch (const math_Vector &Sol, gp_Vec &NRst1, gp_Vec &TgRst1, gp_Vec &NRst2, gp_Vec &TgRst2) const =0
 Enables to implement a criterion of decrochage
specific to the function.
Warning: Can be called without previous call of issolution
but the values calculated can be senseless.

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()

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 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_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 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.


Member Function Documentation

virtual Blend_DecrochStatus Blend_RstRstFunction::Decroch ( const math_Vector Sol,
gp_Vec NRst1,
gp_Vec TgRst1,
gp_Vec NRst2,
gp_Vec TgRst2 
) const [pure virtual]
virtual Standard_Boolean Blend_RstRstFunction::Derivatives ( const math_Vector X,
math_Matrix D 
) [pure virtual]
virtual void Blend_RstRstFunction::GetBounds ( math_Vector InfBound,
math_Vector SupBound 
) const [pure virtual]
Standard_Real Blend_RstRstFunction::GetMinimalDistance ( ) const [virtual]
virtual void Blend_RstRstFunction::GetMinimalWeight ( TColStd_Array1OfReal Weigths) const [pure virtual]
virtual Standard_Real Blend_RstRstFunction::GetSectionSize ( ) const [pure virtual]
virtual void Blend_RstRstFunction::GetShape ( Standard_Integer NbPoles,
Standard_Integer NbKnots,
Standard_Integer Degree,
Standard_Integer NbPoles2d 
) [pure virtual]
virtual void Blend_RstRstFunction::GetTolerance ( math_Vector Tolerance,
const Standard_Real  Tol 
) const [pure virtual]
virtual void Blend_RstRstFunction::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_RstRstFunction::Intervals ( TColStd_Array1OfReal T,
const GeomAbs_Shape  S 
) const [pure virtual]
virtual Standard_Boolean Blend_RstRstFunction::IsRational ( ) const [pure virtual]
virtual Standard_Boolean Blend_RstRstFunction::IsSolution ( const math_Vector Sol,
const Standard_Real  Tol 
) [pure virtual]
virtual Standard_Boolean Blend_RstRstFunction::IsTangencyPoint ( ) const [pure virtual]
virtual void Blend_RstRstFunction::Knots ( TColStd_Array1OfReal TKnots) [pure virtual]
virtual void Blend_RstRstFunction::Mults ( TColStd_Array1OfInteger TMults) [pure virtual]
virtual Standard_Integer Blend_RstRstFunction::NbEquations ( ) const [pure virtual]
virtual Standard_Integer Blend_RstRstFunction::NbIntervals ( const GeomAbs_Shape  S) const [pure virtual]
virtual Standard_Integer Blend_RstRstFunction::NbVariables ( ) const [pure virtual]
virtual Standard_Real Blend_RstRstFunction::ParameterOnRst1 ( ) const [pure virtual]
virtual Standard_Real Blend_RstRstFunction::ParameterOnRst2 ( ) const [pure virtual]
const gp_Pnt& Blend_RstRstFunction::Pnt1 ( ) const [virtual]

Implements Blend_AppFunction.

const gp_Pnt& Blend_RstRstFunction::Pnt2 ( ) const [virtual]

Implements Blend_AppFunction.

virtual const gp_Pnt2d& Blend_RstRstFunction::Pnt2dOnRst1 ( ) const [pure virtual]
virtual const gp_Pnt2d& Blend_RstRstFunction::Pnt2dOnRst2 ( ) const [pure virtual]
virtual const gp_Pnt& Blend_RstRstFunction::PointOnRst1 ( ) const [pure virtual]
virtual const gp_Pnt& Blend_RstRstFunction::PointOnRst2 ( ) const [pure virtual]
virtual Standard_Boolean Blend_RstRstFunction::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_RstRstFunction::Section ( const Blend_Point P,
TColgp_Array1OfPnt Poles,
TColgp_Array1OfPnt2d Poles2d,
TColStd_Array1OfReal Weigths 
) [pure virtual]
virtual Standard_Boolean Blend_RstRstFunction::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_RstRstFunction::Set ( const Standard_Real  Param) [pure virtual]
virtual void Blend_RstRstFunction::Set ( const Standard_Real  First,
const Standard_Real  Last 
) [pure virtual]
virtual const gp_Vec2d& Blend_RstRstFunction::Tangent2dOnRst1 ( ) const [pure virtual]
virtual const gp_Vec2d& Blend_RstRstFunction::Tangent2dOnRst2 ( ) const [pure virtual]
virtual const gp_Vec& Blend_RstRstFunction::TangentOnRst1 ( ) const [pure virtual]
virtual const gp_Vec& Blend_RstRstFunction::TangentOnRst2 ( ) const [pure virtual]
virtual Standard_Boolean Blend_RstRstFunction::Value ( const math_Vector X,
math_Vector F 
) [pure virtual]
virtual Standard_Boolean Blend_RstRstFunction::Values ( const math_Vector X,
math_Vector F,
math_Matrix D 
) [pure virtual]

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines