Open CASCADE Technology
6.5.4
|
Define a Section Law by N Sections
#include <GeomFill_NSections.hxx>
Public Member Functions | |
GeomFill_NSections (const TColGeom_SequenceOfCurve &NC) | |
Make a SectionLaw with N Curves. | |
GeomFill_NSections (const TColGeom_SequenceOfCurve &NC, const TColStd_SequenceOfReal &NP) | |
Make a SectionLaw with N Curves and N associated parameters. | |
GeomFill_NSections (const TColGeom_SequenceOfCurve &NC, const TColStd_SequenceOfReal &NP, const Standard_Real UF, const Standard_Real UL) | |
Make a SectionLaw with N Curves and N associated parameters. UF and UL are the parametric bounds of the NSections | |
GeomFill_NSections (const TColGeom_SequenceOfCurve &NC, const TColStd_SequenceOfReal &NP, const Standard_Real UF, const Standard_Real UL, const Standard_Real VF, const Standard_Real VL) | |
Make a SectionLaw with N Curves and N associated parameters. UF and UL are the parametric bounds of the NSections VF and VL are the parametric bounds of the path | |
GeomFill_NSections (const TColGeom_SequenceOfCurve &NC, const GeomFill_SequenceOfTrsf &Trsfs, const TColStd_SequenceOfReal &NP, const Standard_Real UF, const Standard_Real UL, const Standard_Real VF, const Standard_Real VL, const Handle< Geom_BSplineSurface > &Surf) | |
Make a SectionLaw with N Curves and N associated parameters. UF and UL are the parametric bounds of the NSections VF and VL are the parametric bounds of the path UF and UL are the parametric bounds of the NSections Surf is a reference surface used by BRepFill_NSections | |
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 | |
void | SetSurface (const Handle< Geom_BSplineSurface > &RefSurf) |
Sets the reference surface | |
void | ComputeSurface () |
Computes the surface | |
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 If the Law isConstant | |
virtual Handle_Geom_Curve | ConstantSection () const |
Return the constant Section if <me> IsConstant. | |
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 |
GeomFill_NSections::GeomFill_NSections | ( | const TColGeom_SequenceOfCurve & | NC, |
const TColStd_SequenceOfReal & | NP | ||
) |
GeomFill_NSections::GeomFill_NSections | ( | const TColGeom_SequenceOfCurve & | NC, |
const TColStd_SequenceOfReal & | NP, | ||
const Standard_Real | UF, | ||
const Standard_Real | UL | ||
) |
GeomFill_NSections::GeomFill_NSections | ( | const TColGeom_SequenceOfCurve & | NC, |
const TColStd_SequenceOfReal & | NP, | ||
const Standard_Real | UF, | ||
const Standard_Real | UL, | ||
const Standard_Real | VF, | ||
const Standard_Real | VL | ||
) |
GeomFill_NSections::GeomFill_NSections | ( | const TColGeom_SequenceOfCurve & | NC, |
const GeomFill_SequenceOfTrsf & | Trsfs, | ||
const TColStd_SequenceOfReal & | NP, | ||
const Standard_Real | UF, | ||
const Standard_Real | UL, | ||
const Standard_Real | VF, | ||
const Standard_Real | VL, | ||
const Handle< Geom_BSplineSurface > & | Surf | ||
) |
virtual gp_Pnt GeomFill_NSections::BarycentreOfSurf | ( | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Handle_Geom_BSplineSurface GeomFill_NSections::BSplineSurface | ( | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Handle_Geom_Curve GeomFill_NSections::CirclSection | ( | const Standard_Real | Param | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Handle_Geom_Curve GeomFill_NSections::ConstantSection | ( | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_NSections::D0 | ( | const Standard_Real | Param, |
TColgp_Array1OfPnt & | Poles, | ||
TColStd_Array1OfReal & | Weigths | ||
) | [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_NSections::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_NSections::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_NSections::GetDomain | ( | Standard_Real & | First, |
Standard_Real & | Last | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_NSections::GetInterval | ( | Standard_Real & | First, |
Standard_Real & | Last | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_NSections::GetMinimalWeight | ( | TColStd_Array1OfReal & | Weigths | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual void GeomFill_NSections::GetTolerance | ( | const Standard_Real | BoundTol, |
const Standard_Real | SurfTol, | ||
const Standard_Real | AngleTol, | ||
TColStd_Array1OfReal & | Tol3d | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_NSections::Intervals | ( | TColStd_Array1OfReal & | T, |
const GeomAbs_Shape | S | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_NSections::IsConicalLaw | ( | Standard_Real & | Error | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_NSections::IsConstant | ( | Standard_Real & | Error | ) | const [virtual] |
Reimplemented from GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_NSections::IsRational | ( | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_NSections::IsUPeriodic | ( | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Boolean GeomFill_NSections::IsVPeriodic | ( | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_NSections::Knots | ( | TColStd_Array1OfReal & | TKnots | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Real GeomFill_NSections::MaximalSection | ( | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_NSections::Mults | ( | TColStd_Array1OfInteger & | TMults | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual Standard_Integer GeomFill_NSections::NbIntervals | ( | const GeomAbs_Shape | S | ) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_NSections::SectionShape | ( | Standard_Integer & | NbPoles, |
Standard_Integer & | NbKnots, | ||
Standard_Integer & | Degree | ||
) | const [virtual] |
Implements GeomFill_SectionLaw.
virtual void GeomFill_NSections::SetInterval | ( | const Standard_Real | First, |
const Standard_Real | Last | ||
) | [virtual] |
Implements GeomFill_SectionLaw.
void GeomFill_NSections::SetSurface | ( | const Handle< Geom_BSplineSurface > & | RefSurf | ) |