OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKFillet
BRepBlend


BRepBlend_AppFuncRoot Class Reference

Function to approximate by AppSurface
.

#include <BRepBlend_AppFuncRoot.hxx>

Inheritance diagram for BRepBlend_AppFuncRoot:

Inheritance graph
[legend]

Public Member Functions

virtual Standard_EXPORT Standard_Boolean D0 (const Standard_Real Param, const Standard_Real First, const Standard_Real Last, TColgp_Array1OfPnt &Poles, TColgp_Array1OfPnt2d &Poles2d, TColStd_Array1OfReal &Weigths)
 compute the section for v = param

virtual Standard_EXPORT Standard_Boolean D1 (const Standard_Real Param, const Standard_Real First, const Standard_Real Last, TColgp_Array1OfPnt &Poles, TColgp_Array1OfVec &DPoles, TColgp_Array1OfPnt2d &Poles2d, TColgp_Array1OfVec2d &DPoles2d, TColStd_Array1OfReal &Weigths, TColStd_Array1OfReal &DWeigths)
 compute the first derivative in v direction of the
section for v = param

virtual Standard_EXPORT Standard_Boolean D2 (const Standard_Real Param, const Standard_Real First, const Standard_Real Last, 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)
 compute the second derivative in v direction of the
section for v = param

virtual Standard_EXPORT Standard_Integer Nb2dCurves () const
 get the number of 2d curves to approximate.

virtual Standard_EXPORT void SectionShape (Standard_Integer &NbPoles, Standard_Integer &NbKnots, Standard_Integer &Degree) const
 get the format of an section

virtual Standard_EXPORT void Knots (TColStd_Array1OfReal &TKnots) const
 get the Knots of the section

virtual Standard_EXPORT void Mults (TColStd_Array1OfInteger &TMults) const
 get the Multplicities of the section

virtual Standard_EXPORT Standard_Boolean IsRational () const
 Returns if the section is rationnal or not
.
virtual Standard_EXPORT Standard_Integer NbIntervals (const GeomAbs_Shape S) const
 Returns the number of intervals for continuity
<s>. May be one if Continuity(me) >= <s>
.
virtual Standard_EXPORT void Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const
 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 Standard_EXPORT void SetInterval (const Standard_Real First, const Standard_Real Last)
 Sets the bounds of the parametric interval on
the fonction
This determines the derivatives in these values if the
function is not Cn.
.
virtual Standard_EXPORT void Resolution (const Standard_Integer Index, const Standard_Real Tol, Standard_Real &TolU, Standard_Real &TolV) const
 Returns the resolutions in the sub-space 2d <index> --
This information is usfull to find an good tolerance in
2d approximation
.
virtual Standard_EXPORT void GetTolerance (const Standard_Real BoundTol, const Standard_Real SurfTol, const Standard_Real AngleTol, TColStd_Array1OfReal &Tol3d) const
 Returns the tolerance to reach in approximation
to respecte
BoundTol error at the Boundary
AngleTol tangent error at the Boundary (in radian)
SurfTol error inside the surface.
.
virtual Standard_EXPORT void SetTolerance (const Standard_Real Tol3d, const Standard_Real Tol2d)
 Is usfull, if (me) have to be run numerical
algorithme to perform D0, D1 or D2
.
virtual Standard_EXPORT gp_Pnt BarycentreOfSurf () const
 Get the barycentre of Surface. An very poor
estimation is sufficent. This information is usefull
to perform well conditionned rational approximation.
.
virtual Standard_EXPORT Standard_Real MaximalSection () const
 Returns the length of the maximum section. This
information is usefull to perform well conditionned rational
approximation.
.
virtual Standard_EXPORT void GetMinimalWeight (TColStd_Array1OfReal &Weigths) const
 Compute the minimal value of weight for each poles
of all sections. This information is usefull to
perform well conditionned rational approximation.
.
virtual Standard_EXPORT void Point (const Blend_AppFunction &Func, const Standard_Real Param, const math_Vector &Sol, Blend_Point &Pnt) const =0
virtual Standard_EXPORT void Vec (math_Vector &Sol, const Blend_Point &Pnt) const =0
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Protected Member Functions

Standard_EXPORT BRepBlend_AppFuncRoot (Handle(BRepBlend_Line)&Line, Blend_AppFunction &Func, const Standard_Real Tol3d, const Standard_Real Tol2d)

Private Member Functions

Standard_EXPORT Standard_Boolean SearchPoint (Blend_AppFunction &Func, const Standard_Real Param, Blend_Point &Pnt)
Standard_EXPORT Standard_Boolean SearchLocation (const Standard_Real Param, const Standard_Integer FirstIndex, const Standard_Integer LastIndex, Standard_Integer &ParamIndex) const

Private Attributes

Handle_BRepBlend_Line myLine
Standard_Address myFunc
Standard_Integer mydimension
math_Vector myTolerance
Blend_Point myPnt
gp_Pnt myBary
math_Vector X1
math_Vector X2
math_Vector XInit
math_Vector Sol

Constructor & Destructor Documentation

Standard_EXPORT BRepBlend_AppFuncRoot::BRepBlend_AppFuncRoot Handle(BRepBlend_Line)&  Line,
Blend_AppFunction Func,
const Standard_Real  Tol3d,
const Standard_Real  Tol2d
[protected]
 


Member Function Documentation

virtual Standard_EXPORT gp_Pnt BRepBlend_AppFuncRoot::BarycentreOfSurf  )  const [virtual]
 

virtual Standard_EXPORT Standard_Boolean BRepBlend_AppFuncRoot::D0 const Standard_Real  Param,
const Standard_Real  First,
const Standard_Real  Last,
TColgp_Array1OfPnt &  Poles,
TColgp_Array1OfPnt2d &  Poles2d,
TColStd_Array1OfReal &  Weigths
[virtual]
 

virtual Standard_EXPORT Standard_Boolean BRepBlend_AppFuncRoot::D1 const Standard_Real  Param,
const Standard_Real  First,
const Standard_Real  Last,
TColgp_Array1OfPnt &  Poles,
TColgp_Array1OfVec &  DPoles,
TColgp_Array1OfPnt2d &  Poles2d,
TColgp_Array1OfVec2d &  DPoles2d,
TColStd_Array1OfReal &  Weigths,
TColStd_Array1OfReal &  DWeigths
[virtual]
 

virtual Standard_EXPORT Standard_Boolean BRepBlend_AppFuncRoot::D2 const Standard_Real  Param,
const Standard_Real  First,
const Standard_Real  Last,
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]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::GetMinimalWeight TColStd_Array1OfReal &  Weigths  )  const [virtual]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::GetTolerance const Standard_Real  BoundTol,
const Standard_Real  SurfTol,
const Standard_Real  AngleTol,
TColStd_Array1OfReal &  Tol3d
const [virtual]
 

Standard_EXPORT const BRepBlend_AppFuncRoot::Handle Standard_Type   )  const
 

Reimplemented in BRepBlend_AppFunc, BRepBlend_AppFuncRst, and BRepBlend_AppFuncRstRst.

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::Intervals TColStd_Array1OfReal &  T,
const GeomAbs_Shape  S
const [virtual]
 

virtual Standard_EXPORT Standard_Boolean BRepBlend_AppFuncRoot::IsRational  )  const [virtual]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::Knots TColStd_Array1OfReal &  TKnots  )  const [virtual]
 

virtual Standard_EXPORT Standard_Real BRepBlend_AppFuncRoot::MaximalSection  )  const [virtual]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::Mults TColStd_Array1OfInteger &  TMults  )  const [virtual]
 

virtual Standard_EXPORT Standard_Integer BRepBlend_AppFuncRoot::Nb2dCurves  )  const [virtual]
 

virtual Standard_EXPORT Standard_Integer BRepBlend_AppFuncRoot::NbIntervals const GeomAbs_Shape  S  )  const [virtual]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::Point const Blend_AppFunction Func,
const Standard_Real  Param,
const math_Vector &  Sol,
Blend_Point Pnt
const [pure virtual]
 

Implemented in BRepBlend_AppFunc, BRepBlend_AppFuncRst, and BRepBlend_AppFuncRstRst.

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::Resolution const Standard_Integer  Index,
const Standard_Real  Tol,
Standard_Real &  TolU,
Standard_Real &  TolV
const [virtual]
 

Standard_EXPORT Standard_Boolean BRepBlend_AppFuncRoot::SearchLocation const Standard_Real  Param,
const Standard_Integer  FirstIndex,
const Standard_Integer  LastIndex,
Standard_Integer &  ParamIndex
const [private]
 

Standard_EXPORT Standard_Boolean BRepBlend_AppFuncRoot::SearchPoint Blend_AppFunction Func,
const Standard_Real  Param,
Blend_Point Pnt
[private]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::SectionShape Standard_Integer &  NbPoles,
Standard_Integer &  NbKnots,
Standard_Integer &  Degree
const [virtual]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::SetInterval const Standard_Real  First,
const Standard_Real  Last
[virtual]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::SetTolerance const Standard_Real  Tol3d,
const Standard_Real  Tol2d
[virtual]
 

virtual Standard_EXPORT void BRepBlend_AppFuncRoot::Vec math_Vector &  Sol,
const Blend_Point Pnt
const [pure virtual]
 

Implemented in BRepBlend_AppFunc, BRepBlend_AppFuncRst, and BRepBlend_AppFuncRstRst.


Field Documentation

gp_Pnt BRepBlend_AppFuncRoot::myBary [private]
 

Standard_Integer BRepBlend_AppFuncRoot::mydimension [private]
 

Standard_Address BRepBlend_AppFuncRoot::myFunc [private]
 

Handle_BRepBlend_Line BRepBlend_AppFuncRoot::myLine [private]
 

Blend_Point BRepBlend_AppFuncRoot::myPnt [private]
 

math_Vector BRepBlend_AppFuncRoot::myTolerance [private]
 

math_Vector BRepBlend_AppFuncRoot::Sol [private]
 

math_Vector BRepBlend_AppFuncRoot::X1 [private]
 

math_Vector BRepBlend_AppFuncRoot::X2 [private]
 

math_Vector BRepBlend_AppFuncRoot::XInit [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:40:54 2008 for OpenCASCADE by  doxygen 1.4.1