Open CASCADE Technology 7.8.0
|
Function to approximate by AppSurface for Edge/Edge and evolutif radius. More...
#include <BRepBlend_RstRstEvolRad.hxx>
Public Member Functions | |
BRepBlend_RstRstEvolRad (const Handle< Adaptor3d_Surface > &Surf1, const Handle< Adaptor2d_Curve2d > &Rst1, const Handle< Adaptor3d_Surface > &Surf2, const Handle< Adaptor2d_Curve2d > &Rst2, const Handle< Adaptor3d_Curve > &CGuide, const Handle< Law_Function > &Evol) | |
Standard_Integer | NbVariables () const override |
Returns 2. | |
Standard_Integer | NbEquations () const override |
Returns 2. | |
Standard_Boolean | Value (const math_Vector &X, math_Vector &F) override |
computes the values <F> of the Functions for the variable <X>. Returns True if the computation was done successfully, False otherwise. | |
Standard_Boolean | Derivatives (const math_Vector &X, math_Matrix &D) override |
returns the values <D> of the derivatives for the variable <X>. Returns True if the computation was done successfully, False otherwise. | |
Standard_Boolean | Values (const math_Vector &X, math_Vector &F, math_Matrix &D) override |
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. | |
void | Set (const Handle< Adaptor3d_Surface > &SurfRef1, const Handle< Adaptor2d_Curve2d > &RstRef1, const Handle< Adaptor3d_Surface > &SurfRef2, const Handle< Adaptor2d_Curve2d > &RstRef2) |
void | Set (const Standard_Real Param) override |
Sets the value of the parameter along the guide line. This determines the plane in which the solution has to be found. | |
void | Set (const Standard_Real First, const Standard_Real Last) override |
Sets the bounds of the parametric interval on the guide line. This determines the derivatives in these values if the function is not Cn. | |
void | GetTolerance (math_Vector &Tolerance, const Standard_Real Tol) const override |
Returns in the vector Tolerance the parametric tolerance for each variable; Tol is the tolerance used in 3d space. | |
void | GetBounds (math_Vector &InfBound, math_Vector &SupBound) const override |
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. | |
Standard_Boolean | IsSolution (const math_Vector &Sol, const Standard_Real Tol) override |
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 override |
Returns the minimal Distance between two extremities of calculated sections. | |
const gp_Pnt & | PointOnRst1 () const override |
Returns the point on the surface. | |
const gp_Pnt & | PointOnRst2 () const override |
Returns the point on the curve. | |
const gp_Pnt2d & | Pnt2dOnRst1 () const override |
Returns U,V coordinates of the point on the surface. | |
const gp_Pnt2d & | Pnt2dOnRst2 () const override |
Returns U,V coordinates of the point on the curve on surface. | |
Standard_Real | ParameterOnRst1 () const override |
Returns parameter of the point on the curve. | |
Standard_Real | ParameterOnRst2 () const override |
Returns parameter of the point on the curve. | |
Standard_Boolean | IsTangencyPoint () const override |
Returns True when it is not possible to compute the tangent vectors at PointOnS and/or PointOnRst. | |
const gp_Vec & | TangentOnRst1 () const override |
Returns the tangent vector at PointOnS, in 3d space. | |
const gp_Vec2d & | Tangent2dOnRst1 () const override |
Returns the tangent vector at PointOnS, in the parametric space of the first surface. | |
const gp_Vec & | TangentOnRst2 () const override |
Returns the tangent vector at PointOnC, in 3d space. | |
const gp_Vec2d & | Tangent2dOnRst2 () const override |
Returns the tangent vector at PointOnRst, in the parametric space of the second surface. | |
Blend_DecrochStatus | Decroch (const math_Vector &Sol, gp_Vec &NRst1, gp_Vec &TgRst1, gp_Vec &NRst2, gp_Vec &TgRst2) const override |
Enables implementation of a criterion of decrochage specific to the function. | |
void | Set (const Standard_Integer Choix) |
void | Set (const BlendFunc_SectionShape TypeSection) |
Sets the type of section generation for the approximations. | |
Standard_Boolean | CenterCircleRst1Rst2 (const gp_Pnt &PtRst1, const gp_Pnt &PtRst2, const gp_Vec &np, gp_Pnt &Center, gp_Vec &VdMed) const |
Gives the center of circle defined by PtRst1, PtRst2 and radius ray. | |
void | Section (const Standard_Real Param, const Standard_Real U, const Standard_Real V, Standard_Real &Pdeb, Standard_Real &Pfin, gp_Circ &C) |
Standard_Boolean | IsRational () const override |
Returns if the section is rationnal. | |
Standard_Real | GetSectionSize () const override |
Returns the length of the maximum section. | |
void | GetMinimalWeight (TColStd_Array1OfReal &Weigths) const override |
Compute the minimal value of weight for each poles of all sections. | |
Standard_Integer | NbIntervals (const GeomAbs_Shape S) const override |
Returns the number of intervals for continuity | |
void | Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const override |
Stores in <T> the parameters bounding the intervals of continuity | |
void | GetShape (Standard_Integer &NbPoles, Standard_Integer &NbKnots, Standard_Integer &Degree, Standard_Integer &NbPoles2d) override |
void | GetTolerance (const Standard_Real BoundTol, const Standard_Real SurfTol, const Standard_Real AngleTol, math_Vector &Tol3d, math_Vector &Tol1D) const override |
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. | |
void | Knots (TColStd_Array1OfReal &TKnots) override |
void | Mults (TColStd_Array1OfInteger &TMults) override |
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) override |
Used for the first and last section. | |
void | Section (const Blend_Point &P, TColgp_Array1OfPnt &Poles, TColgp_Array1OfPnt2d &Poles2d, TColStd_Array1OfReal &Weigths) override |
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) override |
Used for the first and last section The method returns Standard_True if the derivatives are computed, otherwise it returns Standard_False. | |
void | Resolution (const Standard_Integer IC2d, const Standard_Real Tol, Standard_Real &TolU, Standard_Real &TolV) const override |
Public Member Functions inherited from Blend_RstRstFunction | |
const gp_Pnt & | Pnt1 () const |
Returns the point on the first support. | |
const gp_Pnt & | Pnt2 () const |
Returns the point on the seconde support. | |
Public Member Functions inherited from Blend_AppFunction | |
Standard_Real | Parameter (const Blend_Point &P) const |
Returns the parameter of the point P. Used to impose the parameters in the approximation. | |
Public Member Functions inherited from math_FunctionSet | |
virtual Standard_Integer | GetStateNumber () |
Returns the state of the function corresponding to the latestcall of any methods associated with the function. This function is called by each of the algorithms described later which define the function Integer Algorithm::StateNumber(). The algorithm has the responsibility to call this function when it has found a solution (i.e. a root or a minimum) and has to maintain the association between the solution found and this StateNumber. Byu default, this method returns 0 (which means for the algorithm: no state has been saved). It is the responsibility of the programmer to decide if he needs to save the current state of the function and to return an Integer that allows retrieval of the state. | |
virtual | ~math_FunctionSet () |
Function to approximate by AppSurface for Edge/Edge and evolutif radius.
BRepBlend_RstRstEvolRad::BRepBlend_RstRstEvolRad | ( | const Handle< Adaptor3d_Surface > & | Surf1, |
const Handle< Adaptor2d_Curve2d > & | Rst1, | ||
const Handle< Adaptor3d_Surface > & | Surf2, | ||
const Handle< Adaptor2d_Curve2d > & | Rst2, | ||
const Handle< Adaptor3d_Curve > & | CGuide, | ||
const Handle< Law_Function > & | Evol | ||
) |
Standard_Boolean BRepBlend_RstRstEvolRad::CenterCircleRst1Rst2 | ( | const gp_Pnt & | PtRst1, |
const gp_Pnt & | PtRst2, | ||
const gp_Vec & | np, | ||
gp_Pnt & | Center, | ||
gp_Vec & | VdMed | ||
) | const |
Gives the center of circle defined by PtRst1, PtRst2 and radius ray.
|
overridevirtual |
Enables implementation of a criterion of decrochage specific to the function.
Implements Blend_RstRstFunction.
|
overridevirtual |
returns the values <D> of the derivatives for the variable <X>. Returns True if the computation was done successfully, False otherwise.
Implements Blend_RstRstFunction.
|
overridevirtual |
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.
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns the minimal Distance between two extremities of calculated sections.
Reimplemented from Blend_RstRstFunction.
|
overridevirtual |
Compute the minimal value of weight for each poles of all sections.
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns the length of the maximum section.
Implements Blend_RstRstFunction.
|
overridevirtual |
Implements Blend_RstRstFunction.
|
overridevirtual |
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.
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns in the vector Tolerance the parametric tolerance for each variable; Tol is the tolerance used in 3d space.
Implements Blend_RstRstFunction.
|
overridevirtual |
Stores in <T> the parameters bounding the intervals of continuity . The array must provide enough room to accommodate for the parameters. i.e. T.Length() > NbIntervals()
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns if the section is rationnal.
Implements Blend_RstRstFunction.
|
overridevirtual |
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.
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns True when it is not possible to compute the tangent vectors at PointOnS and/or PointOnRst.
Implements Blend_RstRstFunction.
|
overridevirtual |
Implements Blend_RstRstFunction.
|
overridevirtual |
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns 2.
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns the number of intervals for continuity . May be one if Continuity(me) >=
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns 2.
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns parameter of the point on the curve.
Implements Blend_RstRstFunction.
|
overridevirtual |
Returns parameter of the point on the curve.
Implements Blend_RstRstFunction.
Returns U,V coordinates of the point on the surface.
Implements Blend_RstRstFunction.
Returns U,V coordinates of the point on the curve on surface.
Implements Blend_RstRstFunction.
Returns the point on the surface.
Implements Blend_RstRstFunction.
Returns the point on the curve.
Implements Blend_RstRstFunction.
|
overridevirtual |
Implements Blend_AppFunction.
|
overridevirtual |
Implements Blend_RstRstFunction.
|
overridevirtual |
Used for the first and last section.
Implements Blend_RstRstFunction.
|
overridevirtual |
Used for the first and last section The method returns Standard_True if the derivatives are computed, otherwise it returns Standard_False.
Implements Blend_RstRstFunction.
void BRepBlend_RstRstEvolRad::Section | ( | const Standard_Real | Param, |
const Standard_Real | U, | ||
const Standard_Real | V, | ||
Standard_Real & | Pdeb, | ||
Standard_Real & | Pfin, | ||
gp_Circ & | C | ||
) |
void BRepBlend_RstRstEvolRad::Set | ( | const BlendFunc_SectionShape | TypeSection | ) |
Sets the type of section generation for the approximations.
void BRepBlend_RstRstEvolRad::Set | ( | const Handle< Adaptor3d_Surface > & | SurfRef1, |
const Handle< Adaptor2d_Curve2d > & | RstRef1, | ||
const Handle< Adaptor3d_Surface > & | SurfRef2, | ||
const Handle< Adaptor2d_Curve2d > & | RstRef2 | ||
) |
void BRepBlend_RstRstEvolRad::Set | ( | const Standard_Integer | Choix | ) |
|
overridevirtual |
Sets the bounds of the parametric interval on the guide line. This determines the derivatives in these values if the function is not Cn.
Implements Blend_RstRstFunction.
|
overridevirtual |
Sets the value of the parameter along the guide line. This determines the plane in which the solution has to be found.
Implements Blend_RstRstFunction.
Returns the tangent vector at PointOnS, in the parametric space of the first surface.
Implements Blend_RstRstFunction.
Returns the tangent vector at PointOnRst, in the parametric space of the second surface.
Implements Blend_RstRstFunction.
Returns the tangent vector at PointOnS, in 3d space.
Implements Blend_RstRstFunction.
Returns the tangent vector at PointOnC, in 3d space.
Implements Blend_RstRstFunction.
|
overridevirtual |
computes the values <F> of the Functions for the variable <X>. Returns True if the computation was done successfully, False otherwise.
Implements Blend_RstRstFunction.
|
overridevirtual |
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.
Implements Blend_RstRstFunction.