Open CASCADE Technology 7.8.0
|
Define an Constant Section Law. More...
#include <GeomFill_EvolvedSection.hxx>
Public Member Functions | |
GeomFill_EvolvedSection (const Handle< Geom_Curve > &C, const Handle< Law_Function > &L) | |
Make an SectionLaw with a Curve and a real Law. | |
virtual Standard_Boolean | D0 (const Standard_Real Param, TColgp_Array1OfPnt &Poles, TColStd_Array1OfReal &Weigths) override |
compute the section for v = param | |
virtual Standard_Boolean | D1 (const Standard_Real Param, TColgp_Array1OfPnt &Poles, TColgp_Array1OfVec &DPoles, TColStd_Array1OfReal &Weigths, TColStd_Array1OfReal &DWeigths) override |
compute the first derivative in v direction of the section for v = param Warning : It used only for C1 or C2 approximation | |
virtual Standard_Boolean | D2 (const Standard_Real Param, TColgp_Array1OfPnt &Poles, TColgp_Array1OfVec &DPoles, TColgp_Array1OfVec &D2Poles, TColStd_Array1OfReal &Weigths, TColStd_Array1OfReal &DWeigths, TColStd_Array1OfReal &D2Weigths) override |
compute the second derivative in v direction of the section for v = param Warning : It used only for C2 approximation | |
virtual Handle< Geom_BSplineSurface > | BSplineSurface () const override |
give if possible an bspline Surface, like iso-v are the section. If it is not possible this methode have to get an Null Surface. Is it the default implementation. | |
virtual void | SectionShape (Standard_Integer &NbPoles, Standard_Integer &NbKnots, Standard_Integer &Degree) const override |
get the format of an section | |
virtual void | Knots (TColStd_Array1OfReal &TKnots) const override |
get the Knots of the section | |
virtual void | Mults (TColStd_Array1OfInteger &TMults) const override |
get the Multplicities of the section | |
virtual Standard_Boolean | IsRational () const override |
Returns if the sections are rationnal or not. | |
virtual Standard_Boolean | IsUPeriodic () const override |
Returns if the sections are periodic or not. | |
virtual Standard_Boolean | IsVPeriodic () const override |
Returns if the law isperiodic or not. | |
virtual Standard_Integer | NbIntervals (const GeomAbs_Shape S) const override |
Returns the number of intervals for continuity | |
virtual void | Intervals (TColStd_Array1OfReal &T, const GeomAbs_Shape S) const override |
Stores in <T> the parameters bounding the intervals of continuity | |
virtual void | SetInterval (const Standard_Real First, const Standard_Real Last) override |
Sets the bounds of the parametric interval on the function This determines the derivatives in these values if the function is not Cn. | |
virtual void | GetInterval (Standard_Real &First, Standard_Real &Last) const override |
Gets the bounds of the parametric interval on the function. | |
virtual void | GetDomain (Standard_Real &First, Standard_Real &Last) const override |
Gets the bounds of the function parametric domain. Warning: This domain it is not modified by the SetValue method. | |
virtual void | GetTolerance (const Standard_Real BoundTol, const Standard_Real SurfTol, const Standard_Real AngleTol, TColStd_Array1OfReal &Tol3d) const override |
Returns the tolerances associated at each poles to reach in approximation, to satisfy: BoundTol error at the Boundary AngleTol tangent error at the Boundary (in radian) SurfTol error inside the surface. | |
virtual gp_Pnt | BarycentreOfSurf () const override |
Get the barycentre of Surface. An very poor estimation is sufficient. This information is useful to perform well conditioned rational approximation. Warning: Used only if <me> IsRational. | |
virtual Standard_Real | MaximalSection () const override |
Returns the length of the greater section. This information is useful to G1's control. Warning: With an little value, approximation can be slower. | |
virtual void | GetMinimalWeight (TColStd_Array1OfReal &Weigths) const override |
Compute the minimal value of weight for each poles in all sections. This information is useful to control error in rational approximation. Warning: Used only if <me> IsRational. | |
virtual Standard_Boolean | IsConstant (Standard_Real &Error) const override |
return True If the Law isConstant | |
virtual Handle< Geom_Curve > | ConstantSection () const override |
Return the constant Section if <me> IsConstant. | |
Public Member Functions inherited from GeomFill_SectionLaw | |
virtual void | SetTolerance (const Standard_Real Tol3d, const Standard_Real Tol2d) |
Is useful, if (me) have to run numerical algorithm to perform D0, D1 or D2 The default implementation make nothing. | |
virtual Standard_Boolean | IsConicalLaw (Standard_Real &Error) const |
Returns True if all section are circle, with same plane,same center and linear radius evolution Return False by Default. | |
virtual Handle< Geom_Curve > | CirclSection (const Standard_Real Param) const |
Return the circle section at parameter , if <me> a IsConicalLaw. | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. | |
virtual | ~Standard_Transient () |
Destructor must be virtual. | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. | |
Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
Standard_Transient * | This () const |
Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
Standard_Integer | GetRefCount () const noexcept |
Get the reference counter of this object. | |
void | IncrementRefCounter () noexcept |
Increments the reference counter of this object. | |
Standard_Integer | DecrementRefCounter () noexcept |
Decrements the reference counter of this object; returns the decremented value. | |
virtual void | Delete () const |
Memory deallocator for transient classes. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Standard_Transient | |
static constexpr const char * | get_type_name () |
Returns a type descriptor about this object. | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. | |
Define an Constant Section Law.
GeomFill_EvolvedSection::GeomFill_EvolvedSection | ( | const Handle< Geom_Curve > & | C, |
const Handle< Law_Function > & | L | ||
) |
Make an SectionLaw with a Curve and a real Law.
Get the barycentre of Surface. An very poor estimation is sufficient. This information is useful to perform well conditioned rational approximation. Warning: Used only if <me> IsRational.
Reimplemented from GeomFill_SectionLaw.
|
overridevirtual |
give if possible an bspline Surface, like iso-v are the section. If it is not possible this methode have to get an Null Surface. Is it the default implementation.
Reimplemented from GeomFill_SectionLaw.
|
overridevirtual |
Return the constant Section if <me> IsConstant.
Reimplemented from GeomFill_SectionLaw.
|
overridevirtual |
compute the section for v = param
Implements GeomFill_SectionLaw.
|
overridevirtual |
compute the first derivative in v direction of the section for v = param Warning : It used only for C1 or C2 approximation
Reimplemented from GeomFill_SectionLaw.
|
overridevirtual |
compute the second derivative in v direction of the section for v = param Warning : It used only for C2 approximation
Reimplemented from GeomFill_SectionLaw.
|
overridevirtual |
Gets the bounds of the function parametric domain. Warning: This domain it is not modified by the SetValue method.
Implements GeomFill_SectionLaw.
|
overridevirtual |
Gets the bounds of the parametric interval on the function.
Implements GeomFill_SectionLaw.
|
overridevirtual |
Compute the minimal value of weight for each poles in all sections. This information is useful to control error in rational approximation. Warning: Used only if <me> IsRational.
Reimplemented from GeomFill_SectionLaw.
|
overridevirtual |
Returns the tolerances associated at each poles to reach in approximation, to satisfy: BoundTol error at the Boundary AngleTol tangent error at the Boundary (in radian) SurfTol error inside the surface.
Implements GeomFill_SectionLaw.
|
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 GeomFill_SectionLaw.
|
overridevirtual |
return True If the Law isConstant
Reimplemented from GeomFill_SectionLaw.
|
overridevirtual |
Returns if the sections are rationnal or not.
Implements GeomFill_SectionLaw.
|
overridevirtual |
Returns if the sections are periodic or not.
Implements GeomFill_SectionLaw.
|
overridevirtual |
Returns if the law isperiodic or not.
Implements GeomFill_SectionLaw.
|
overridevirtual |
get the Knots of the section
Implements GeomFill_SectionLaw.
|
overridevirtual |
Returns the length of the greater section. This information is useful to G1's control. Warning: With an little value, approximation can be slower.
Implements GeomFill_SectionLaw.
|
overridevirtual |
get the Multplicities of the section
Implements GeomFill_SectionLaw.
|
overridevirtual |
Returns the number of intervals for continuity . May be one if Continuity(me) >=
Implements GeomFill_SectionLaw.
|
overridevirtual |
get the format of an section
Implements GeomFill_SectionLaw.
|
overridevirtual |
Sets the bounds of the parametric interval on the function This determines the derivatives in these values if the function is not Cn.
Implements GeomFill_SectionLaw.