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

ModelingAlgorithms
TKShHealing
ShapeCustom


ShapeCustom_BSplineRestriction Class Reference

this tool intended for aproximation surfaces, curves and pcurves with
specified degree , max number of segments, tolerance 2d, tolerance 3d. Specified
continuity can be reduced if approximation with specified continuity was not done.

#include <ShapeCustom_BSplineRestriction.hxx>


Public Member Functions

Standard_EXPORT ShapeCustom_BSplineRestriction ()
 Empty constructor.
.
Standard_EXPORT ShapeCustom_BSplineRestriction (const Standard_Boolean anApproxSurfaceFlag, const Standard_Boolean anApproxCurve3dFlag, const Standard_Boolean anApproxCurve2dFlag, const Standard_Real aTol3d, const Standard_Real aTol2d, const GeomAbs_Shape aContinuity3d, const GeomAbs_Shape aContinuity2d, const Standard_Integer aMaxDegree, const Standard_Integer aNbMaxSeg, const Standard_Boolean Degree, const Standard_Boolean Rational)
 Initializes with specified parameters of aproximation.
.
Standard_EXPORT ShapeCustom_BSplineRestriction (const Standard_Boolean anApproxSurfaceFlag, const Standard_Boolean anApproxCurve3dFlag, const Standard_Boolean anApproxCurve2dFlag, const Standard_Real aTol3d, const Standard_Real aTol2d, const GeomAbs_Shape aContinuity3d, const GeomAbs_Shape aContinuity2d, const Standard_Integer aMaxDegree, const Standard_Integer aNbMaxSeg, const Standard_Boolean Degree, const Standard_Boolean Rational, const Handle(ShapeCustom_RestrictionParameters)&aModes)
 Initializes with specified parameters of aproximation.
.
Standard_EXPORT Standard_Boolean NewSurface (const TopoDS_Face &F, Handle(Geom_Surface)&S, TopLoc_Location &L, Standard_Real &Tol, Standard_Boolean &RevWires, Standard_Boolean &RevFace)
 Returns Standard_True if the face <f> has been
modified. In this case, <s> is the new geometric
support of the face, <l> the new location,<tol>
the new tolerance.<revwires> has to be set to
Standard_True when the modification reverses the
normal of the surface.(the wires have to be
reversed). <revface> has to be set to
Standard_True if the orientation of the modified
face changes in the shells which contain it.

Otherwise, returns Standard_False, and <s>, <l>,
<tol> , <revwires> ,<revface> are not significant.
.
Standard_EXPORT Standard_Boolean NewCurve (const TopoDS_Edge &E, Handle(Geom_Curve)&C, TopLoc_Location &L, Standard_Real &Tol)
 Returns Standard_True if curve from the edge <e> has been
modified. In this case, <c> is the new geometric
support of the edge, <l> the new location, <tol>
the new tolerance.
Otherwise, returns Standard_True if Surface is modified or
one of pcurves of edge is modified. In this case C is copy of
geometric support of the edge.
In other cases returns Standard_False, and <c>, <l>, <tol> are not
significant.
.
Standard_EXPORT Standard_Boolean NewCurve2d (const TopoDS_Edge &E, const TopoDS_Face &F, const TopoDS_Edge &NewE, const TopoDS_Face &NewF, Handle(Geom2d_Curve)&C, Standard_Real &Tol)
 Returns Standard_True if the edge <e> has been modified.
In this case,if curve on the surface is modified, <c>
is the new geometric support of the edge, <l> the
new location, <tol> the new tolerance. If curve on the surface
is not modified C is copy curve on surface from the edge <e>.

Otherwise, returns Standard_False, and <c>, <l>,
<tol> are not significant.

<newe> is the new edge created from <e>. <newf>
is the new face created from <f>. They may be usefull.
.
Standard_EXPORT Standard_Boolean ConvertSurface (const Handle(Geom_Surface)&aSurface, Handle(Geom_Surface)&S, const Standard_Real UF, const Standard_Real UL, const Standard_Real VF, const Standard_Real VL, const Standard_Boolean IsOf=Standard_True)
 Returns Standard_True if the surface has been modified.
if flag IsOf equals Standard_True Offset surfaces are aproximated to Offset
if Standard_False to BSpline
.
Standard_EXPORT Standard_Boolean ConvertCurve (Handle(Geom_Curve)&aCurve, Handle(Geom_Curve)&C, const Standard_Boolean IsConvert, const Standard_Real First, const Standard_Real Last, Standard_Real &TolCur, const Standard_Boolean IsOf=Standard_True)
 Returns Standard_True if the curve has been modified.
if flag IsOf equals Standard_True Offset curves are aproximated to Offset
if Standard_False to BSpline
.
Standard_EXPORT Standard_Boolean ConvertCurve2d (Handle(Geom2d_Curve)&aCurve, Handle(Geom2d_Curve)&C, const Standard_Boolean IsConvert, const Standard_Real First, const Standard_Real Last, Standard_Real &TolCur, const Standard_Boolean IsOf=Standard_True)
 Returns Standard_True if the pcurve has been modified.
if flag IsOf equals Standard_True Offset pcurves are aproximated to Offset
if Standard_False to BSpline
.
void SetTol3d (const Standard_Real Tol3d)
 Sets tolerance of aproximation for curve3d and surface
.
void SetTol2d (const Standard_Real Tol2d)
 Sets tolerance of aproximation for curve2d
.
Standard_BooleanModifyApproxSurfaceFlag ()
 Returns (modifiable) the flag which defines whether the
surface is aproximated.
.
Standard_BooleanModifyApproxCurve3dFlag ()
 Returns (modifiable) the flag which defines whether the
curve3d is aproximated.
.
Standard_BooleanModifyApproxCurve2dFlag ()
 Returns (modifiable) the flag which defines whether the curve2d is aproximated.
.
void SetContinuity3d (const GeomAbs_Shape Continuity3d)
 Sets continuity3d for aproximation curve3d and surface.
.
void SetContinuity2d (const GeomAbs_Shape Continuity2d)
 Sets continuity3d for aproximation curve2d.
.
void SetMaxDegree (const Standard_Integer MaxDegree)
 Sets max degree for aproximation.
.
void SetMaxNbSegments (const Standard_Integer MaxNbSegments)
 Sets max number of segments for aproximation.
.
void SetPriority (const Standard_Boolean Degree)
 Sets priority for aproximation curves and surface.
If Degree is True approximation is made with degree less
then specified MaxDegree at the expense of number of spanes.
If Degree is False approximation is made with number of
spans less then specified MaxNbSegment at the expense of
specified MaxDegree.
.
void SetConvRational (const Standard_Boolean Rational)
 Sets flag for define if rational BSpline or Bezier is
converted to polynomial. If Rational is True approximation
for rational BSpline and Bezier is made to polynomial even
if degree is less then MaxDegree and number of spans is less
then specified MaxNbSegment.
.
Handle_ShapeCustom_RestrictionParameters GetRestrictionParameters () const
 Returns the container of modes which defines
what geometry should be converted to BSplines.
.
void SetRestrictionParameters (const Handle(ShapeCustom_RestrictionParameters)&aModes)
 Sets the container of modes which defines
what geometry should be converted to BSplines.
.
Standard_Real Curve3dError () const
 Returns error for aproximation curve3d.
.
Standard_Real Curve2dError () const
 Returns error for aproximation curve2d.
.
Standard_Real SurfaceError () const
 Returns error for aproximation surface.
.
Standard_EXPORT Standard_Boolean NewPoint (const TopoDS_Vertex &V, gp_Pnt &P, Standard_Real &Tol)
Standard_EXPORT Standard_Boolean NewParameter (const TopoDS_Vertex &V, const TopoDS_Edge &E, Standard_Real &P, Standard_Real &Tol)
Standard_EXPORT GeomAbs_Shape Continuity (const TopoDS_Edge &E, const TopoDS_Face &F1, const TopoDS_Face &F2, const TopoDS_Edge &NewE, const TopoDS_Face &NewF1, const TopoDS_Face &NewF2)
Standard_EXPORT Standard_Real MaxErrors (Standard_Real &aCurve3dErr, Standard_Real &aCurve2dErr) const
 Returns error for aproximation surface, curve3d and curve2d.
.
Standard_EXPORT Standard_Integer NbOfSpan () const
 Returns number for aproximation surface, curve3d and curve2d.
.
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Private Attributes

GeomAbs_Shape myContinuity3d
GeomAbs_Shape myContinuity2d
Standard_Integer myMaxDegree
Standard_Integer myNbMaxSeg
Standard_Real myTol3d
Standard_Real myTol2d
Standard_Real mySurfaceError
Standard_Real myCurve3dError
Standard_Real myCurve2dError
Standard_Integer myNbOfSpan
Standard_Boolean myApproxSurfaceFlag
Standard_Boolean myApproxCurve3dFlag
Standard_Boolean myApproxCurve2dFlag
Standard_Boolean myDeg
Standard_Boolean myConvert
Standard_Boolean myRational
Handle_ShapeCustom_RestrictionParameters myParameters


Constructor & Destructor Documentation

Standard_EXPORT ShapeCustom_BSplineRestriction::ShapeCustom_BSplineRestriction  ) 
 

Standard_EXPORT ShapeCustom_BSplineRestriction::ShapeCustom_BSplineRestriction const Standard_Boolean  anApproxSurfaceFlag,
const Standard_Boolean  anApproxCurve3dFlag,
const Standard_Boolean  anApproxCurve2dFlag,
const Standard_Real  aTol3d,
const Standard_Real  aTol2d,
const GeomAbs_Shape  aContinuity3d,
const GeomAbs_Shape  aContinuity2d,
const Standard_Integer  aMaxDegree,
const Standard_Integer  aNbMaxSeg,
const Standard_Boolean  Degree,
const Standard_Boolean  Rational
 

Standard_EXPORT ShapeCustom_BSplineRestriction::ShapeCustom_BSplineRestriction const Standard_Boolean  anApproxSurfaceFlag,
const Standard_Boolean  anApproxCurve3dFlag,
const Standard_Boolean  anApproxCurve2dFlag,
const Standard_Real  aTol3d,
const Standard_Real  aTol2d,
const GeomAbs_Shape  aContinuity3d,
const GeomAbs_Shape  aContinuity2d,
const Standard_Integer  aMaxDegree,
const Standard_Integer  aNbMaxSeg,
const Standard_Boolean  Degree,
const Standard_Boolean  Rational,
const Handle(ShapeCustom_RestrictionParameters)&  aModes
 


Member Function Documentation

Standard_EXPORT GeomAbs_Shape ShapeCustom_BSplineRestriction::Continuity const TopoDS_Edge &  E,
const TopoDS_Face &  F1,
const TopoDS_Face &  F2,
const TopoDS_Edge &  NewE,
const TopoDS_Face &  NewF1,
const TopoDS_Face &  NewF2
 

Standard_EXPORT Standard_Boolean ShapeCustom_BSplineRestriction::ConvertCurve Handle(Geom_Curve)&  aCurve,
Handle(Geom_Curve)&  C,
const Standard_Boolean  IsConvert,
const Standard_Real  First,
const Standard_Real  Last,
Standard_Real &  TolCur,
const Standard_Boolean  IsOf = Standard_True
 

Standard_EXPORT Standard_Boolean ShapeCustom_BSplineRestriction::ConvertCurve2d Handle(Geom2d_Curve)&  aCurve,
Handle(Geom2d_Curve)&  C,
const Standard_Boolean  IsConvert,
const Standard_Real  First,
const Standard_Real  Last,
Standard_Real &  TolCur,
const Standard_Boolean  IsOf = Standard_True
 

Standard_EXPORT Standard_Boolean ShapeCustom_BSplineRestriction::ConvertSurface const Handle(Geom_Surface)&  aSurface,
Handle(Geom_Surface)&  S,
const Standard_Real  UF,
const Standard_Real  UL,
const Standard_Real  VF,
const Standard_Real  VL,
const Standard_Boolean  IsOf = Standard_True
 

Standard_Real ShapeCustom_BSplineRestriction::Curve2dError  )  const [inline]
 

Standard_Real ShapeCustom_BSplineRestriction::Curve3dError  )  const [inline]
 

Handle_ShapeCustom_RestrictionParameters ShapeCustom_BSplineRestriction::GetRestrictionParameters  )  const
 

Standard_EXPORT const ShapeCustom_BSplineRestriction::Handle Standard_Type   )  const
 

Standard_EXPORT Standard_Real ShapeCustom_BSplineRestriction::MaxErrors Standard_Real &  aCurve3dErr,
Standard_Real &  aCurve2dErr
const
 

Standard_Boolean & ShapeCustom_BSplineRestriction::ModifyApproxCurve2dFlag  )  [inline]
 

Standard_Boolean & ShapeCustom_BSplineRestriction::ModifyApproxCurve3dFlag  )  [inline]
 

Standard_Boolean & ShapeCustom_BSplineRestriction::ModifyApproxSurfaceFlag  )  [inline]
 

Standard_EXPORT Standard_Integer ShapeCustom_BSplineRestriction::NbOfSpan  )  const
 

Standard_EXPORT Standard_Boolean ShapeCustom_BSplineRestriction::NewCurve const TopoDS_Edge &  E,
Handle(Geom_Curve)&  C,
TopLoc_Location &  L,
Standard_Real &  Tol
 

Standard_EXPORT Standard_Boolean ShapeCustom_BSplineRestriction::NewCurve2d const TopoDS_Edge &  E,
const TopoDS_Face &  F,
const TopoDS_Edge &  NewE,
const TopoDS_Face &  NewF,
Handle(Geom2d_Curve)&  C,
Standard_Real &  Tol
 

Standard_EXPORT Standard_Boolean ShapeCustom_BSplineRestriction::NewParameter const TopoDS_Vertex &  V,
const TopoDS_Edge &  E,
Standard_Real &  P,
Standard_Real &  Tol
 

Standard_EXPORT Standard_Boolean ShapeCustom_BSplineRestriction::NewPoint const TopoDS_Vertex &  V,
gp_Pnt &  P,
Standard_Real &  Tol
 

Standard_EXPORT Standard_Boolean ShapeCustom_BSplineRestriction::NewSurface const TopoDS_Face &  F,
Handle(Geom_Surface)&  S,
TopLoc_Location &  L,
Standard_Real &  Tol,
Standard_Boolean RevWires,
Standard_Boolean RevFace
 

void ShapeCustom_BSplineRestriction::SetContinuity2d const GeomAbs_Shape  Continuity2d  )  [inline]
 

void ShapeCustom_BSplineRestriction::SetContinuity3d const GeomAbs_Shape  Continuity3d  )  [inline]
 

void ShapeCustom_BSplineRestriction::SetConvRational const Standard_Boolean  Rational  )  [inline]
 

void ShapeCustom_BSplineRestriction::SetMaxDegree const Standard_Integer  MaxDegree  )  [inline]
 

void ShapeCustom_BSplineRestriction::SetMaxNbSegments const Standard_Integer  MaxNbSegments  )  [inline]
 

void ShapeCustom_BSplineRestriction::SetPriority const Standard_Boolean  Degree  )  [inline]
 

void ShapeCustom_BSplineRestriction::SetRestrictionParameters const Handle(ShapeCustom_RestrictionParameters)&  aModes  )  [inline]
 

void ShapeCustom_BSplineRestriction::SetTol2d const Standard_Real  Tol2d  )  [inline]
 

void ShapeCustom_BSplineRestriction::SetTol3d const Standard_Real  Tol3d  )  [inline]
 

Standard_Real ShapeCustom_BSplineRestriction::SurfaceError  )  const [inline]
 


Field Documentation

Standard_Boolean ShapeCustom_BSplineRestriction::myApproxCurve2dFlag [private]
 

Standard_Boolean ShapeCustom_BSplineRestriction::myApproxCurve3dFlag [private]
 

Standard_Boolean ShapeCustom_BSplineRestriction::myApproxSurfaceFlag [private]
 

GeomAbs_Shape ShapeCustom_BSplineRestriction::myContinuity2d [private]
 

GeomAbs_Shape ShapeCustom_BSplineRestriction::myContinuity3d [private]
 

Standard_Boolean ShapeCustom_BSplineRestriction::myConvert [private]
 

Standard_Real ShapeCustom_BSplineRestriction::myCurve2dError [private]
 

Standard_Real ShapeCustom_BSplineRestriction::myCurve3dError [private]
 

Standard_Boolean ShapeCustom_BSplineRestriction::myDeg [private]
 

Standard_Integer ShapeCustom_BSplineRestriction::myMaxDegree [private]
 

Standard_Integer ShapeCustom_BSplineRestriction::myNbMaxSeg [private]
 

Standard_Integer ShapeCustom_BSplineRestriction::myNbOfSpan [private]
 

Handle_ShapeCustom_RestrictionParameters ShapeCustom_BSplineRestriction::myParameters [private]
 

Standard_Boolean ShapeCustom_BSplineRestriction::myRational [private]
 

Standard_Real ShapeCustom_BSplineRestriction::mySurfaceError [private]
 

Standard_Real ShapeCustom_BSplineRestriction::myTol2d [private]
 

Standard_Real ShapeCustom_BSplineRestriction::myTol3d [private]
 


The documentation for this class was generated from the following files:
Generated on Mon Aug 25 13:42:36 2008 for OpenCASCADE by  doxygen 1.4.1