Open CASCADE Technology 6.6.0
Public Member Functions
Blend_CSFunction Class Reference

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>

Inheritance diagram for Blend_CSFunction:
Inheritance graph
[legend]

Public Member Functions

virtual 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_PntPnt1 () const
 Returns the point on the first support.

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

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

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

virtual const gp_Pnt2dPnt2d () 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_VecTangentOnS () const =0
 Returns the tangent vector at PointOnS, in 3d space.

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

virtual const gp_VecTangentOnC () 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.


Member Function Documentation

virtual Standard_Boolean Blend_CSFunction::Derivatives ( const math_Vector X,
math_Matrix D 
) [pure virtual]
virtual void Blend_CSFunction::GetBounds ( math_Vector InfBound,
math_Vector SupBound 
) const [pure virtual]
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]
virtual void Blend_CSFunction::GetTolerance ( math_Vector Tolerance,
const Standard_Real  Tol 
) const [pure virtual]
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]
virtual Standard_Boolean Blend_CSFunction::IsSolution ( const math_Vector Sol,
const Standard_Real  Tol 
) [pure virtual]
virtual Standard_Boolean Blend_CSFunction::IsTangencyPoint ( ) const [pure virtual]
virtual void Blend_CSFunction::Knots ( TColStd_Array1OfReal TKnots) [pure virtual]
virtual void Blend_CSFunction::Mults ( TColStd_Array1OfInteger TMults) [pure virtual]
virtual Standard_Integer Blend_CSFunction::NbEquations ( ) const [pure virtual]
virtual Standard_Integer Blend_CSFunction::NbVariables ( ) const [virtual]

Implements Blend_AppFunction.

Reimplemented in BlendFunc_CSCircular.

virtual Standard_Real Blend_CSFunction::ParameterOnC ( ) const [pure virtual]
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]
virtual const gp_Pnt& Blend_CSFunction::PointOnC ( ) const [pure virtual]
virtual const gp_Pnt& Blend_CSFunction::PointOnS ( ) const [pure virtual]
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]
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_CSConstRad, and BlendFunc_CSCircular.

virtual void Blend_CSFunction::Section ( const Blend_Point P,
TColgp_Array1OfPnt Poles,
TColgp_Array1OfPnt2d Poles2d,
TColStd_Array1OfReal Weigths 
) [pure virtual]
virtual void Blend_CSFunction::Set ( const Standard_Real  First,
const Standard_Real  Last 
) [pure virtual]
virtual void Blend_CSFunction::Set ( const Standard_Real  Param) [pure virtual]
virtual void Blend_CSFunction::Tangent ( const Standard_Real  U,
const Standard_Real  V,
gp_Vec TgS,
gp_Vec NormS 
) const [pure virtual]
virtual const gp_Vec2d& Blend_CSFunction::Tangent2d ( ) const [pure virtual]
virtual const gp_Vec& Blend_CSFunction::TangentOnC ( ) const [pure virtual]
virtual const gp_Vec& Blend_CSFunction::TangentOnS ( ) const [pure virtual]
virtual Standard_Boolean Blend_CSFunction::Value ( const math_Vector X,
math_Vector F 
) [pure virtual]
virtual Standard_Boolean Blend_CSFunction::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