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

ModelingAlgorithms
TKFillet
BRepBlend


BRepBlend_RstRstLineBuilder Class Reference

This class processes the data resulting from
Blend_CSWalking but it takes in consideration the Surface
supporting the curve to detect the breakpoint.

As a result, the criteria of distribution of
points on the line become more flexible because it
should calculate values approached
by an approximation of continued functions based on the
Blend_RstRstFunction.

Thus this pseudo path necessitates 3 criteria of
regrouping :

1) exit of the domain of the curve

2) exit of the domain of the surface

3) stall as there is a solution of problem
surf/surf within the domain of the surface
of support of the restriction.
.

#include <BRepBlend_RstRstLineBuilder.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT BRepBlend_RstRstLineBuilder (const Handle(Adaptor3d_HSurface)&Surf1, const Handle(Adaptor2d_HCurve2d)&Rst1, const Handle(Adaptor3d_TopolTool)&Domain1, const Handle(Adaptor3d_HSurface)&Surf2, const Handle(Adaptor2d_HCurve2d)&Rst2, const Handle(Adaptor3d_TopolTool)&Domain2)
Standard_EXPORT void Perform (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv1, Blend_CurvPointFuncInv &FinvP1, Blend_SurfCurvFuncInv &Finv2, Blend_CurvPointFuncInv &FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector &Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro=Standard_False)
Standard_EXPORT Standard_Boolean PerformFirstSection (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv1, Blend_CurvPointFuncInv &FinvP1, Blend_SurfCurvFuncInv &Finv2, Blend_CurvPointFuncInv &FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector &Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &Psol, math_Vector &ParSol)
Standard_EXPORT Standard_Boolean Complete (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv1, Blend_CurvPointFuncInv &FinvP1, Blend_SurfCurvFuncInv &Finv2, Blend_CurvPointFuncInv &FinvP2, const Standard_Real Pmin)
Standard_Boolean IsDone () const
const Handle_BRepBlend_Line & Line () const
Standard_Boolean Decroch1Start () const
Standard_Boolean Decroch1End () const
Standard_Boolean Decroch2Start () const
Standard_Boolean Decroch2End () const

Private Member Functions

Standard_EXPORT void InternalPerform (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv1, Blend_CurvPointFuncInv &FinvP1, Blend_SurfCurvFuncInv &Finv2, Blend_CurvPointFuncInv &FinvP2, const Standard_Real Bound)
Standard_EXPORT Standard_Boolean Recadre1 (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv, math_Vector &Solinv, Standard_Boolean &IsVtx, Handle(Adaptor3d_HVertex)&Vtx)
Standard_EXPORT Standard_Boolean Recadre2 (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv, math_Vector &Solinv, Standard_Boolean &IsVtx, Handle(Adaptor3d_HVertex)&Vtx)
Standard_EXPORT Standard_Boolean Recadre1 (Blend_CurvPointFuncInv &FinvP, math_Vector &Solinv, Standard_Boolean &IsVtx, Handle(Adaptor3d_HVertex)&Vtx)
Standard_EXPORT Standard_Boolean Recadre2 (Blend_CurvPointFuncInv &FinvP, math_Vector &Solinv, Standard_Boolean &IsVtx, Handle(Adaptor3d_HVertex)&Vtx)
Standard_EXPORT void Transition (const Standard_Boolean OnFirst, const Handle(Adaptor2d_HCurve2d)&Arc, const Standard_Real Param, IntSurf_Transition &TLine, IntSurf_Transition &TArc)
Standard_EXPORT void MakeExtremity (BRepBlend_Extremity &Extrem, const Standard_Boolean OnFirst, const Handle(Adaptor2d_HCurve2d)&Arc, const Standard_Real Param, const Standard_Boolean IsVtx, const Handle(Adaptor3d_HVertex)&Vtx)
Standard_EXPORT Blend_Status CheckDeflectionOnRst1 (const Blend_Point &CurPoint)
Standard_EXPORT Blend_Status CheckDeflectionOnRst2 (const Blend_Point &CurPoint)
Standard_EXPORT Blend_Status TestArret (Blend_RstRstFunction &Func, const Standard_Boolean TestDeflection, const Blend_Status State)
Standard_EXPORT Standard_Boolean CheckInside (Blend_RstRstFunction &Func, TopAbs_State &SituOnC1, TopAbs_State &SituOnC2, Blend_DecrochStatus &Decroch)

Private Attributes

Standard_Boolean done
Handle_BRepBlend_Line line
math_Vector sol
Handle_Adaptor3d_HSurface surf1
Handle_Adaptor3d_TopolTool domain1
Handle_Adaptor3d_HSurface surf2
Handle_Adaptor3d_TopolTool domain2
Handle_Adaptor2d_HCurve2d rst1
Handle_Adaptor2d_HCurve2d rst2
Standard_Real tolesp
Standard_Real tolgui
Standard_Real pasmax
Standard_Real fleche
Standard_Real param
Blend_Point previousP
Standard_Boolean rebrou
Standard_Boolean iscomplete
Standard_Boolean comptra
Standard_Real sens
Blend_DecrochStatus decrochdeb
Blend_DecrochStatus decrochfin


Constructor & Destructor Documentation

Standard_EXPORT BRepBlend_RstRstLineBuilder::BRepBlend_RstRstLineBuilder const Handle(Adaptor3d_HSurface)&  Surf1,
const Handle(Adaptor2d_HCurve2d)&  Rst1,
const Handle(Adaptor3d_TopolTool)&  Domain1,
const Handle(Adaptor3d_HSurface)&  Surf2,
const Handle(Adaptor2d_HCurve2d)&  Rst2,
const Handle(Adaptor3d_TopolTool)&  Domain2
 


Member Function Documentation

Standard_EXPORT Blend_Status BRepBlend_RstRstLineBuilder::CheckDeflectionOnRst1 const Blend_Point CurPoint  )  [private]
 

Standard_EXPORT Blend_Status BRepBlend_RstRstLineBuilder::CheckDeflectionOnRst2 const Blend_Point CurPoint  )  [private]
 

Standard_EXPORT Standard_Boolean BRepBlend_RstRstLineBuilder::CheckInside Blend_RstRstFunction Func,
TopAbs_State &  SituOnC1,
TopAbs_State &  SituOnC2,
Blend_DecrochStatus Decroch
[private]
 

Standard_EXPORT Standard_Boolean BRepBlend_RstRstLineBuilder::Complete Blend_RstRstFunction Func,
Blend_SurfCurvFuncInv Finv1,
Blend_CurvPointFuncInv FinvP1,
Blend_SurfCurvFuncInv Finv2,
Blend_CurvPointFuncInv FinvP2,
const Standard_Real  Pmin
 

Standard_Boolean BRepBlend_RstRstLineBuilder::Decroch1End  )  const [inline]
 

Standard_Boolean BRepBlend_RstRstLineBuilder::Decroch1Start  )  const [inline]
 

Standard_Boolean BRepBlend_RstRstLineBuilder::Decroch2End  )  const [inline]
 

Standard_Boolean BRepBlend_RstRstLineBuilder::Decroch2Start  )  const [inline]
 

Standard_EXPORT void BRepBlend_RstRstLineBuilder::InternalPerform Blend_RstRstFunction Func,
Blend_SurfCurvFuncInv Finv1,
Blend_CurvPointFuncInv FinvP1,
Blend_SurfCurvFuncInv Finv2,
Blend_CurvPointFuncInv FinvP2,
const Standard_Real  Bound
[private]
 

Standard_Boolean BRepBlend_RstRstLineBuilder::IsDone  )  const [inline]
 

const Handle_BRepBlend_Line& BRepBlend_RstRstLineBuilder::Line  )  const
 

Standard_EXPORT void BRepBlend_RstRstLineBuilder::MakeExtremity BRepBlend_Extremity Extrem,
const Standard_Boolean  OnFirst,
const Handle(Adaptor2d_HCurve2d)&  Arc,
const Standard_Real  Param,
const Standard_Boolean  IsVtx,
const Handle(Adaptor3d_HVertex)&  Vtx
[private]
 

void BRepBlend_RstRstLineBuilder::operator delete void *  anAddress  )  [inline]
 

void* BRepBlend_RstRstLineBuilder::operator new size_t  size  )  [inline]
 

void* BRepBlend_RstRstLineBuilder::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_EXPORT void BRepBlend_RstRstLineBuilder::Perform Blend_RstRstFunction Func,
Blend_SurfCurvFuncInv Finv1,
Blend_CurvPointFuncInv FinvP1,
Blend_SurfCurvFuncInv Finv2,
Blend_CurvPointFuncInv FinvP2,
const Standard_Real  Pdep,
const Standard_Real  Pmax,
const Standard_Real  MaxStep,
const Standard_Real  TolGuide,
const math_Vector &  Soldep,
const Standard_Real  Tolesp,
const Standard_Real  Fleche,
const Standard_Boolean  Appro = Standard_False
 

Standard_EXPORT Standard_Boolean BRepBlend_RstRstLineBuilder::PerformFirstSection Blend_RstRstFunction Func,
Blend_SurfCurvFuncInv Finv1,
Blend_CurvPointFuncInv FinvP1,
Blend_SurfCurvFuncInv Finv2,
Blend_CurvPointFuncInv FinvP2,
const Standard_Real  Pdep,
const Standard_Real  Pmax,
const math_Vector &  Soldep,
const Standard_Real  Tolesp,
const Standard_Real  TolGuide,
const Standard_Boolean  RecRst1,
const Standard_Boolean  RecP1,
const Standard_Boolean  RecRst2,
const Standard_Boolean  RecP2,
Standard_Real &  Psol,
math_Vector &  ParSol
 

Standard_EXPORT Standard_Boolean BRepBlend_RstRstLineBuilder::Recadre1 Blend_CurvPointFuncInv FinvP,
math_Vector &  Solinv,
Standard_Boolean IsVtx,
Handle(Adaptor3d_HVertex)&  Vtx
[private]
 

Standard_EXPORT Standard_Boolean BRepBlend_RstRstLineBuilder::Recadre1 Blend_RstRstFunction Func,
Blend_SurfCurvFuncInv Finv,
math_Vector &  Solinv,
Standard_Boolean IsVtx,
Handle(Adaptor3d_HVertex)&  Vtx
[private]
 

Standard_EXPORT Standard_Boolean BRepBlend_RstRstLineBuilder::Recadre2 Blend_CurvPointFuncInv FinvP,
math_Vector &  Solinv,
Standard_Boolean IsVtx,
Handle(Adaptor3d_HVertex)&  Vtx
[private]
 

Standard_EXPORT Standard_Boolean BRepBlend_RstRstLineBuilder::Recadre2 Blend_RstRstFunction Func,
Blend_SurfCurvFuncInv Finv,
math_Vector &  Solinv,
Standard_Boolean IsVtx,
Handle(Adaptor3d_HVertex)&  Vtx
[private]
 

Standard_EXPORT Blend_Status BRepBlend_RstRstLineBuilder::TestArret Blend_RstRstFunction Func,
const Standard_Boolean  TestDeflection,
const Blend_Status  State
[private]
 

Standard_EXPORT void BRepBlend_RstRstLineBuilder::Transition const Standard_Boolean  OnFirst,
const Handle(Adaptor2d_HCurve2d)&  Arc,
const Standard_Real  Param,
IntSurf_Transition TLine,
IntSurf_Transition TArc
[private]
 


Field Documentation

Standard_Boolean BRepBlend_RstRstLineBuilder::comptra [private]
 

Blend_DecrochStatus BRepBlend_RstRstLineBuilder::decrochdeb [private]
 

Blend_DecrochStatus BRepBlend_RstRstLineBuilder::decrochfin [private]
 

Handle_Adaptor3d_TopolTool BRepBlend_RstRstLineBuilder::domain1 [private]
 

Handle_Adaptor3d_TopolTool BRepBlend_RstRstLineBuilder::domain2 [private]
 

Standard_Boolean BRepBlend_RstRstLineBuilder::done [private]
 

Standard_Real BRepBlend_RstRstLineBuilder::fleche [private]
 

Standard_Boolean BRepBlend_RstRstLineBuilder::iscomplete [private]
 

Handle_BRepBlend_Line BRepBlend_RstRstLineBuilder::line [private]
 

Standard_Real BRepBlend_RstRstLineBuilder::param [private]
 

Standard_Real BRepBlend_RstRstLineBuilder::pasmax [private]
 

Blend_Point BRepBlend_RstRstLineBuilder::previousP [private]
 

Standard_Boolean BRepBlend_RstRstLineBuilder::rebrou [private]
 

Handle_Adaptor2d_HCurve2d BRepBlend_RstRstLineBuilder::rst1 [private]
 

Handle_Adaptor2d_HCurve2d BRepBlend_RstRstLineBuilder::rst2 [private]
 

Standard_Real BRepBlend_RstRstLineBuilder::sens [private]
 

math_Vector BRepBlend_RstRstLineBuilder::sol [private]
 

Handle_Adaptor3d_HSurface BRepBlend_RstRstLineBuilder::surf1 [private]
 

Handle_Adaptor3d_HSurface BRepBlend_RstRstLineBuilder::surf2 [private]
 

Standard_Real BRepBlend_RstRstLineBuilder::tolesp [private]
 

Standard_Real BRepBlend_RstRstLineBuilder::tolgui [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Aug 25 13:41:00 2008 for OpenCASCADE by  doxygen 1.4.1