OCC Main Page | ModelingAlgorithms | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

ModelingAlgorithms
TKGeomAlgo
GeomFill


GeomFill_NSections Class Reference

Define a Section Law by N Sections
.

#include <GeomFill_NSections.hxx>

Inheritance diagram for GeomFill_NSections:

Inheritance graph
[legend]

Public Member Functions

Standard_EXPORT GeomFill_NSections (const GeomFill_SequenceOfCurve &NC)
 Make a SectionLaw with N Curves.
.
Standard_EXPORT GeomFill_NSections (const GeomFill_SequenceOfCurve &NC, const TColStd_SequenceOfReal &NP)
 Make a SectionLaw with N Curves and N associated parameters.
.
Standard_EXPORT GeomFill_NSections (const GeomFill_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
.
Standard_EXPORT GeomFill_NSections (const GeomFill_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
.
Standard_EXPORT GeomFill_NSections (const GeomFill_SequenceOfCurve &NC, 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_EXPORT Standard_Boolean D0 (const Standard_Real Param, TColgp_Array1OfPnt &Poles, TColStd_Array1OfReal &Weigths)
 compute the section for v = param

virtual Standard_EXPORT 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_EXPORT 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

Standard_EXPORT void SetSurface (const Handle(Geom_BSplineSurface)&RefSurf)
 Sets the reference surface

.
Standard_EXPORT void ComputeSurface ()
 Computes the surface

.
virtual Standard_EXPORT 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 Standard_EXPORT void SectionShape (Standard_Integer &NbPoles, Standard_Integer &NbKnots, Standard_Integer &Degree) const
 get the format of an section

virtual Standard_EXPORT void Knots (TColStd_Array1OfReal &TKnots) const
 get the Knots of the section

virtual Standard_EXPORT void Mults (TColStd_Array1OfInteger &TMults) const
 get the Multplicities of the section

virtual Standard_EXPORT Standard_Boolean IsRational () const
 Returns if the sections are rationnal or not
.
virtual Standard_EXPORT Standard_Boolean IsUPeriodic () const
 Returns if the sections are periodic or not
.
virtual Standard_EXPORT Standard_Boolean IsVPeriodic () const
 Returns if the law isperiodic or not
.
virtual Standard_EXPORT Standard_Integer NbIntervals (const GeomAbs_Shape S) const
 Returns the number of intervals for continuity
<s>.
May be one if Continuity(me) >= <s>
.
virtual Standard_EXPORT 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 Standard_EXPORT 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 Standard_EXPORT void GetInterval (Standard_Real &First, Standard_Real &Last) const
 Gets the bounds of the parametric interval on
the function
.
virtual Standard_EXPORT 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 Standard_EXPORT 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 Standard_EXPORT 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_EXPORT 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 Standard_EXPORT 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_EXPORT Standard_Boolean IsConstant (Standard_Real &Error) const
 return True If the Law isConstant

virtual Standard_EXPORT Handle_Geom_Curve ConstantSection () const
 Return the constant Section if <me> IsConstant.

.
virtual Standard_EXPORT 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 Standard_EXPORT Handle_Geom_Curve CirclSection (const Standard_Real Param) const
 Return the circle section at parameter <param>, if
<me> a IsConicalLaw
.
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Private Attributes

Standard_Real UFirst
Standard_Real ULast
Standard_Real VFirst
Standard_Real VLast
GeomFill_SequenceOfCurve mySections
TColStd_SequenceOfReal myParams
Handle_Geom_BSplineSurface mySurface
Handle_Geom_BSplineSurface myRefSurf

Constructor & Destructor Documentation

Standard_EXPORT GeomFill_NSections::GeomFill_NSections const GeomFill_SequenceOfCurve NC  ) 
 

Standard_EXPORT GeomFill_NSections::GeomFill_NSections const GeomFill_SequenceOfCurve NC,
const TColStd_SequenceOfReal &  NP
 

Standard_EXPORT GeomFill_NSections::GeomFill_NSections const GeomFill_SequenceOfCurve NC,
const TColStd_SequenceOfReal &  NP,
const Standard_Real  UF,
const Standard_Real  UL
 

Standard_EXPORT GeomFill_NSections::GeomFill_NSections const GeomFill_SequenceOfCurve NC,
const TColStd_SequenceOfReal &  NP,
const Standard_Real  UF,
const Standard_Real  UL,
const Standard_Real  VF,
const Standard_Real  VL
 

Standard_EXPORT GeomFill_NSections::GeomFill_NSections const GeomFill_SequenceOfCurve NC,
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
 


Member Function Documentation

virtual Standard_EXPORT gp_Pnt GeomFill_NSections::BarycentreOfSurf  )  const [virtual]
 

Reimplemented from GeomFill_SectionLaw.

virtual Standard_EXPORT Handle_Geom_BSplineSurface GeomFill_NSections::BSplineSurface  )  const [virtual]
 

Reimplemented from GeomFill_SectionLaw.

virtual Standard_EXPORT Handle_Geom_Curve GeomFill_NSections::CirclSection const Standard_Real  Param  )  const [virtual]
 

Reimplemented from GeomFill_SectionLaw.

Standard_EXPORT void GeomFill_NSections::ComputeSurface  ) 
 

virtual Standard_EXPORT Handle_Geom_Curve GeomFill_NSections::ConstantSection  )  const [virtual]
 

Reimplemented from GeomFill_SectionLaw.

virtual Standard_EXPORT Standard_Boolean GeomFill_NSections::D0 const Standard_Real  Param,
TColgp_Array1OfPnt &  Poles,
TColStd_Array1OfReal &  Weigths
[virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT 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_EXPORT 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 Standard_EXPORT void GeomFill_NSections::GetDomain Standard_Real &  First,
Standard_Real &  Last
const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT void GeomFill_NSections::GetInterval Standard_Real &  First,
Standard_Real &  Last
const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT void GeomFill_NSections::GetMinimalWeight TColStd_Array1OfReal &  Weigths  )  const [virtual]
 

Reimplemented from GeomFill_SectionLaw.

virtual Standard_EXPORT void GeomFill_NSections::GetTolerance const Standard_Real  BoundTol,
const Standard_Real  SurfTol,
const Standard_Real  AngleTol,
TColStd_Array1OfReal &  Tol3d
const [virtual]
 

Implements GeomFill_SectionLaw.

Standard_EXPORT const GeomFill_NSections::Handle Standard_Type   )  const
 

Reimplemented from GeomFill_SectionLaw.

virtual Standard_EXPORT void GeomFill_NSections::Intervals TColStd_Array1OfReal &  T,
const GeomAbs_Shape  S
const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT Standard_Boolean GeomFill_NSections::IsConicalLaw Standard_Real &  Error  )  const [virtual]
 

Reimplemented from GeomFill_SectionLaw.

virtual Standard_EXPORT Standard_Boolean GeomFill_NSections::IsConstant Standard_Real &  Error  )  const [virtual]
 

Reimplemented from GeomFill_SectionLaw.

virtual Standard_EXPORT Standard_Boolean GeomFill_NSections::IsRational  )  const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT Standard_Boolean GeomFill_NSections::IsUPeriodic  )  const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT Standard_Boolean GeomFill_NSections::IsVPeriodic  )  const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT void GeomFill_NSections::Knots TColStd_Array1OfReal &  TKnots  )  const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT Standard_Real GeomFill_NSections::MaximalSection  )  const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT void GeomFill_NSections::Mults TColStd_Array1OfInteger &  TMults  )  const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT Standard_Integer GeomFill_NSections::NbIntervals const GeomAbs_Shape  S  )  const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT void GeomFill_NSections::SectionShape Standard_Integer &  NbPoles,
Standard_Integer &  NbKnots,
Standard_Integer &  Degree
const [virtual]
 

Implements GeomFill_SectionLaw.

virtual Standard_EXPORT void GeomFill_NSections::SetInterval const Standard_Real  First,
const Standard_Real  Last
[virtual]
 

Implements GeomFill_SectionLaw.

Standard_EXPORT void GeomFill_NSections::SetSurface const Handle(Geom_BSplineSurface)&  RefSurf  ) 
 


Field Documentation

TColStd_SequenceOfReal GeomFill_NSections::myParams [private]
 

Handle_Geom_BSplineSurface GeomFill_NSections::myRefSurf [private]
 

GeomFill_SequenceOfCurve GeomFill_NSections::mySections [private]
 

Handle_Geom_BSplineSurface GeomFill_NSections::mySurface [private]
 

Standard_Real GeomFill_NSections::UFirst [private]
 

Standard_Real GeomFill_NSections::ULast [private]
 

Standard_Real GeomFill_NSections::VFirst [private]
 

Standard_Real GeomFill_NSections::VLast [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:41:55 2008 for OpenCASCADE by  doxygen 1.4.1