Back to index

salome-geom  6.5.0
Public Member Functions | Private Attributes | Friends
BlockFix_BlockFixAPI Class Reference

#include <BlockFix_BlockFixAPI.hxx>

List of all members.

Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT BlockFix_BlockFixAPI ()
void SetShape (const TopoDS_Shape &Shape)
Standard_EXPORT void Perform ()
TopoDS_Shape Shape () const
Handle_ShapeBuild_ReShape & Context ()
Standard_Real & Tolerance ()
Standard_Integer & OptimumNbFaces ()
Standard_EXPORT ~BlockFix_BlockFixAPI ()
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const
Standard_EXPORT Standard_Boolean IsKind (const Handle(Standard_Type)&) const

Private Attributes

Handle_ShapeBuild_ReShape myContext
TopoDS_Shape myShape
Standard_Real myTolerance
Standard_Integer myOptimumNbFaces


Standard_EXPORT friend
Handle_Standard_Type & 
BlockFix_BlockFixAPI_Type_ ()

Detailed Description

Definition at line 50 of file BlockFix_BlockFixAPI.hxx.

Constructor & Destructor Documentation

Definition at line 43 of file BlockFix_BlockFixAPI.cxx.

  myTolerance = Precision::Confusion();
  myOptimumNbFaces = 6;

Definition at line 29 of file BlockFix_BlockFixAPI.ixx.


Member Function Documentation

Handle_ShapeBuild_ReShape& BlockFix_BlockFixAPI::Context ( )
Standard_EXPORT const BlockFix_BlockFixAPI::Handle ( Standard_Type  ) const
Standard_Boolean BlockFix_BlockFixAPI::IsKind ( const Handle(Standard_Type)&  AType) const

Definition at line 72 of file BlockFix_BlockFixAPI.ixx.

  return (STANDARD_TYPE(BlockFix_BlockFixAPI) == AType || MMgt_TShared::IsKind(AType));

Here is the call graph for this function:

void BlockFix_BlockFixAPI::operator delete ( void *  anAddress) [inline]

Definition at line 61 of file BlockFix_BlockFixAPI.hxx.

    if (anAddress) Standard::Free((Standard_Address&)anAddress);
void* BlockFix_BlockFixAPI::operator new ( size_t  ,
void *  anAddress 
) [inline]

Definition at line 53 of file BlockFix_BlockFixAPI.hxx.

    return anAddress;
void* BlockFix_BlockFixAPI::operator new ( size_t  size) [inline]

Definition at line 57 of file BlockFix_BlockFixAPI.hxx.

    return Standard::Allocate(size);
Standard_Integer& BlockFix_BlockFixAPI::OptimumNbFaces ( )

Here is the caller graph for this function:

Definition at line 54 of file BlockFix_BlockFixAPI.cxx.

  // processing spheres with degenerativities
  TopoDS_Shape aShape = Shape();
  myShape = BlockFix::RotateSphereSpace(aShape,myTolerance);

  // try to approximate non-canonic surfaces
  // with singularities on boundaries by filling
  myShape = BlockFix::RefillProblemFaces(myShape);

  // faces unification
  BlockFix_UnionFaces aFaceUnifier;
  aFaceUnifier.GetTolerance() = myTolerance;
  aFaceUnifier.GetOptimumNbFaces() = myOptimumNbFaces;
  TopoDS_Shape aResult = aFaceUnifier.Perform(myShape);

  // avoid problem with degenerated edges appearance
  // due to shape quality regress
  ShapeUpgrade_RemoveLocations RemLoc;
  aResult = RemLoc.GetResult();

  // edges unification
  BlockFix_UnionEdges anEdgeUnifier;
  myShape = anEdgeUnifier.Perform(aResult,myTolerance);

  TopoDS_Shape aRes = BlockFix::FixRanges(myShape,myTolerance);
  myShape = aRes;

Here is the call graph for this function:

Here is the caller graph for this function:

void BlockFix_BlockFixAPI::SetShape ( const TopoDS_Shape &  Shape)

Here is the caller graph for this function:

TopoDS_Shape BlockFix_BlockFixAPI::Shape ( ) const

Here is the caller graph for this function:

Standard_Real& BlockFix_BlockFixAPI::Tolerance ( )

Friends And Related Function Documentation

Standard_EXPORT friend Handle_Standard_Type& BlockFix_BlockFixAPI_Type_ ( ) [friend]

Definition at line 33 of file BlockFix_BlockFixAPI.ixx.


    static Handle_Standard_Type aType1 = STANDARD_TYPE(MMgt_TShared);
  if ( aType1.IsNull()) aType1 = STANDARD_TYPE(MMgt_TShared);
  static Handle_Standard_Type aType2 = STANDARD_TYPE(Standard_Transient);
  if ( aType2.IsNull()) aType2 = STANDARD_TYPE(Standard_Transient);

  static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,NULL};
  static Handle_Standard_Type _aType = new Standard_Type("BlockFix_BlockFixAPI",

  return _aType;

Member Data Documentation

Handle_ShapeBuild_ReShape BlockFix_BlockFixAPI::myContext [private]

Definition at line 86 of file BlockFix_BlockFixAPI.hxx.

Standard_Integer BlockFix_BlockFixAPI::myOptimumNbFaces [private]

Definition at line 89 of file BlockFix_BlockFixAPI.hxx.

TopoDS_Shape BlockFix_BlockFixAPI::myShape [private]

Definition at line 87 of file BlockFix_BlockFixAPI.hxx.

Standard_Real BlockFix_BlockFixAPI::myTolerance [private]

Definition at line 88 of file BlockFix_BlockFixAPI.hxx.

The documentation for this class was generated from the following files: