Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions
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. More...

#include <BRepBlend_RstRstLineBuilder.hxx>

Public Member Functions

 BRepBlend_RstRstLineBuilder (const occ::handle< Adaptor3d_Surface > &Surf1, const occ::handle< Adaptor2d_Curve2d > &Rst1, const occ::handle< Adaptor3d_TopolTool > &Domain1, const occ::handle< Adaptor3d_Surface > &Surf2, const occ::handle< Adaptor2d_Curve2d > &Rst2, const occ::handle< Adaptor3d_TopolTool > &Domain2)
 
void Perform (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv1, Blend_CurvPointFuncInv &FinvP1, Blend_SurfCurvFuncInv &Finv2, Blend_CurvPointFuncInv &FinvP2, const double Pdep, const double Pmax, const double MaxStep, const double Tol3d, const double TolGuide, const math_Vector &Soldep, const double Fleche, const bool Appro=false)
 
bool PerformFirstSection (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv1, Blend_CurvPointFuncInv &FinvP1, Blend_SurfCurvFuncInv &Finv2, Blend_CurvPointFuncInv &FinvP2, const double Pdep, const double Pmax, const math_Vector &Soldep, const double Tol3d, const double TolGuide, const bool RecRst1, const bool RecP1, const bool RecRst2, const bool RecP2, double &Psol, math_Vector &ParSol)
 
bool Complete (Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &Finv1, Blend_CurvPointFuncInv &FinvP1, Blend_SurfCurvFuncInv &Finv2, Blend_CurvPointFuncInv &FinvP2, const double Pmin)
 
bool IsDone () const
 
const occ::handle< BRepBlend_Line > & Line () const
 
bool Decroch1Start () const
 
bool Decroch1End () const
 
bool Decroch2Start () const
 
bool Decroch2End () const
 

Detailed Description

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.

Construction of a BRepBlend_Line between two pcurves from an approached starting solution. The output entries of this builder are of the same nature as of a traditional walking, but the requirements to the Line are not the same. If the determination of validity range is always guaranteed, the criteria of correct repartition of sections before smoothing are not respected. The resulting Line is f(t) oriented.

Constructor & Destructor Documentation

◆ BRepBlend_RstRstLineBuilder()

BRepBlend_RstRstLineBuilder::BRepBlend_RstRstLineBuilder ( const occ::handle< Adaptor3d_Surface > & Surf1,
const occ::handle< Adaptor2d_Curve2d > & Rst1,
const occ::handle< Adaptor3d_TopolTool > & Domain1,
const occ::handle< Adaptor3d_Surface > & Surf2,
const occ::handle< Adaptor2d_Curve2d > & Rst2,
const occ::handle< Adaptor3d_TopolTool > & Domain2 )

Member Function Documentation

◆ Complete()

bool BRepBlend_RstRstLineBuilder::Complete ( Blend_RstRstFunction & Func,
Blend_SurfCurvFuncInv & Finv1,
Blend_CurvPointFuncInv & FinvP1,
Blend_SurfCurvFuncInv & Finv2,
Blend_CurvPointFuncInv & FinvP2,
const double Pmin )

◆ Decroch1End()

bool BRepBlend_RstRstLineBuilder::Decroch1End ( ) const

◆ Decroch1Start()

bool BRepBlend_RstRstLineBuilder::Decroch1Start ( ) const

◆ Decroch2End()

bool BRepBlend_RstRstLineBuilder::Decroch2End ( ) const

◆ Decroch2Start()

bool BRepBlend_RstRstLineBuilder::Decroch2Start ( ) const

◆ IsDone()

bool BRepBlend_RstRstLineBuilder::IsDone ( ) const

◆ Line()

const occ::handle< BRepBlend_Line > & BRepBlend_RstRstLineBuilder::Line ( ) const

◆ Perform()

void BRepBlend_RstRstLineBuilder::Perform ( Blend_RstRstFunction & Func,
Blend_SurfCurvFuncInv & Finv1,
Blend_CurvPointFuncInv & FinvP1,
Blend_SurfCurvFuncInv & Finv2,
Blend_CurvPointFuncInv & FinvP2,
const double Pdep,
const double Pmax,
const double MaxStep,
const double Tol3d,
const double TolGuide,
const math_Vector & Soldep,
const double Fleche,
const bool Appro = false )

◆ PerformFirstSection()

bool BRepBlend_RstRstLineBuilder::PerformFirstSection ( Blend_RstRstFunction & Func,
Blend_SurfCurvFuncInv & Finv1,
Blend_CurvPointFuncInv & FinvP1,
Blend_SurfCurvFuncInv & Finv2,
Blend_CurvPointFuncInv & FinvP2,
const double Pdep,
const double Pmax,
const math_Vector & Soldep,
const double Tol3d,
const double TolGuide,
const bool RecRst1,
const bool RecP1,
const bool RecRst2,
const bool RecP2,
double & Psol,
math_Vector & ParSol )

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