Open CASCADE Technology
6.5.4
|
Define an Constant Section Law
#include <GeomFill_UniformSection.hxx>
Public Member Functions | |
GeomFill_UniformSection (const Handle< Geom_Curve > &C, const Standard_Real FirstParameter=0.0, const Standard_Real LastParameter=1.0) | |
Make an constant Law with C. [First, Last] define law definition domain | |
virtual Standard_Boolean | D0 (const Standard_Real Param, TColgp_Array1OfPnt &Poles, TColStd_Array1OfReal &Weigths) |
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) |
compute the first derivative in v direction of the section for v = param Warning : It used only for C1 or C2 aproximation | |
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) |
compute the second derivative in v direction of the section for v = param Warning : It used only for C2 aproximation | |
virtual Handle_Geom_BSplineSurface | BSplineSurface () const |
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 |
get the format of an section | |
virtual void | Knots (TColStd_Array1OfReal &TKnots) const |
get the Knots of the section | |
virtual void | Mults (TColStd_Array1OfInteger &TMults) const |
get the Multplicities of the section | |
virtual Standard_Boolean | IsRational () const |
Returns if the sections are rationnal or not | |
virtual Standard_Boolean | IsUPeriodic () const |
Returns if the sections are periodic or not | |
virtual Standard_Boolean | IsVPeriodic () const |
Returns if the law isperiodic or not | |
virtual Standard_Integer | NbIntervals (const GeomAbs_Shape S) const |
Returns the number of intervals for continuity <S>. May be one if Continuity(me) >= <S> | |
virtual 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 void | SetInterval (const Standard_Real First, const Standard_Real Last) |
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 |
Gets the bounds of the parametric interval on the function | |
virtual void | GetDomain (Standard_Real &First, Standard_Real &Last) const |
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 |
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 |
Get the barycentre of Surface. An very poor estimation is sufficent. This information is usefull to perform well conditioned rational approximation. Warning: Used only if <me> IsRational | |
virtual Standard_Real | MaximalSection () const |
Returns the length of the greater section. This information is usefull to G1's control. Warning: With an little value, approximation can be slower. | |
virtual void | GetMinimalWeight (TColStd_Array1OfReal &Weigths) const |
Compute the minimal value of weight for each poles in all sections. This information is usefull to control error in rational approximation. Warning: Used only if <me> IsRational | |
virtual Standard_Boolean | IsConstant (Standard_Real &Error) const |
return True | |
virtual Handle_Geom_Curve | ConstantSection () const |
Return the constant Section if <me> IsConstant. |
GeomFill_UniformSection::GeomFill_UniformSection | ( | const Handle< Geom_Curve > & | C, |
const Standard_Real | FirstParameter = 0.0 , |
||
const Standard_Real | LastParameter = 1.0 |
||
) |
virtual gp_Pnt GeomFill_UniformSection::BarycentreOfSurf | ( | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Handle_Geom_BSplineSurface GeomFill_UniformSection::BSplineSurface | ( | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Handle_Geom_Curve GeomFill_UniformSection::ConstantSection | ( | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_UniformSection::D0 | ( | const Standard_Real | Param, |
TColgp_Array1OfPnt & | Poles, | ||
TColStd_Array1OfReal & | Weigths | ||
) | [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_UniformSection::D1 | ( | const Standard_Real | Param, |
TColgp_Array1OfPnt & | Poles, | ||
TColgp_Array1OfVec & | DPoles, | ||
TColStd_Array1OfReal & | Weigths, | ||
TColStd_Array1OfReal & | DWeigths | ||
) | [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_UniformSection::D2 | ( | const Standard_Real | Param, |
TColgp_Array1OfPnt & | Poles, | ||
TColgp_Array1OfVec & | DPoles, | ||
TColgp_Array1OfVec & | D2Poles, | ||
TColStd_Array1OfReal & | Weigths, | ||
TColStd_Array1OfReal & | DWeigths, | ||
TColStd_Array1OfReal & | D2Weigths | ||
) | [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::GetDomain | ( | Standard_Real & | First, |
Standard_Real & | Last | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::GetInterval | ( | Standard_Real & | First, |
Standard_Real & | Last | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::GetMinimalWeight | ( | TColStd_Array1OfReal & | Weigths | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::GetTolerance | ( | const Standard_Real | BoundTol, |
const Standard_Real | SurfTol, | ||
const Standard_Real | AngleTol, | ||
TColStd_Array1OfReal & | Tol3d | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::Intervals | ( | TColStd_Array1OfReal & | T, |
const GeomAbs_Shape | S | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_UniformSection::IsConstant | ( | Standard_Real & | Error | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_UniformSection::IsRational | ( | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_UniformSection::IsUPeriodic | ( | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_UniformSection::IsVPeriodic | ( | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::Knots | ( | TColStd_Array1OfReal & | TKnots | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Real GeomFill_UniformSection::MaximalSection | ( | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::Mults | ( | TColStd_Array1OfInteger & | TMults | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Integer GeomFill_UniformSection::NbIntervals | ( | const GeomAbs_Shape | S | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::SectionShape | ( | Standard_Integer & | NbPoles, |
Standard_Integer & | NbKnots, | ||
Standard_Integer & | Degree | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_UniformSection::SetInterval | ( | const Standard_Real | First, |
const Standard_Real | Last | ||
) | [virtual] |
Implements GeomFill_SectionLaw.