- Standard_EXPORT which were specified for inline methods were deleted.
- ALL occurrences of DEFINE_STANDARD_RTTI_INLINE were replaced by DEFINE_STANDARD_RTTIEXT in header files and IMPLEMENT_STANDARD_RTTIEXT in source files
- ALL occurrences of "inline" keyword were deleted where it didn't not cause a linkage errors
- Added source files for classes that were without them for IMPLEMENT_STANDARD_RTTIEXT
#include <BRepMesh_ShapeTool.hxx>
#include <Standard_ErrorHandler.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_BaseMeshAlgo, IMeshTools_MeshAlgo)
+
//=======================================================================
// Function: Constructor
// Purpose :
const IMeshTools_Parameters& theParameters,
const Message_ProgressRange& theRange = Message_ProgressRange()) Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_BaseMeshAlgo, IMeshTools_MeshAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_BaseMeshAlgo, IMeshTools_MeshAlgo)
protected:
//! Gets discrete face.
- inline const IMeshData::IFaceHandle& getDFace() const
+ const IMeshData::IFaceHandle& getDFace() const
{
return myDFace;
}
//! Gets meshing parameters.
- inline const IMeshTools_Parameters& getParameters() const
+ const IMeshTools_Parameters& getParameters() const
{
return myParameters;
}
//! Gets common allocator.
- inline const Handle(NCollection_IncAllocator)& getAllocator() const
+ const Handle(NCollection_IncAllocator)& getAllocator() const
{
return myAllocator;
}
//! Gets mesh structure.
- inline const Handle(BRepMesh_DataStructureOfDelaun)& getStructure() const
+ const Handle(BRepMesh_DataStructureOfDelaun)& getStructure() const
{
return myStructure;
}
//! Gets 3d nodes map.
- inline const Handle(VectorOfPnt)& getNodesMap() const
+ const Handle(VectorOfPnt)& getNodesMap() const
{
return myNodesMap;
}
//! Sets location of a circle.
//! @param theLocation location of a circle.
- inline void SetLocation(const gp_XY& theLocation)
+ void SetLocation(const gp_XY& theLocation)
{
myLocation = theLocation;
}
//! Sets radius of a circle.
//! @param theRadius radius of a circle.
- inline void SetRadius(const Standard_Real theRadius)
+ void SetRadius(const Standard_Real theRadius)
{
myRadius = theRadius;
}
//! Returns location of a circle.
- inline const gp_XY& Location() const
+ const gp_XY& Location() const
{
return myLocation;
}
//! Returns radius of a circle.
- inline const Standard_Real& Radius() const
+ const Standard_Real& Radius() const
{
return myRadius;
}
//! Adds the circle to vector of circles at the given position.
//! @param theIndex position of circle in the vector.
//! @param theCircle circle to be added.
- inline void Bind(const Standard_Integer theIndex,
- const BRepMesh_Circle& theCircle)
+ void Bind(const Standard_Integer theIndex,
+ const BRepMesh_Circle& theCircle)
{
myCircles.SetValue(theIndex, theCircle);
}
//! Resutns vector of registered circles.
- inline const IMeshData::VectorOfCircle& Circles() const
+ const IMeshData::VectorOfCircle& Circles() const
{
return myCircles;
}
//! Returns circle with the given index.
//! @param theIndex index of circle.
//! @return circle with the given index.
- inline BRepMesh_Circle& Circle(const Standard_Integer theIndex)
+ BRepMesh_Circle& Circle(const Standard_Integer theIndex)
{
return myCircles(theIndex);
}
//! Set reference point to be checked.
//! @param thePoint bullet point.
- inline void SetPoint(const gp_XY& thePoint)
+ void SetPoint(const gp_XY& thePoint)
{
myResIndices.Clear();
myPoint = thePoint;
}
//! Returns list of circles shot by the reference point.
- inline IMeshData::ListOfInteger& GetShotCircles()
+ IMeshData::ListOfInteger& GetShotCircles()
{
return myResIndices;
}
//! Performs inspection of a circle with the given index.
//! @param theTargetIndex index of a circle to be checked.
//! @return status of the check.
- inline NCollection_CellFilter_Action Inspect(
+ NCollection_CellFilter_Action Inspect(
const Standard_Integer theTargetIndex)
{
BRepMesh_Circle& aCircle = myCircles(theTargetIndex);
//! Initializes the tool.
//! @param theReservedSize size to be reserved for vector of circles.
- inline void Init(const Standard_Integer /*theReservedSize*/)
+ void Init(const Standard_Integer /*theReservedSize*/)
{
myTolerance = Precision::PConfusion();
}
//! Sets new size for cell filter.
//! @param theSize cell size to be set for X and Y dimensions.
- inline void SetCellSize(const Standard_Real theSize)
+ void SetCellSize(const Standard_Real theSize)
{
myCellFilter.Reset(theSize, myAllocator);
}
//! Sets new size for cell filter.
//! @param theSizeX cell size to be set for X dimension.
//! @param theSizeY cell size to be set for Y dimension.
- inline void SetCellSize(const Standard_Real theSizeX,
- const Standard_Real theSizeY)
+ void SetCellSize(const Standard_Real theSizeX,
+ const Standard_Real theSizeY)
{
Standard_Real aCellSizeC[2] = { theSizeX, theSizeY };
NCollection_Array1<Standard_Real> aCellSize(aCellSizeC[0], 1, 2);
//! Sets limits of inspection area.
//! @param theMin bottom left corner of inspection area.
//! @param theMax top right corner of inspection area.
- inline void SetMinMaxSize(const gp_XY& theMin,
- const gp_XY& theMax)
+ void SetMinMaxSize(const gp_XY& theMin,
+ const gp_XY& theMax)
{
myFaceMin = theMin;
myFaceMax = theMax;
}
//! Retruns true if cell filter contains no circle.
- inline Standard_Boolean IsEmpty () const
+ Standard_Boolean IsEmpty () const
{
return mySelector.Circles ().IsEmpty ();
}
#include <CSLib_Class2d.hxx>
#include <TColgp_Array1OfPnt2d.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_Classifier, Standard_Transient)
+
//=======================================================================
//function : Constructor
//purpose :
const std::pair<Standard_Real, Standard_Real>& theRangeU,
const std::pair<Standard_Real, Standard_Real>& theRangeV);
- DEFINE_STANDARD_RTTI_INLINE (BRepMesh_Classifier, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_Classifier, Standard_Transient)
private:
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <BRepMesh_ConstrainedBaseMeshAlgo.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_ConstrainedBaseMeshAlgo, BRepMesh_BaseMeshAlgo)
\ No newline at end of file
{
}
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_ConstrainedBaseMeshAlgo, BRepMesh_BaseMeshAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_ConstrainedBaseMeshAlgo, BRepMesh_BaseMeshAlgo)
protected:
#include <Message.hxx>
#include <OSD_Environment.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_Context, IMeshTools_Context)
+
//=======================================================================
// Function: Constructor
// Purpose :
//! Destructor.
Standard_EXPORT virtual ~BRepMesh_Context ();
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_Context, IMeshTools_Context)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_Context, IMeshTools_Context)
};
#endif
\ No newline at end of file
#include <Standard_Failure.hxx>
#include <GCPnts_AbscissaPoint.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_CurveTessellator, IMeshTools_CurveTessellator)
+
//=======================================================================
//function : Constructor
//purpose :
gp_Pnt& thePoint,
Standard_Real& theParameter) const Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_CurveTessellator, IMeshTools_CurveTessellator)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_CurveTessellator, IMeshTools_CurveTessellator)
private:
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <BRepMesh_CustomBaseMeshAlgo.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_CustomBaseMeshAlgo, BRepMesh_ConstrainedBaseMeshAlgo)
\ No newline at end of file
public:
//! Constructor.
- Standard_EXPORT BRepMesh_CustomBaseMeshAlgo ()
+ BRepMesh_CustomBaseMeshAlgo ()
{
}
//! Destructor.
- Standard_EXPORT virtual ~BRepMesh_CustomBaseMeshAlgo ()
+ virtual ~BRepMesh_CustomBaseMeshAlgo ()
{
}
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_CustomBaseMeshAlgo, BRepMesh_ConstrainedBaseMeshAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_CustomBaseMeshAlgo, BRepMesh_ConstrainedBaseMeshAlgo)
protected:
//! Generates mesh for the contour stored in data structure.
- Standard_EXPORT virtual void generateMesh (const Message_ProgressRange& theRange) Standard_OVERRIDE
+ virtual void generateMesh (const Message_ProgressRange& theRange) Standard_OVERRIDE
{
const Handle (BRepMesh_DataStructureOfDelaun)& aStructure = this->getStructure ();
const Standard_Integer aNodesNb = aStructure->NbNodes ();
#include <BRepTools.hxx>
#include <Standard_ErrorHandler.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_DataStructureOfDelaun, Standard_Transient)
+
//=======================================================================
//function : BRepMesh_DataStructureOfDelaun
//purpose :
public: //! @name API for accessing mesh nodes.
//! Returns number of nodes.
- inline Standard_Integer NbNodes() const
+ Standard_Integer NbNodes() const
{
return myNodes->Extent();
}
//! Get node by the index.
//! @param theIndex index of a node.
//! @return node with the given index.
- inline const BRepMesh_Vertex& GetNode(const Standard_Integer theIndex)
+ const BRepMesh_Vertex& GetNode(const Standard_Integer theIndex)
{
return myNodes->FindKey(theIndex);
}
//! Get list of links attached to the node with the given index.
//! @param theIndex index of node whose links should be retrieved.
//! @return list of links attached to the node.
- inline const IMeshData::ListOfInteger& LinksConnectedTo(
+ const IMeshData::ListOfInteger& LinksConnectedTo(
const Standard_Integer theIndex) const
{
return linksConnectedTo(theIndex);
public: //! @name API for accessing mesh links.
//! Returns number of links.
- inline Standard_Integer NbLinks() const
+ Standard_Integer NbLinks() const
{
return myLinks.Extent();
}
}
//! Returns map of indices of links registered in mesh.
- inline const IMeshData::MapOfInteger& LinksOfDomain() const
+ const IMeshData::MapOfInteger& LinksOfDomain() const
{
return myLinksOfDomain;
}
public: //! @name API for accessing mesh elements.
//! Returns number of links.
- inline Standard_Integer NbElements() const
+ Standard_Integer NbElements() const
{
return myElements.Size();
}
}
//! Returns map of indices of elements registered in mesh.
- inline const IMeshData::MapOfInteger& ElementsOfDomain() const
+ const IMeshData::MapOfInteger& ElementsOfDomain() const
{
return myElementsOfDomain;
}
Standard_EXPORT void Statistics(Standard_OStream& theStream) const;
//! Returns memory allocator used by the structure.
- inline const Handle(NCollection_IncAllocator)& Allocator() const
+ const Handle(NCollection_IncAllocator)& Allocator() const
{
return myAllocator;
}
//! Gives the data structure for initialization of cell size and tolerance.
- inline const Handle(BRepMesh_VertexTool)& Data()
+ const Handle(BRepMesh_VertexTool)& Data()
{
return myNodes;
}
clearDeletedNodes();
}
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_DataStructureOfDelaun, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_DataStructureOfDelaun, Standard_Transient)
private:
//! Get list of links attached to the node with the given index.
//! @param theIndex index of node whose links should be retrieved.
//! @return list of links attached to the node.
- inline IMeshData::ListOfInteger& linksConnectedTo(
+ IMeshData::ListOfInteger& linksConnectedTo(
const Standard_Integer theIndex) const
{
return (IMeshData::ListOfInteger&)myNodeLinks.Find(theIndex);
//! Returns point in 3d space corresponded to the given
//! point defined in parameteric space of surface.
- inline gp_Pnt Point(const gp_Pnt2d& thePoint2d) const
+ gp_Pnt Point(const gp_Pnt2d& thePoint2d) const
{
return GetSurface()->Value(thePoint2d.X(), thePoint2d.Y());
}
public:
//! Returns face model.
- inline const IMeshData::IFaceHandle& GetDFace() const
+ const IMeshData::IFaceHandle& GetDFace() const
{
return myDFace;
}
//! Returns surface.
- inline const Handle(BRepAdaptor_HSurface)& GetSurface() const
+ const Handle(BRepAdaptor_HSurface)& GetSurface() const
{
return myDFace->GetSurface();
}
//! Returns U range.
- inline const std::pair<Standard_Real, Standard_Real>& GetRangeU() const
+ const std::pair<Standard_Real, Standard_Real>& GetRangeU() const
{
return myRangeU;
}
//! Returns V range.
- inline const std::pair<Standard_Real, Standard_Real>& GetRangeV() const
+ const std::pair<Standard_Real, Standard_Real>& GetRangeV() const
{
return myRangeV;
}
//! Returns delta.
- inline const std::pair<Standard_Real, Standard_Real>& GetDelta () const
+ const std::pair<Standard_Real, Standard_Real>& GetDelta () const
{
return myDelta;
}
- inline const std::pair<Standard_Real, Standard_Real>& GetToleranceUV() const
+ const std::pair<Standard_Real, Standard_Real>& GetToleranceUV() const
{
return myTolerance;
}
#include <TopExp.hxx>
#include <TopoDS_Vertex.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_Deflection, Standard_Transient)
+
//=======================================================================
//function : RelativeEdgeDeflection
//purpose :
const Standard_Boolean theAllowDecrease,
const Standard_Real theRatio = 0.1);
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_Deflection, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_Deflection, Standard_Transient)
};
#endif
\ No newline at end of file
Handle(BRepMesh_DataStructureOfDelaun) myStructure;
};
- inline void UpdateBndBox(const gp_XY& thePnt1, const gp_XY& thePnt2, Bnd_B2d& theBox)
+ void UpdateBndBox(const gp_XY& thePnt1, const gp_XY& thePnt2, Bnd_B2d& theBox)
{
theBox.Add( thePnt1 );
theBox.Add( thePnt2 );
Standard_EXPORT Standard_Boolean UseEdge (const Standard_Integer theEdge);
//! Gives the Mesh data structure.
- inline const Handle(BRepMesh_DataStructureOfDelaun)& Result() const
+ const Handle(BRepMesh_DataStructureOfDelaun)& Result() const
{
return myMeshData;
}
//! Forces insertion of constraint edges into the base triangulation.
- inline void ProcessConstraints()
+ void ProcessConstraints()
{
insertInternalEdges();
}
//! Gives the list of frontier edges.
- inline Handle(IMeshData::MapOfInteger) Frontier() const
+ Handle(IMeshData::MapOfInteger) Frontier() const
{
return getEdgesByType (BRepMesh_Frontier);
}
//! Gives the list of internal edges.
- inline Handle(IMeshData::MapOfInteger) InternalEdges() const
+ Handle(IMeshData::MapOfInteger) InternalEdges() const
{
return getEdgesByType (BRepMesh_Fixed);
}
//! Gives the list of free edges used only one time
- inline Handle(IMeshData::MapOfInteger) FreeEdges() const
+ Handle(IMeshData::MapOfInteger) FreeEdges() const
{
return getEdgesByType (BRepMesh_Free);
}
//! Gives vertex with the given index
- inline const BRepMesh_Vertex& GetVertex (const Standard_Integer theIndex) const
+ const BRepMesh_Vertex& GetVertex (const Standard_Integer theIndex) const
{
return myMeshData->GetNode (theIndex);
}
//! Gives edge with the given index
- inline const BRepMesh_Edge& GetEdge (const Standard_Integer theIndex) const
+ const BRepMesh_Edge& GetEdge (const Standard_Integer theIndex) const
{
return myMeshData->GetLink (theIndex);
}
//! Gives triangle with the given index
- inline const BRepMesh_Triangle& GetTriangle (const Standard_Integer theIndex) const
+ const BRepMesh_Triangle& GetTriangle (const Standard_Integer theIndex) const
{
return myMeshData->GetElement (theIndex);
}
//! Returns tool used to build mesh consistent to Delaunay criteria.
- inline const BRepMesh_CircleTool& Circles() const
+ const BRepMesh_CircleTool& Circles() const
{
return myCircles;
}
IMeshData::SequenceOfBndB2d& thePolyBoxesCut);
//! Triangulation of closed polygon containing only three edges.
- inline Standard_Boolean meshElementaryPolygon (const IMeshData::SequenceOfInteger& thePolygon);
+ Standard_Boolean meshElementaryPolygon (const IMeshData::SequenceOfInteger& thePolygon);
//! Creates the triangles beetween the given node and the given polyline.
void createTriangles (const Standard_Integer theVertexIndex,
IMeshData::MapOfIntegerInteger& thePoly);
//! Add a triangle based on the given oriented edges into mesh
- inline void addTriangle (const Standard_Integer (&theEdgesId)[3],
- const Standard_Boolean (&theEdgesOri)[3],
- const Standard_Integer (&theNodesId)[3]);
+ void addTriangle (const Standard_Integer (&theEdgesId)[3],
+ const Standard_Boolean (&theEdgesOri)[3],
+ const Standard_Integer (&theNodesId)[3]);
//! Deletes the triangle with the given index and adds the free edges into the map.
//! When an edge is suppressed more than one time it is destroyed.
#include <BRepMesh_MeshTool.hxx>
#include <BRepMesh_Delaun.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_DelaunayBaseMeshAlgo, BRepMesh_ConstrainedBaseMeshAlgo)
+
//=======================================================================
// Function: Constructor
// Purpose :
//! Destructor.
Standard_EXPORT virtual ~BRepMesh_DelaunayBaseMeshAlgo();
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_DelaunayBaseMeshAlgo, BRepMesh_ConstrainedBaseMeshAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_DelaunayBaseMeshAlgo, BRepMesh_ConstrainedBaseMeshAlgo)
protected:
};
//! Returns nodes info of the given triangle.
- inline void getTriangleInfo(
+ void getTriangleInfo(
const BRepMesh_Triangle& theTriangle,
const Standard_Integer (&theNodesIndices)[3],
TriangleNodeInfo (&theInfo)[3]) const
//! Updates array of links vectors.
//! @return False on degenerative triangle.
- inline Standard_Boolean computeTriangleGeometry(
+ Standard_Boolean computeTriangleGeometry(
const TriangleNodeInfo(&theNodesInfo)[3],
gp_Vec (&theLinks)[3],
gp_Vec &theNormal)
//! Updates array of links vectors.
//! @return False on degenerative triangle.
- inline Standard_Boolean checkTriangleForDegenerativityAndGetLinks(
+ Standard_Boolean checkTriangleForDegenerativityAndGetLinks(
const TriangleNodeInfo (&theNodesInfo)[3],
gp_Vec (&theLinks)[3])
{
//! Checks area of triangle in parametric space for degenerativity.
//! @return False on degenerative triangle.
- inline Standard_Boolean checkTriangleArea2d(
+ Standard_Boolean checkTriangleArea2d(
const TriangleNodeInfo (&theNodesInfo)[3])
{
const gp_Vec2d aLink2d1(theNodesInfo[0].Point2d, theNodesInfo[1].Point2d);
//! Computes normal using two link vectors.
//! @return True on success, False in case of normal of null magnitude.
- inline Standard_Boolean computeNormal(const gp_Vec& theLink1,
- const gp_Vec& theLink2,
- gp_Vec& theNormal)
+ Standard_Boolean computeNormal(const gp_Vec& theLink1,
+ const gp_Vec& theLink2,
+ gp_Vec& theNormal)
{
const gp_Vec aNormal(theLink1 ^ theLink2);
if (aNormal.SquareMagnitude() > gp::Resolution())
//! Computes deflection of midpoints of triangles links.
//! @return True if point fits specified deflection.
- inline void splitLinks(
+ void splitLinks(
const TriangleNodeInfo (&theNodesInfo)[3],
const Standard_Integer (&theNodesIndices)[3])
{
//! insertion in case if it overflows deflection.
//! @return True if point has been cached for insertion.
template<class DeflectionFunctor>
- inline Standard_Boolean usePoint(
+ Standard_Boolean usePoint(
const gp_XY& thePnt2d,
const DeflectionFunctor& theDeflectionFunctor)
{
}
//! Returns PreProcessSurfaceNodes flag.
- inline Standard_Boolean IsPreProcessSurfaceNodes () const
+ Standard_Boolean IsPreProcessSurfaceNodes () const
{
return myIsPreProcessSurfaceNodes;
}
//! Sets PreProcessSurfaceNodes flag.
//! If TRUE, registers surface nodes before generation of base mesh.
//! If FALSE, inserts surface nodes after generation of base mesh.
- inline void SetPreProcessSurfaceNodes (const Standard_Boolean isPreProcessSurfaceNodes)
+ void SetPreProcessSurfaceNodes (const Standard_Boolean isPreProcessSurfaceNodes)
{
myIsPreProcessSurfaceNodes = isPreProcessSurfaceNodes;
}
Standard_EXPORT static BRepMesh_DiscretFactory& Get();
//! Returns the list of registered meshing algorithms.
- inline const TColStd_MapOfAsciiString& Names() const
+ const TColStd_MapOfAsciiString& Names() const
{
return myNames;
}
}
//! Returns name for current meshing algorithm.
- inline const TCollection_AsciiString& DefaultName() const
+ const TCollection_AsciiString& DefaultName() const
{
return myDefaultName;
}
}
//! Returns function name that should be exported by plugin.
- inline const TCollection_AsciiString& FunctionName() const
+ const TCollection_AsciiString& FunctionName() const
{
return myFunctionName;
}
//! Returns error status for last meshing algorithm switch.
- inline BRepMesh_FactoryError ErrorStatus() const
+ BRepMesh_FactoryError ErrorStatus() const
{
return myErrorStatus;
}
Standard_EXPORT virtual ~BRepMesh_DiscretRoot();
//! Set the shape to triangulate.
- inline void SetShape(const TopoDS_Shape& theShape)
+ void SetShape(const TopoDS_Shape& theShape)
{
myShape = theShape;
}
- inline const TopoDS_Shape& Shape() const
+ const TopoDS_Shape& Shape() const
{
return myShape;
}
//! Returns true if triangualtion was performed and has success.
- inline Standard_Boolean IsDone() const
+ Standard_Boolean IsDone() const
{
return myIsDone;
}
Standard_EXPORT BRepMesh_DiscretRoot();
//! Sets IsDone flag.
- inline void setDone()
+ void setDone()
{
myIsDone = Standard_True;
}
//! Clears IsDone flag.
- inline void setNotDone()
+ void setNotDone()
{
myIsDone = Standard_False;
}
}
//! Returns movability flag of the Link.
- inline BRepMesh_DegreeOfFreedom Movability() const
+ BRepMesh_DegreeOfFreedom Movability() const
{
return myMovability;
}
//! Sets movability flag of the Link.
//! @param theMovability flag to be set.
- inline void SetMovability(const BRepMesh_DegreeOfFreedom theMovability)
+ void SetMovability(const BRepMesh_DegreeOfFreedom theMovability)
{
myMovability = theMovability;
}
//! Checks if the given edge and this one have the same orientation.
//! @param theOther edge to be checked against this one.
//! \retrun TRUE if edges have the same orientation, FALSE if not.
- inline Standard_Boolean IsSameOrientation(const BRepMesh_Edge& theOther) const
+ Standard_Boolean IsSameOrientation(const BRepMesh_Edge& theOther) const
{
return BRepMesh_OrientedEdge::IsEqual(theOther);
}
//! Checks for equality with another edge.
//! @param theOther edge to be checked against this one.
//! @return TRUE if equal, FALSE if not.
- inline Standard_Boolean IsEqual(const BRepMesh_Edge& theOther) const
+ Standard_Boolean IsEqual(const BRepMesh_Edge& theOther) const
{
if (myMovability == BRepMesh_Deleted || theOther.myMovability == BRepMesh_Deleted)
return Standard_False;
}
//! Alias for IsEqual.
- inline Standard_Boolean operator ==(const BRepMesh_Edge& Other) const
+ Standard_Boolean operator ==(const BRepMesh_Edge& Other) const
{
return IsEqual(Other);
}
#include <BRepMesh_CurveTessellator.hxx>
#include <OSD_Parallel.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_EdgeDiscret, IMeshTools_ModelAlgo)
+
//=======================================================================
// Function: Constructor
// Purpose :
const IMeshData::IFaceHandle& theDFace);
//! Functor API to discretize the given edge.
- inline void operator() (const Standard_Integer theEdgeIndex) const {
+ void operator() (const Standard_Integer theEdgeIndex) const {
process (theEdgeIndex);
}
const IMeshData::IEdgeHandle& theDEdge,
const Standard_Boolean theUpdateEnds);
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_EdgeDiscret, IMeshTools_ModelAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_EdgeDiscret, IMeshTools_ModelAlgo)
protected:
#include <IMeshData_Face.hxx>
#include <IMeshData_Edge.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_EdgeTessellationExtractor, IMeshTools_CurveTessellator)
+
//=======================================================================
//function : Constructor
//purpose :
gp_Pnt& thePoint,
Standard_Real& theParameter) const Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_EdgeTessellationExtractor, IMeshTools_CurveTessellator)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_EdgeTessellationExtractor, IMeshTools_CurveTessellator)
private:
#include <OSD_Parallel.hxx>
#include <BRepMesh_GeomTool.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_FaceChecker, Standard_Transient)
+
namespace
{
const Standard_Real MaxTangentAngle = 5. * M_PI / 180.;
}
//! Checks wire with the given index for intersection with others.
- inline void operator()(const Standard_Integer theWireIndex) const
+ void operator()(const Standard_Integer theWireIndex) const
{
perform(theWireIndex);
}
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_FaceChecker, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_FaceChecker, Standard_Transient)
private:
//! Returns True in case if check can be performed in parallel mode.
- inline Standard_Boolean isParallel() const
+ Standard_Boolean isParallel() const
{
return (myParameters.InParallel && myDFace->WiresNb() > 1);
}
#include <IMeshTools_MeshAlgo.hxx>
#include <OSD_Parallel.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_FaceDiscret, IMeshTools_ModelAlgo)
+
//=======================================================================
// Function: Constructor
// Purpose :
//! Destructor.
Standard_EXPORT virtual ~BRepMesh_FaceDiscret();
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_FaceDiscret, IMeshTools_ModelAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_FaceDiscret, IMeshTools_ModelAlgo)
protected:
//! @param theIsReplace if TRUE replaces existing point lying within
//! parameteric tolerance of the given point.
//! @return index of new added point or found with parametric tolerance
- inline Standard_Integer AddPoint(const gp_Pnt& thePoint,
- const Standard_Real theParam,
- const Standard_Boolean theIsReplace = Standard_True)
+ Standard_Integer AddPoint(const gp_Pnt& thePoint,
+ const Standard_Real theParam,
+ const Standard_Boolean theIsReplace = Standard_True)
{
return myDiscretTool.AddPoint(thePoint, theParam, theIsReplace);
}
//! Returns number of discretization points.
- inline Standard_Integer NbPoints() const
+ Standard_Integer NbPoints() const
{
return myDiscretTool.NbPoints();
}
#include <IMeshData_Wire.hxx>
#include <IMeshTools_MeshBuilder.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_IncrementalMesh, BRepMesh_DiscretRoot)
+
namespace
{
//! Default flag to control parallelization for BRepMesh_IncrementalMesh
public: //! @name accessing to parameters.
//! Returns meshing parameters
- inline const IMeshTools_Parameters& Parameters() const
+ const IMeshTools_Parameters& Parameters() const
{
return myParameters;
}
//! Returns modifiable meshing parameters
- inline IMeshTools_Parameters& ChangeParameters()
+ IMeshTools_Parameters& ChangeParameters()
{
return myParameters;
}
//! Returns modified flag.
- inline Standard_Boolean IsModified() const
+ Standard_Boolean IsModified() const
{
return myModified;
}
//! Returns accumulated status flags faced during meshing.
- inline Standard_Integer GetStatusFlags() const
+ Standard_Integer GetStatusFlags() const
{
return myStatus;
}
private:
//! Initializes specific parameters
- inline void initParameters()
+ void initParameters()
{
if (myParameters.DeflectionInterior < Precision::Confusion())
{
//! Discret() static method (thus applied only to Mesh Factories).
Standard_EXPORT static void SetParallelDefault(const Standard_Boolean isInParallel);
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_IncrementalMesh, BRepMesh_DiscretRoot)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_IncrementalMesh, BRepMesh_DiscretRoot)
protected:
#include <BRepMesh_DelaunayDeflectionControlMeshAlgo.hxx>
#include <BRepMesh_BoundaryParamsRangeSplitter.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_MeshAlgoFactory, IMeshTools_MeshAlgoFactory)
+
namespace
{
struct BaseMeshAlgo
const GeomAbs_SurfaceType theSurfaceType,
const IMeshTools_Parameters& theParameters) const Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_MeshAlgoFactory, IMeshTools_MeshAlgoFactory)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_MeshAlgoFactory, IMeshTools_MeshAlgoFactory)
};
#endif
\ No newline at end of file
#include <BRepTools.hxx>
#include <gp_Pln.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_MeshTool, Standard_Transient)
+
namespace
{
//! Returns index of triangle node opposite to the given link.
- inline Standard_Integer findApexIndex(
+ Standard_Integer findApexIndex(
const Standard_Integer(&aNodes)[3],
const BRepMesh_Edge& theLink)
{
mySign = myConstraint.Direction().X() > 0;
}
- inline Standard_Boolean IsAbove(const Standard_Integer theNodeIndex) const
+ Standard_Boolean IsAbove(const Standard_Integer theNodeIndex) const
{
const BRepMesh_Vertex& aVertex = myStructure->GetNode(theNodeIndex);
const gp_Vec2d aNodeVec(myConstraint.Location(), aVertex.Coord());
Standard_EXPORT virtual ~BRepMesh_MeshTool();
//! Returns data structure manipulated by this tool.
- inline const Handle(BRepMesh_DataStructureOfDelaun)& GetStructure() const
+ const Handle(BRepMesh_DataStructureOfDelaun)& GetStructure() const
{
return myStructure;
}
//! Adds new triangle with specified nodes to mesh.
//! Legalizes triangle in case if it violates circle criteria.
- inline void AddAndLegalizeTriangle(
+ void AddAndLegalizeTriangle(
const Standard_Integer thePoint1,
const Standard_Integer thePoint2,
const Standard_Integer thePoint3)
}
//! Adds new triangle with specified nodes to mesh.
- inline void AddTriangle(
+ void AddTriangle(
const Standard_Integer thePoint1,
const Standard_Integer thePoint2,
const Standard_Integer thePoint3,
//! Adds new link to mesh.
//! Updates link index and link orientaion parameters.
- inline void AddLink(const Standard_Integer theFirstNode,
- const Standard_Integer theLastNode,
- Standard_Integer& theLinkIndex,
- Standard_Boolean& theLinkOri)
+ void AddLink(const Standard_Integer theFirstNode,
+ const Standard_Integer theLastNode,
+ Standard_Integer& theLinkIndex,
+ Standard_Boolean& theLinkOri)
{
const Standard_Integer aLinkIt = myStructure->AddLink(
BRepMesh_Edge(theFirstNode, theLastNode, BRepMesh_Free));
//! Gives the list of edges with type defined by input parameter.
Standard_EXPORT Handle(IMeshData::MapOfInteger) GetEdgesByType(const BRepMesh_DegreeOfFreedom theEdgeType) const;
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_MeshTool, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_MeshTool, Standard_Transient)
private:
//! Returns True if the given point lies within circumcircle of the given triangle.
- inline Standard_Boolean checkCircle(
+ Standard_Boolean checkCircle(
const Standard_Integer(&aNodes)[3],
const Standard_Integer thePoint)
{
//! Adds new triangle with the given nodes and updates
//! links stack by ones are not in used map.
- inline void addTriangleAndUpdateStack(
+ void addTriangleAndUpdateStack(
const Standard_Integer theNode0,
const Standard_Integer theNode1,
const Standard_Integer theNode2,
#include <Bnd_Box.hxx>
#include <BRepBndLib.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_ModelBuilder, IMeshTools_ModelBuilder)
+
//=======================================================================
// Function: Constructor
// Purpose :
//! Destructor.
Standard_EXPORT virtual ~BRepMesh_ModelBuilder ();
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_ModelBuilder, IMeshTools_ModelBuilder)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_ModelBuilder, IMeshTools_ModelBuilder)
protected:
#include <TopoDS_Compound.hxx>
#endif
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_ModelHealer, IMeshTools_ModelAlgo)
+
namespace
{
//! Decreases deflection of the given edge and tries to update discretization.
};
//! Returns True if some of two vertcies is same with reference one.
- inline Standard_Boolean isSameWithSomeOf(
+ Standard_Boolean isSameWithSomeOf(
const TopoDS_Vertex& theRefVertex,
const TopoDS_Vertex& theVertex1,
const TopoDS_Vertex& theVertex2)
}
//! Returns True if some of two vertcies is within tolerance of reference one.
- inline Standard_Boolean isInToleranceWithSomeOf(
+ Standard_Boolean isInToleranceWithSomeOf(
const gp_Pnt& theRefPoint,
const gp_Pnt& thePoint1,
const gp_Pnt& thePoint2,
Standard_EXPORT virtual ~BRepMesh_ModelHealer();
//! Functor API to discretize the given edge.
- inline void operator() (const Standard_Integer theEdgeIndex) const {
+ void operator() (const Standard_Integer theEdgeIndex) const {
process(theEdgeIndex);
}
//! Functor API to discretize the given edge.
- inline void operator() (const IMeshData::IFaceHandle& theDFace) const {
+ void operator() (const IMeshData::IFaceHandle& theDFace) const {
process(theDFace);
}
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_ModelHealer, IMeshTools_ModelAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_ModelHealer, IMeshTools_ModelAlgo)
protected:
private:
//! Checks existing discretization of the face and updates data model.
- inline void process(const Standard_Integer theFaceIndex) const
+ void process(const Standard_Integer theFaceIndex) const
{
const IMeshData::IFaceHandle& aDFace = myModel->GetFace(theFaceIndex);
process(aDFace);
//! Chooses the most closest point to reference one from the given pair.
//! Returns square distance between reference point and closest one as
//! well as pointer to closest point.
- inline Standard_Real closestPoint(
+ Standard_Real closestPoint(
gp_Pnt2d& theRefPnt,
gp_Pnt2d& theFristPnt,
gp_Pnt2d& theSecondPnt,
//! Chooses the most closest points among the given to reference one from the given pair.
//! Returns square distance between reference point and closest one as
//! well as pointer to closest point.
- inline Standard_Real closestPoints(
+ Standard_Real closestPoints(
gp_Pnt2d& theFirstPnt1,
gp_Pnt2d& theSecondPnt1,
gp_Pnt2d& theFirstPnt2,
//! Adjusts the given pair of points supposed to be the same.
//! In addition, adjusts another end-point of an edge in order
//! to perform correct matching in case of gap.
- inline void adjustSamePoints(
+ void adjustSamePoints(
gp_Pnt2d*& theMajorSamePnt1,
gp_Pnt2d*& theMinorSamePnt1,
gp_Pnt2d*& theMajorSamePnt2,
void fixFaceBoundaries(const IMeshData::IFaceHandle& theDFace) const;
//! Returns True if check can be done in parallel.
- inline Standard_Boolean isParallel() const
+ Standard_Boolean isParallel() const
{
return (myParameters.InParallel && myModel->FacesNb() > 1);
}
#include <IMeshData_PCurve.hxx>
#include <OSD_Parallel.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_ModelPostProcessor, IMeshTools_ModelAlgo)
+
namespace
{
//! Commits 3D polygons and polygons on triangulations for corresponding edges.
//! Destructor.
Standard_EXPORT virtual ~BRepMesh_ModelPostProcessor();
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_ModelPostProcessor, IMeshTools_ModelAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_ModelPostProcessor, IMeshTools_ModelAlgo)
protected:
#include <OSD_Parallel.hxx>
#include <BRepMesh_ConeRangeSplitter.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_ModelPreProcessor, IMeshTools_ModelAlgo)
+
namespace
{
//! Checks consistency of triangulation stored in topological face.
//! Destructor.
Standard_EXPORT virtual ~BRepMesh_ModelPreProcessor();
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_ModelPreProcessor, IMeshTools_ModelAlgo)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_ModelPreProcessor, IMeshTools_ModelAlgo)
protected:
};
//! Adds param to map if it fits specified range.
- inline Standard_Boolean addParam(
+ Standard_Boolean addParam(
const Standard_Real& theParam,
const std::pair<Standard_Real, Standard_Real>& theRange,
IMeshData::IMapOfReal& theParams)
}
//! Initializes parameters map using CN intervals.
- inline Standard_Boolean initParamsFromIntervals(
+ Standard_Boolean initParamsFromIntervals(
const TColStd_Array1OfReal& theIntervals,
const std::pair<Standard_Real, Standard_Real>& theRange,
const Standard_Boolean isSplitIntervals,
}
//! Returns index of first node of the Link.
- inline Standard_Integer FirstNode() const
+ Standard_Integer FirstNode() const
{
return myFirstNode;
}
//! Returns index of last node of the Link.
- inline Standard_Integer LastNode() const
+ Standard_Integer LastNode() const
{
return myLastNode;
}
//! Computes a hash code for this oriented edge, in the range [1, theUpperBound]
//! @param theUpperBound the upper bound of the range a computing hash code must be within
//! @return a computed hash code, in the range [1, theUpperBound]
- inline Standard_Integer HashCode (const Standard_Integer theUpperBound) const
+ Standard_Integer HashCode (const Standard_Integer theUpperBound) const
{
return ::HashCode (myFirstNode + myLastNode, theUpperBound);
}
//! Checks this and other edge for equality.
//! @param theOther edge to be checked against this one.
//! @retrun TRUE if edges have the same orientation, FALSE if not.
- inline Standard_Boolean IsEqual(const BRepMesh_OrientedEdge& theOther) const
+ Standard_Boolean IsEqual(const BRepMesh_OrientedEdge& theOther) const
{
return (myFirstNode == theOther.myFirstNode && myLastNode == theOther.myLastNode);
}
//! Alias for IsEqual.
- inline Standard_Boolean operator ==(const BRepMesh_OrientedEdge& Other) const
+ Standard_Boolean operator ==(const BRepMesh_OrientedEdge& Other) const
{
return IsEqual(Other);
}
}
//! Appends index to the pair.
- inline void Append(const Standard_Integer theIndex)
+ void Append(const Standard_Integer theIndex)
{
if (myIndex[0] < 0)
myIndex[0] = theIndex;
}
//! Prepends index to the pair.
- inline void Prepend(const Standard_Integer theIndex)
+ void Prepend(const Standard_Integer theIndex)
{
if (myIndex[1] >= 0)
throw Standard_OutOfRange("BRepMesh_PairOfIndex::Prepend, more than two index to store");
}
//! Returns is pair is empty.
- inline Standard_Boolean IsEmpty() const
+ Standard_Boolean IsEmpty() const
{
// Check only first index. It is impossible to update
// second index if the first one is empty.
}
//! Returns number of initialized indeces.
- inline Standard_Integer Extent() const
+ Standard_Integer Extent() const
{
return (myIndex[0] < 0 ? 0 : (myIndex[1] < 0 ? 1 : 2));
}
//! Returns first index of pair.
- inline Standard_Integer FirstIndex() const
+ Standard_Integer FirstIndex() const
{
return myIndex[0];
}
//! Returns last index of pair
- inline Standard_Integer LastIndex() const
+ Standard_Integer LastIndex() const
{
return (myIndex[1] < 0 ? myIndex[0] : myIndex[1]);
}
//! Returns index corresponding to the given position in the pair.
//! @param thePairPos position of index in the pair (1 or 2).
- inline Standard_Integer Index(const Standard_Integer thePairPos) const
+ Standard_Integer Index(const Standard_Integer thePairPos) const
{
if (thePairPos != 1 && thePairPos != 2)
throw Standard_OutOfRange("BRepMesh_PairOfIndex::Index, requested index is out of range");
//! Sets index corresponding to the given position in the pair.
//! @param thePairPos position of index in the pair (1 or 2).
//! @param theIndex index to be stored.
- inline void SetIndex(const Standard_Integer thePairPos,
- const Standard_Integer theIndex)
+ void SetIndex(const Standard_Integer thePairPos,
+ const Standard_Integer theIndex)
{
if (thePairPos != 1 && thePairPos != 2)
throw Standard_OutOfRange("BRepMesh_PairOfIndex::SetIndex, requested index is out of range");
//! Remove index from the given position.
//! @param thePairPos position of index in the pair (1 or 2).
- inline void RemoveIndex(const Standard_Integer thePairPos)
+ void RemoveIndex(const Standard_Integer thePairPos)
{
if (thePairPos != 1 && thePairPos != 2)
throw Standard_OutOfRange("BRepMesh_PairOfIndex::RemoveIndex, requested index is out of range");
#include <BRepMesh_PairOfIndex.hxx>
#include <BRepMesh_Edge.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_SelectorOfDataStructureOfDelaun, Standard_Transient)
+
//=======================================================================
//function : Default constructor
//purpose :
Standard_EXPORT void NeighboursByEdgeOf(const BRepMesh_Triangle& theElement);
//! Adds a level of neighbours by edge to the selector.
- inline void NeighboursOf(const BRepMesh_SelectorOfDataStructureOfDelaun& /*theSelector*/)
+ void NeighboursOf(const BRepMesh_SelectorOfDataStructureOfDelaun& /*theSelector*/)
{
}
//! Adds a level of neighbours by edge the selector.
- inline void AddNeighbours()
+ void AddNeighbours()
{
}
//! Returns selected nodes.
- inline const IMeshData::MapOfInteger& Nodes() const
+ const IMeshData::MapOfInteger& Nodes() const
{
return myNodes;
}
//! Returns selected links.
- inline const IMeshData::MapOfInteger& Links() const
+ const IMeshData::MapOfInteger& Links() const
{
return myLinks;
}
//! Returns selected elements.
- inline const IMeshData::MapOfInteger& Elements() const
+ const IMeshData::MapOfInteger& Elements() const
{
return myElements;
}
//! Gives the list of incices of frontier links.
- inline const IMeshData::MapOfInteger& FrontierLinks() const
+ const IMeshData::MapOfInteger& FrontierLinks() const
{
return myFrontier;
}
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_SelectorOfDataStructureOfDelaun, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_SelectorOfDataStructureOfDelaun, Standard_Transient)
private:
#include <Precision.hxx>
#include <Bnd_Box.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_ShapeTool, Standard_Transient)
+
namespace
{
//! Auxilary struct to take a tolerance of edge.
Standard_Real& theLastParam,
const Standard_Boolean isConsiderOrientation = Standard_False);
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_ShapeTool, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_ShapeTool, Standard_Transient)
};
#endif
\ No newline at end of file
#include <IMeshTools_Context.hxx>
#include <BRepTools.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_ShapeVisitor, IMeshTools_ShapeVisitor)
+
//=======================================================================
// Function: Constructor
// Purpose :
//! Handles TopoDS_Edge object.
Standard_EXPORT virtual void Visit (const TopoDS_Edge& theEdge) Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_ShapeVisitor, IMeshTools_ShapeVisitor)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_ShapeVisitor, IMeshTools_ShapeVisitor)
private:
private:
//! Computes step for the given range.
- inline void computeStep(
+ void computeStep(
const std::pair<Standard_Real, Standard_Real>& theRange,
const Standard_Real theDefaultStep,
std::pair<Standard_Real, Standard_Real>& theStepAndOffset) const
//! @param theEdges array of edges of triangle.
//! @param theOrientations array of edge's orientations.
//! @param theMovability movability of triangle.
- inline void Initialize(
+ void Initialize(
const Standard_Integer (&theEdges)[3],
const Standard_Boolean (&theOrientations)[3],
const BRepMesh_DegreeOfFreedom theMovability)
//! Gets edges with orientations composing the triangle.
//! @param[out] theEdges array edges are stored to.
//! @param[out] theOrientations array orientations are stored to.
- inline void Edges(Standard_Integer (&theEdges)[3],
- Standard_Boolean (&theOrientations)[3]) const
+ void Edges(Standard_Integer (&theEdges)[3],
+ Standard_Boolean (&theOrientations)[3]) const
{
memcpy(theEdges, myEdges, sizeof(myEdges));
memcpy(theOrientations, myOrientations, sizeof(myOrientations));
}
//! Returns movability of the triangle.
- inline BRepMesh_DegreeOfFreedom Movability() const
+ BRepMesh_DegreeOfFreedom Movability() const
{
return myMovability;
}
//! Sets movability of the triangle.
- inline void SetMovability(const BRepMesh_DegreeOfFreedom theMovability)
+ void SetMovability(const BRepMesh_DegreeOfFreedom theMovability)
{
myMovability = theMovability;
}
//! Computes a hash code for this triangle, in the range [1, theUpperBound]
//! @param theUpperBound the upper bound of the range a computing hash code must be within
//! @return a computed hash code, in the range [1, theUpperBound]
- inline Standard_Integer HashCode (const Standard_Integer theUpperBound) const
+ Standard_Integer HashCode (const Standard_Integer theUpperBound) const
{
return ::HashCode (myEdges[0] + myEdges[1] + myEdges[2], theUpperBound);
}
//! Checks for equality with another triangle.
//! @param theOther triangle to be checked against this one.
//! @return TRUE if equal, FALSE if not.
- inline Standard_Boolean IsEqual(const BRepMesh_Triangle& theOther) const
+ Standard_Boolean IsEqual(const BRepMesh_Triangle& theOther) const
{
if (myMovability == BRepMesh_Deleted || theOther.myMovability == BRepMesh_Deleted)
return Standard_False;
}
//! Alias for IsEqual.
- inline Standard_Boolean operator ==(const BRepMesh_Triangle& theOther) const
+ Standard_Boolean operator ==(const BRepMesh_Triangle& theOther) const
{
return IsEqual(theOther);
}
public:
//! Returns U parameters.
- inline const IMeshData::IMapOfReal& GetParametersU() const
+ const IMeshData::IMapOfReal& GetParametersU() const
{
return myUParams;
}
//! Returns U parameters.
- inline IMeshData::IMapOfReal& GetParametersU()
+ IMeshData::IMapOfReal& GetParametersU()
{
return myUParams;
}
//! Returns V parameters.
- inline const IMeshData::IMapOfReal& GetParametersV() const
+ const IMeshData::IMapOfReal& GetParametersV() const
{
return myVParams;
}
//! Returns V parameters.
- inline IMeshData::IMapOfReal& GetParametersV()
+ IMeshData::IMapOfReal& GetParametersV()
{
return myVParams;
}
//! @param theUV position of vertex in parametric space.
//! @param theLocation3d index of 3d point to be associated with vertex.
//! @param theMovability movability of the vertex.
- inline void Initialize(const gp_XY& theUV,
- const Standard_Integer theLocation3d,
- const BRepMesh_DegreeOfFreedom theMovability)
+ void Initialize(const gp_XY& theUV,
+ const Standard_Integer theLocation3d,
+ const BRepMesh_DegreeOfFreedom theMovability)
{
myUV = theUV;
myLocation3d = theLocation3d;
}
//! Returns position of the vertex in parametric space.
- inline const gp_XY& Coord() const
+ const gp_XY& Coord() const
{
return myUV;
}
//! Returns position of the vertex in parametric space for modification.
- inline gp_XY& ChangeCoord()
+ gp_XY& ChangeCoord()
{
return myUV;
}
//! Returns index of 3d point associated with the vertex.
- inline Standard_Integer Location3d() const
+ Standard_Integer Location3d() const
{
return myLocation3d;
}
//! Returns movability of the vertex.
- inline BRepMesh_DegreeOfFreedom Movability() const
+ BRepMesh_DegreeOfFreedom Movability() const
{
return myMovability;
}
//! Sets movability of the vertex.
- inline void SetMovability(const BRepMesh_DegreeOfFreedom theMovability)
+ void SetMovability(const BRepMesh_DegreeOfFreedom theMovability)
{
myMovability = theMovability;
}
//! Computes a hash code for this vertex, in the range [1, theUpperBound]
//! @param theUpperBound the upper bound of the range a computing hash code must be within
//! @return a computed hash code, in the range [1, theUpperBound]
- inline Standard_Integer HashCode(const Standard_Integer theUpperBound) const
+ Standard_Integer HashCode(const Standard_Integer theUpperBound) const
{
return ::HashCode(Floor(1e5 * myUV.X()) * Floor(1e5 * myUV.Y()), theUpperBound);
}
//! Checks for equality with another vertex.
//! @param theOther vertex to be checked against this one.
//! @return TRUE if equal, FALSE if not.
- inline Standard_Boolean IsEqual(const BRepMesh_Vertex& theOther) const
+ Standard_Boolean IsEqual(const BRepMesh_Vertex& theOther) const
{
if (myMovability == BRepMesh_Deleted ||
theOther.myMovability == BRepMesh_Deleted)
}
//! Alias for IsEqual.
- inline Standard_Boolean operator ==(const BRepMesh_Vertex& Other) const
+ Standard_Boolean operator ==(const BRepMesh_Vertex& Other) const
{
return IsEqual(Other);
}
//! Sets the tolerance to be used for identification of
//! coincident vertices equal for both dimensions.
- inline void SetTolerance(const Standard_Real theTolerance)
+ void SetTolerance(const Standard_Real theTolerance)
{
myTolerance[0] = theTolerance * theTolerance;
myTolerance[1] = 0.;
//! coincident vertices.
//! @param theToleranceX tolerance for X dimension.
//! @param theToleranceY tolerance for Y dimension.
- inline void SetTolerance(const Standard_Real theToleranceX,
- const Standard_Real theToleranceY)
+ void SetTolerance(const Standard_Real theToleranceX,
+ const Standard_Real theToleranceY)
{
myTolerance[0] = theToleranceX * theToleranceX;
myTolerance[1] = theToleranceY * theToleranceY;
}
//! Clear inspector's internal data structures.
- inline void Clear()
+ void Clear()
{
myVertices->Clear();
myDelNodes.Clear();
//! Deletes vertex with the given index.
//! @param theIndex index of vertex to be removed.
- inline void Delete(const Standard_Integer theIndex)
+ void Delete(const Standard_Integer theIndex)
{
myVertices->ChangeValue(theIndex - 1).SetMovability(BRepMesh_Deleted);
myDelNodes.Append(theIndex);
}
//! Returns number of registered vertices.
- inline Standard_Integer NbVertices() const
+ Standard_Integer NbVertices() const
{
return myVertices->Length();
}
//! Returns vertex with the given index.
- inline BRepMesh_Vertex& GetVertex(Standard_Integer theIndex)
+ BRepMesh_Vertex& GetVertex(Standard_Integer theIndex)
{
return myVertices->ChangeValue(theIndex - 1);
}
//! Set reference point to be checked.
- inline void SetPoint(const gp_XY& thePoint)
+ void SetPoint(const gp_XY& thePoint)
{
myIndex = 0;
myMinSqDist = RealLast();
}
//! Returns index of point coinciding with regerence one.
- inline Standard_Integer GetCoincidentPoint() const
+ Standard_Integer GetCoincidentPoint() const
{
return myIndex;
}
//! Returns list with indexes of vertices that have movability attribute
//! equal to BRepMesh_Deleted and can be replaced with another node.
- inline const IMeshData::ListOfInteger& GetListOfDelPoints() const
+ const IMeshData::ListOfInteger& GetListOfDelPoints() const
{
return myDelNodes;
}
//! Returns set of mesh vertices.
- inline const Handle(IMeshData::VectorOfVertex)& Vertices() const
+ const Handle(IMeshData::VectorOfVertex)& Vertices() const
{
return myVertices;
}
//! Returns set of mesh vertices for modification.
- inline Handle(IMeshData::VectorOfVertex)& ChangeVertices()
+ Handle(IMeshData::VectorOfVertex)& ChangeVertices()
{
return myVertices;
}
#include <BRepMesh_VertexTool.hxx>
#include <Precision.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMesh_VertexTool, Standard_Transient)
+
//=======================================================================
//function : Inspect
//purpose :
Standard_EXPORT void DeleteVertex(const Standard_Integer theIndex);
//! Returns set of mesh vertices.
- inline const Handle(IMeshData::VectorOfVertex)& Vertices() const
+ const Handle(IMeshData::VectorOfVertex)& Vertices() const
{
return mySelector.Vertices();
}
//! Returns set of mesh vertices.
- inline Handle(IMeshData::VectorOfVertex)& ChangeVertices()
+ Handle(IMeshData::VectorOfVertex)& ChangeVertices()
{
return mySelector.ChangeVertices();
}
//! Returns vertex by the given index.
- inline const BRepMesh_Vertex& FindKey(const Standard_Integer theIndex)
+ const BRepMesh_Vertex& FindKey(const Standard_Integer theIndex)
{
return mySelector.GetVertex(theIndex);
}
}
//! Returns a number of vertices.
- inline Standard_Integer Extent() const
+ Standard_Integer Extent() const
{
return mySelector.NbVertices();
}
//! Returns True when the map contains no keys. <br>
- inline Standard_Boolean IsEmpty() const
+ Standard_Boolean IsEmpty() const
{
return (Extent() == 0);
}
const BRepMesh_Vertex& theVertex);
//! Remove last node from the structure.
- inline void RemoveLast()
+ void RemoveLast()
{
DeleteVertex(Extent());
}
//! Returns the list with indexes of vertices that have movability attribute
//! equal to BRepMesh_Deleted and can be replaced with another node.
- inline const IMeshData::ListOfInteger& GetListOfDelNodes() const
+ const IMeshData::ListOfInteger& GetListOfDelNodes() const
{
return mySelector.GetListOfDelPoints();
}
//! Prints statistics.
Standard_EXPORT void Statistics(Standard_OStream& theStream) const;
- DEFINE_STANDARD_RTTI_INLINE(BRepMesh_VertexTool, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(BRepMesh_VertexTool, Standard_Transient)
private:
//! @param thePoint point to be expanded.
//! @param[out] theMinPoint bottom left corner of area defined by expanded point.
//! @param[out] theMaxPoint top right corner of area defined by expanded point.
- inline void expandPoint(const gp_XY& thePoint,
- gp_XY& theMinPoint,
- gp_XY& theMaxPoint)
+ void expandPoint(const gp_XY& thePoint,
+ gp_XY& theMinPoint,
+ gp_XY& theMaxPoint)
{
theMinPoint.SetX(thePoint.X() - myTolerance[0]);
theMinPoint.SetY(thePoint.Y() - myTolerance[1]);
BRepMesh_BaseMeshAlgo.cxx
BRepMesh_BaseMeshAlgo.hxx
BRepMesh_ConstrainedBaseMeshAlgo.hxx
+BRepMesh_ConstrainedBaseMeshAlgo.cxx
BRepMesh_BoundaryParamsRangeSplitter.hxx
BRepMesh_Circle.hxx
BRepMesh_CircleInspector.hxx
BRepMesh_VertexTool.cxx
BRepMesh_VertexTool.hxx
BRepMesh_CustomBaseMeshAlgo.hxx
+BRepMesh_CustomBaseMeshAlgo.cxx
BRepMesh_CustomDelaunayBaseMeshAlgo.hxx
delabella.pxx
delabella.cpp
#include <BRepMesh_OrientedEdge.hxx>
#include <BRepMesh_Vertex.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMeshData_Curve, IMeshData_Curve)
+
//=======================================================================
// Function: Constructor
// Purpose :
//! Clears parameters list.
Standard_EXPORT virtual void Clear(const Standard_Boolean isKeepEndPoints) Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMeshData_Curve, IMeshData_Curve)
+ DEFINE_STANDARD_RTTIEXT(BRepMeshData_Curve, IMeshData_Curve)
protected:
#include <BRepMesh_OrientedEdge.hxx>
#include <BRepMesh_Vertex.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMeshData_Edge, IMeshData_Edge)
+
//=======================================================================
// Function: Constructor
// Purpose :
Standard_EXPORT virtual const IMeshData::IPCurveHandle& GetPCurve (
const Standard_Integer theIndex) const Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMeshData_Edge, IMeshData_Edge)
+ DEFINE_STANDARD_RTTIEXT(BRepMeshData_Edge, IMeshData_Edge)
private:
#include <BRepMesh_OrientedEdge.hxx>
#include <BRepMesh_Vertex.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMeshData_Face, IMeshData_Face)
+
//=======================================================================
// Function: Constructor
// Purpose :
const TopoDS_Wire& theWire,
const Standard_Integer theEdgeNb = 0) Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMeshData_Face, IMeshData_Face)
+ DEFINE_STANDARD_RTTIEXT(BRepMeshData_Face, IMeshData_Face)
private:
#include <BRepMesh_Vertex.hxx>
#include <NCollection_IncAllocator.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMeshData_Model, IMeshData_Model)
+
//=======================================================================
// Function: Constructor
// Purpose :
Standard_EXPORT virtual ~BRepMeshData_Model ();
//! Returns maximum size of shape's bounding box.
- Standard_EXPORT virtual Standard_Real GetMaxSize () const Standard_OVERRIDE
+ virtual Standard_Real GetMaxSize () const Standard_OVERRIDE
{
return myMaxSize;
}
//! Sets maximum size of shape's bounding box.
- inline void SetMaxSize (const Standard_Real theValue)
+ void SetMaxSize (const Standard_Real theValue)
{
myMaxSize = theValue;
}
- DEFINE_STANDARD_RTTI_INLINE(BRepMeshData_Model, IMeshData_Model)
+ DEFINE_STANDARD_RTTIEXT(BRepMeshData_Model, IMeshData_Model)
public: //! @name discrete faces
#include <BRepMesh_Vertex.hxx>
#include <Standard_OutOfRange.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMeshData_PCurve, IMeshData_PCurve)
+
//=======================================================================
// Function: Constructor
// Purpose :
//! Clears parameters list.
Standard_EXPORT virtual void Clear(const Standard_Boolean isKeepEndPoints) Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMeshData_PCurve, IMeshData_PCurve)
+ DEFINE_STANDARD_RTTIEXT(BRepMeshData_PCurve, IMeshData_PCurve)
protected:
#include <BRepMesh_OrientedEdge.hxx>
#include <BRepMesh_Vertex.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(BRepMeshData_Wire, IMeshData_Wire)
+
//=======================================================================
// Function: Constructor
// Purpose :
Standard_EXPORT virtual TopAbs_Orientation GetEdgeOrientation (
const Standard_Integer theIndex) const Standard_OVERRIDE;
- DEFINE_STANDARD_RTTI_INLINE(BRepMeshData_Wire, IMeshData_Wire)
+ DEFINE_STANDARD_RTTIEXT(BRepMeshData_Wire, IMeshData_Wire)
private:
IMeshData_Curve.hxx
+IMeshData_Curve.cxx
IMeshData_Edge.hxx
+IMeshData_Edge.cxx
IMeshData_Face.hxx
+IMeshData_Face.cxx
IMeshData_Model.hxx
+IMeshData_Model.cxx
IMeshData_ParametersList.hxx
+IMeshData_ParametersList.cxx
IMeshData_ParametersListArrayAdaptor.hxx
IMeshData_PCurve.hxx
+IMeshData_PCurve.cxx
IMeshData_Shape.hxx
+IMeshData_Shape.cxx
IMeshData_Status.hxx
IMeshData_StatusOwner.hxx
IMeshData_TessellatedShape.hxx
+IMeshData_TessellatedShape.cxx
IMeshData_Types.hxx
IMeshData_Wire.hxx
+IMeshData_Wire.cxx
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_Curve.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_Curve, IMeshData_ParametersList)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_Curve()
+ virtual ~IMeshData_Curve()
{
}
//! Removes point with the given index.
Standard_EXPORT virtual void RemovePoint (const Standard_Integer theIndex) = 0;
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_Curve, IMeshData_ParametersList)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_Curve, IMeshData_ParametersList)
protected:
//! Constructor.
- Standard_EXPORT IMeshData_Curve()
+ IMeshData_Curve()
{
}
};
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_Edge.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_Edge, IMeshData_TessellatedShape)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_Edge()
+ virtual ~IMeshData_Edge()
{
}
//! Returns TopoDS_Edge attached to model.
- inline const TopoDS_Edge& GetEdge () const
+ const TopoDS_Edge& GetEdge () const
{
return TopoDS::Edge (GetShape ());
}
const Standard_Integer theIndex) const = 0;
//! Clears curve and all pcurves assigned to the edge from discretization.
- inline void Clear(const Standard_Boolean isKeepEndPoints)
+ void Clear(const Standard_Boolean isKeepEndPoints)
{
myCurve->Clear(isKeepEndPoints);
for (Standard_Integer aPCurveIt = 0; aPCurveIt < PCurvesNb(); ++aPCurveIt)
}
//! Returns true in case if the edge is free one, i.e. it does not have pcurves.
- inline Standard_Boolean IsFree () const
+ Standard_Boolean IsFree () const
{
return (PCurvesNb () == 0);
}
//! Sets 3d curve associated with current edge.
- inline void SetCurve (const IMeshData::ICurveHandle& theCurve)
+ void SetCurve (const IMeshData::ICurveHandle& theCurve)
{
myCurve = theCurve;
}
//! Returns 3d curve associated with current edge.
- inline const IMeshData::ICurveHandle& GetCurve () const
+ const IMeshData::ICurveHandle& GetCurve () const
{
return myCurve;
}
//! Gets value of angular deflection for the discrete model.
- inline Standard_Real GetAngularDeflection () const
+ Standard_Real GetAngularDeflection () const
{
return myAngDeflection;
}
//! Sets value of angular deflection for the discrete model.
- inline void SetAngularDeflection (const Standard_Real theValue)
+ void SetAngularDeflection (const Standard_Real theValue)
{
myAngDeflection = theValue;
}
//! Returns same param flag.
//! By default equals to flag stored in topological shape.
- inline Standard_Boolean GetSameParam () const
+ Standard_Boolean GetSameParam () const
{
return mySameParam;
}
//! Updates same param flag.
- inline void SetSameParam (const Standard_Boolean theValue)
+ void SetSameParam (const Standard_Boolean theValue)
{
mySameParam = theValue;
}
//! Returns same range flag.
//! By default equals to flag stored in topological shape.
- inline Standard_Boolean GetSameRange () const
+ Standard_Boolean GetSameRange () const
{
return mySameRange;
}
//! Updates same range flag.
- inline void SetSameRange (const Standard_Boolean theValue)
+ void SetSameRange (const Standard_Boolean theValue)
{
mySameRange = theValue;
}
//! Returns degenerative flag.
//! By default equals to flag stored in topological shape.
- inline Standard_Boolean GetDegenerated () const
+ Standard_Boolean GetDegenerated () const
{
return myDegenerated;
}
//! Updates degenerative flag.
- inline void SetDegenerated (const Standard_Boolean theValue)
+ void SetDegenerated (const Standard_Boolean theValue)
{
myDegenerated = theValue;
}
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_Edge, IMeshData_TessellatedShape)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_Edge, IMeshData_TessellatedShape)
protected:
//! Constructor.
//! Initializes empty model.
- Standard_EXPORT IMeshData_Edge (const TopoDS_Edge& theEdge)
+ IMeshData_Edge (const TopoDS_Edge& theEdge)
: IMeshData_TessellatedShape(theEdge),
mySameParam (BRep_Tool::SameParameter(theEdge)),
mySameRange (BRep_Tool::SameRange (theEdge)),
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_Face.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_Face, IMeshData_TessellatedShape)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_Face()
+ virtual ~IMeshData_Face()
{
}
const Standard_Integer theIndex) const = 0;
//! Returns face's surface.
- inline const Handle(BRepAdaptor_HSurface)& GetSurface() const
+ const Handle(BRepAdaptor_HSurface)& GetSurface() const
{
return mySurface;
}
//! Returns TopoDS_Face attached to model.
- inline const TopoDS_Face& GetFace () const
+ const TopoDS_Face& GetFace () const
{
return TopoDS::Face (GetShape ());
}
//! Returns whether the face discrete model is valid.
- inline Standard_Boolean IsValid () const
+ Standard_Boolean IsValid () const
{
return (IsEqual(IMeshData_NoError) ||
IsEqual(IMeshData_ReMesh) ||
IsEqual(IMeshData_UnorientedWire));
}
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_Face, IMeshData_TessellatedShape)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_Face, IMeshData_TessellatedShape)
protected:
//! Constructor.
//! Initializes empty model.
- Standard_EXPORT IMeshData_Face (const TopoDS_Face& theFace)
+ IMeshData_Face (const TopoDS_Face& theFace)
: IMeshData_TessellatedShape(theFace)
{
BRepAdaptor_Surface aSurfAdaptor(GetFace(), Standard_False);
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_Model.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_Model, IMeshData_Shape)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_Model()
+ virtual ~IMeshData_Model()
{
}
//! Returns maximum size of shape model.
Standard_EXPORT virtual Standard_Real GetMaxSize () const = 0;
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_Model, IMeshData_Shape)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_Model, IMeshData_Shape)
public: //! @name discrete faces
//! Constructor.
//! Initializes empty model.
- Standard_EXPORT IMeshData_Model (const TopoDS_Shape& theShape)
+ IMeshData_Model (const TopoDS_Shape& theShape)
: IMeshData_Shape(theShape)
{
}
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_PCurve.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_PCurve, IMeshData_ParametersList)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_PCurve()
+ virtual ~IMeshData_PCurve()
{
}
Standard_EXPORT virtual void RemovePoint (const Standard_Integer theIndex) = 0;
//! Returns forward flag of this pcurve.
- inline Standard_Boolean IsForward () const
+ Standard_Boolean IsForward () const
{
return (myOrientation != TopAbs_REVERSED);
}
//! Returns internal flag of this pcurve.
- inline Standard_Boolean IsInternal() const
+ Standard_Boolean IsInternal() const
{
return (myOrientation == TopAbs_INTERNAL);
}
//! Returns orientation of the edge associated with current pcurve.
- inline TopAbs_Orientation GetOrientation() const
+ TopAbs_Orientation GetOrientation() const
{
return myOrientation;
}
//! Returns discrete face pcurve is associated to.
- inline const IMeshData::IFacePtr& GetFace () const
+ const IMeshData::IFacePtr& GetFace () const
{
return myDFace;
}
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_PCurve, IMeshData_ParametersList)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_PCurve, IMeshData_ParametersList)
protected:
//! Constructor.
- Standard_EXPORT IMeshData_PCurve (
+ IMeshData_PCurve (
const IMeshData::IFacePtr& theDFace,
const TopAbs_Orientation theOrientation)
: myDFace(theDFace),
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_ParametersList.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_ParametersList, Standard_Transient)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_ParametersList()
+ virtual ~IMeshData_ParametersList()
{
}
//! Clears parameters list.
Standard_EXPORT virtual void Clear(const Standard_Boolean isKeepEndPoints) = 0;
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_ParametersList, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_ParametersList, Standard_Transient)
protected:
//! Constructor.
- Standard_EXPORT IMeshData_ParametersList()
+ IMeshData_ParametersList()
{
}
public:
//! Constructor. Initializes tool by the given parameters.
- Standard_EXPORT IMeshData_ParametersListArrayAdaptor(
+ IMeshData_ParametersListArrayAdaptor(
const ParametersListPtrType& theParameters)
: myParameters (theParameters)
{
}
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_ParametersListArrayAdaptor()
+ virtual ~IMeshData_ParametersListArrayAdaptor()
{
}
//! Returns lower index in parameters array.
- Standard_EXPORT Standard_Integer Lower() const
+ Standard_Integer Lower() const
{
return 0;
}
//! Returns upper index in parameters array.
- Standard_EXPORT Standard_Integer Upper() const
+ Standard_Integer Upper() const
{
return myParameters->ParametersNb() - 1;
}
//! Returns value of the given index.
- Standard_EXPORT Standard_Real Value(const Standard_Integer theIndex) const
+ Standard_Real Value(const Standard_Integer theIndex) const
{
return myParameters->GetParameter(theIndex);
}
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_Shape.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_Shape, Standard_Transient)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_Shape()
+ virtual ~IMeshData_Shape()
{
}
//! Assigns shape to discrete shape.
- inline void SetShape (const TopoDS_Shape& theShape)
+ void SetShape (const TopoDS_Shape& theShape)
{
myShape = theShape;
}
return myShape;
}
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_Shape, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_Shape, Standard_Transient)
protected:
//! Constructor.
- Standard_EXPORT IMeshData_Shape()
+ IMeshData_Shape()
{
}
//! Constructor.
- Standard_EXPORT IMeshData_Shape (const TopoDS_Shape& theShape)
+ IMeshData_Shape (const TopoDS_Shape& theShape)
: myShape(theShape)
{
}
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_StatusOwner()
+ virtual ~IMeshData_StatusOwner()
{
}
//! Returns true in case if status is strictly equal to the given value.
- inline Standard_Boolean IsEqual(const IMeshData_Status theValue) const
+ Standard_Boolean IsEqual(const IMeshData_Status theValue) const
{
return (myStatus == theValue);
}
//! Returns true in case if status is set.
- inline Standard_Boolean IsSet(const IMeshData_Status theValue) const
+ Standard_Boolean IsSet(const IMeshData_Status theValue) const
{
return (myStatus & theValue) != 0;
}
//! Adds status to status flags of a face.
- inline void SetStatus(const IMeshData_Status theValue)
+ void SetStatus(const IMeshData_Status theValue)
{
myStatus |= theValue;
}
//! Adds status to status flags of a face.
- inline void UnsetStatus(const IMeshData_Status theValue)
+ void UnsetStatus(const IMeshData_Status theValue)
{
myStatus &= ~theValue;
}
//! Returns complete status mask.
- inline Standard_Integer GetStatusMask() const
+ Standard_Integer GetStatusMask() const
{
return myStatus;
}
protected:
//! Constructor. Initializes default status.
- Standard_EXPORT IMeshData_StatusOwner()
+ IMeshData_StatusOwner()
: myStatus(IMeshData_NoError)
{
}
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_TessellatedShape.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_TessellatedShape, IMeshData_Shape)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_TessellatedShape()
+ virtual ~IMeshData_TessellatedShape()
{
}
//! Gets deflection value for the discrete model.
- inline Standard_Real GetDeflection () const
+ Standard_Real GetDeflection () const
{
return myDeflection;
}
//! Sets deflection value for the discrete model.
- inline void SetDeflection (const Standard_Real theValue)
+ void SetDeflection (const Standard_Real theValue)
{
myDeflection = theValue;
}
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_TessellatedShape, IMeshData_Shape)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_TessellatedShape, IMeshData_Shape)
protected:
//! Constructor.
- Standard_EXPORT IMeshData_TessellatedShape ()
+ IMeshData_TessellatedShape ()
: myDeflection(RealLast())
{
}
//! Constructor.
- Standard_EXPORT IMeshData_TessellatedShape (const TopoDS_Shape& theShape)
+ IMeshData_TessellatedShape (const TopoDS_Shape& theShape)
: IMeshData_Shape(theShape),
myDeflection(RealLast())
{
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshData_Wire.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshData_Wire, IMeshData_TessellatedShape)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshData_Wire()
+ virtual ~IMeshData_Wire()
{
}
//! Returns TopoDS_Face attached to model.
- inline const TopoDS_Wire& GetWire () const
+ const TopoDS_Wire& GetWire () const
{
return TopoDS::Wire (GetShape ());
}
Standard_EXPORT virtual TopAbs_Orientation GetEdgeOrientation (
const Standard_Integer theIndex) const = 0;
- DEFINE_STANDARD_RTTI_INLINE(IMeshData_Wire, IMeshData_TessellatedShape)
+ DEFINE_STANDARD_RTTIEXT(IMeshData_Wire, IMeshData_TessellatedShape)
protected:
//! Constructor.
//! Initializes empty model.
- Standard_EXPORT IMeshData_Wire(const TopoDS_Wire& theWire)
+ IMeshData_Wire(const TopoDS_Wire& theWire)
: IMeshData_TessellatedShape(theWire)
{
}
IMeshTools_Context.hxx
+IMeshTools_Context.cxx
IMeshTools_CurveTessellator.hxx
+IMeshTools_CurveTessellator.cxx
IMeshTools_MeshAlgo.hxx
+IMeshTools_MeshAlgo.cxx
IMeshTools_MeshAlgoFactory.hxx
+IMeshTools_MeshAlgoFactory.cxx
IMeshTools_MeshAlgoType.hxx
IMeshTools_MeshBuilder.hxx
IMeshTools_MeshBuilder.cxx
IMeshTools_ModelAlgo.hxx
+IMeshTools_ModelAlgo.cxx
IMeshTools_ModelBuilder.hxx
+IMeshTools_ModelBuilder.cxx
IMeshTools_Parameters.hxx
IMeshTools_ShapeExplorer.hxx
IMeshTools_ShapeExplorer.cxx
IMeshTools_ShapeVisitor.hxx
+IMeshTools_ShapeVisitor.cxx
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshTools_Context.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_Context, IMeshData_Shape)
\ No newline at end of file
public:
//! Constructor.
- Standard_EXPORT IMeshTools_Context()
+ IMeshTools_Context()
{
}
//! Destructor.
- Standard_EXPORT virtual ~IMeshTools_Context()
+ virtual ~IMeshTools_Context()
{
}
//! Builds model using assined model builder.
//! @return True on success, False elsewhere.
- Standard_EXPORT virtual Standard_Boolean BuildModel ()
+ virtual Standard_Boolean BuildModel ()
{
if (myModelBuilder.IsNull())
{
//! Performs discretization of model edges using assigned edge discret algorithm.
//! @return True on success, False elsewhere.
- Standard_EXPORT virtual Standard_Boolean DiscretizeEdges()
+ virtual Standard_Boolean DiscretizeEdges()
{
if (myModel.IsNull() || myEdgeDiscret.IsNull())
{
//! Performs healing of discrete model built by DiscretizeEdges() method
//! using assigned healing algorithm.
//! @return True on success, False elsewhere.
- Standard_EXPORT virtual Standard_Boolean HealModel()
+ virtual Standard_Boolean HealModel()
{
if (myModel.IsNull())
{
//! Performs pre-processing of discrete model using assigned algorithm.
//! Performs auxiliary actions such as cleaning shape from old triangulation.
//! @return True on success, False elsewhere.
- Standard_EXPORT virtual Standard_Boolean PreProcessModel()
+ virtual Standard_Boolean PreProcessModel()
{
if (myModel.IsNull())
{
//! Performs post-processing of discrete model using assigned algorithm.
//! @return True on success, False elsewhere.
- Standard_EXPORT virtual Standard_Boolean PostProcessModel()
+ virtual Standard_Boolean PostProcessModel()
{
if (myModel.IsNull())
{
}
//! Cleans temporary context data.
- Standard_EXPORT virtual void Clean()
+ virtual void Clean()
{
if (myParameters.CleanModel)
{
}
//! Gets instance of a tool to be used to build discrete model.
- inline const Handle (IMeshTools_ModelBuilder)& GetModelBuilder () const
+ const Handle (IMeshTools_ModelBuilder)& GetModelBuilder () const
{
return myModelBuilder;
}
//! Sets instance of a tool to be used to build discrete model.
- inline void SetModelBuilder (const Handle (IMeshTools_ModelBuilder)& theBuilder)
+ void SetModelBuilder (const Handle (IMeshTools_ModelBuilder)& theBuilder)
{
myModelBuilder = theBuilder;
}
//! Gets instance of a tool to be used to discretize edges of a model.
- inline const Handle (IMeshTools_ModelAlgo)& GetEdgeDiscret () const
+ const Handle (IMeshTools_ModelAlgo)& GetEdgeDiscret () const
{
return myEdgeDiscret;
}
//! Sets instance of a tool to be used to discretize edges of a model.
- inline void SetEdgeDiscret (const Handle (IMeshTools_ModelAlgo)& theEdgeDiscret)
+ void SetEdgeDiscret (const Handle (IMeshTools_ModelAlgo)& theEdgeDiscret)
{
myEdgeDiscret = theEdgeDiscret;
}
//! Gets instance of a tool to be used to heal discrete model.
- inline const Handle(IMeshTools_ModelAlgo)& GetModelHealer() const
+ const Handle(IMeshTools_ModelAlgo)& GetModelHealer() const
{
return myModelHealer;
}
//! Sets instance of a tool to be used to heal discrete model.
- inline void SetModelHealer(const Handle(IMeshTools_ModelAlgo)& theModelHealer)
+ void SetModelHealer(const Handle(IMeshTools_ModelAlgo)& theModelHealer)
{
myModelHealer = theModelHealer;
}
//! Gets instance of pre-processing algorithm.
- inline const Handle(IMeshTools_ModelAlgo)& GetPreProcessor() const
+ const Handle(IMeshTools_ModelAlgo)& GetPreProcessor() const
{
return myPreProcessor;
}
//! Sets instance of pre-processing algorithm.
- inline void SetPreProcessor(const Handle(IMeshTools_ModelAlgo)& thePreProcessor)
+ void SetPreProcessor(const Handle(IMeshTools_ModelAlgo)& thePreProcessor)
{
myPreProcessor = thePreProcessor;
}
//! Gets instance of meshing algorithm.
- inline const Handle(IMeshTools_ModelAlgo)& GetFaceDiscret() const
+ const Handle(IMeshTools_ModelAlgo)& GetFaceDiscret() const
{
return myFaceDiscret;
}
//! Sets instance of meshing algorithm.
- inline void SetFaceDiscret(const Handle(IMeshTools_ModelAlgo)& theFaceDiscret)
+ void SetFaceDiscret(const Handle(IMeshTools_ModelAlgo)& theFaceDiscret)
{
myFaceDiscret = theFaceDiscret;
}
//! Gets instance of post-processing algorithm.
- inline const Handle(IMeshTools_ModelAlgo)& GetPostProcessor() const
+ const Handle(IMeshTools_ModelAlgo)& GetPostProcessor() const
{
return myPostProcessor;
}
//! Sets instance of post-processing algorithm.
- inline void SetPostProcessor(const Handle(IMeshTools_ModelAlgo)& thePostProcessor)
+ void SetPostProcessor(const Handle(IMeshTools_ModelAlgo)& thePostProcessor)
{
myPostProcessor = thePostProcessor;
}
//! Gets parameters to be used for meshing.
- inline const IMeshTools_Parameters& GetParameters () const
+ const IMeshTools_Parameters& GetParameters () const
{
return myParameters;
}
//! Gets reference to parameters to be used for meshing.
- inline IMeshTools_Parameters& ChangeParameters ()
+ IMeshTools_Parameters& ChangeParameters ()
{
return myParameters;
}
//! Returns discrete model of a shape.
- inline const Handle (IMeshData_Model)& GetModel () const
+ const Handle (IMeshData_Model)& GetModel () const
{
return myModel;
}
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_Context, IMeshData_Shape)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_Context, IMeshData_Shape)
private:
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshTools_CurveTessellator.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_CurveTessellator, Standard_Transient)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshTools_CurveTessellator()
+ virtual ~IMeshTools_CurveTessellator()
{
}
gp_Pnt& thePoint,
Standard_Real& theParameter) const = 0;
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_CurveTessellator, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_CurveTessellator, Standard_Transient)
protected:
//! Constructor.
- Standard_EXPORT IMeshTools_CurveTessellator()
+ IMeshTools_CurveTessellator()
{
}
};
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshTools_MeshAlgo.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_MeshAlgo, Standard_Transient)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshTools_MeshAlgo()
+ virtual ~IMeshTools_MeshAlgo()
{
}
const IMeshTools_Parameters& theParameters,
const Message_ProgressRange& theRange) = 0;
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_MeshAlgo, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_MeshAlgo, Standard_Transient)
protected:
//! Constructor.
- Standard_EXPORT IMeshTools_MeshAlgo()
+ IMeshTools_MeshAlgo()
{
}
};
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshTools_MeshAlgoFactory.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_MeshAlgoFactory, Standard_Transient)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshTools_MeshAlgoFactory()
+ virtual ~IMeshTools_MeshAlgoFactory()
{
}
const GeomAbs_SurfaceType theSurfaceType,
const IMeshTools_Parameters& theParameters) const = 0;
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_MeshAlgoFactory, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_MeshAlgoFactory, Standard_Transient)
protected:
//! Constructor.
- Standard_EXPORT IMeshTools_MeshAlgoFactory()
+ IMeshTools_MeshAlgoFactory()
{
}
};
#include <IMeshData_Face.hxx>
#include <OSD_Parallel.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_MeshBuilder, Message_Algorithm)
+
//=======================================================================
// Function: Constructor
// Purpose :
Standard_EXPORT virtual ~IMeshTools_MeshBuilder();
//! Sets context for algorithm.
- inline void SetContext (const Handle (IMeshTools_Context)& theContext)
+ void SetContext (const Handle (IMeshTools_Context)& theContext)
{
myContext = theContext;
}
//! Gets context of algorithm.
- inline const Handle (IMeshTools_Context)& GetContext () const
+ const Handle (IMeshTools_Context)& GetContext () const
{
return myContext;
}
//! Performs meshing ot the shape using current context.
Standard_EXPORT virtual void Perform (const Message_ProgressRange& theRange);
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_MeshBuilder, Message_Algorithm)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_MeshBuilder, Message_Algorithm)
private:
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshTools_ModelAlgo.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_ModelAlgo, Standard_Transient)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshTools_ModelAlgo()
+ virtual ~IMeshTools_ModelAlgo()
{
}
}
}
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_ModelAlgo, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_ModelAlgo, Standard_Transient)
protected:
//! Constructor.
- Standard_EXPORT IMeshTools_ModelAlgo()
+ IMeshTools_ModelAlgo()
{
}
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshTools_ModelBuilder.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_ModelBuilder, Message_Algorithm)
\ No newline at end of file
#include <Standard_Failure.hxx>
#include <Standard_Type.hxx>
#include <TopoDS_Shape.hxx>
+#include <IMeshData_Model.hxx>
-class IMeshData_Model;
struct IMeshTools_Parameters;
//! Interface class represents API for tool building discrete model.
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshTools_ModelBuilder()
+ virtual ~IMeshTools_ModelBuilder()
{
}
}
}
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_ModelBuilder, Message_Algorithm)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_ModelBuilder, Message_Algorithm)
protected:
//! Constructor.
- Standard_EXPORT IMeshTools_ModelBuilder()
+ IMeshTools_ModelBuilder()
{
}
#include <TopTools_MapOfShape.hxx>
#include <Geom_Surface.hxx>
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_ShapeExplorer, IMeshData_Shape)
+
namespace
{
//=======================================================================
//! Starts exploring of a shape.
Standard_EXPORT virtual void Accept (const Handle (IMeshTools_ShapeVisitor)& theVisitor);
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_ShapeExplorer, IMeshData_Shape)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_ShapeExplorer, IMeshData_Shape)
};
#endif
\ No newline at end of file
--- /dev/null
+// Created on: 2020-09-28
+// Copyright (c) 2020 OPEN CASCADE SAS
+// Created by: Maria KRYLOVA
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <IMeshTools_ShapeVisitor.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(IMeshTools_ShapeVisitor, Standard_Transient)
\ No newline at end of file
public:
//! Destructor.
- Standard_EXPORT virtual ~IMeshTools_ShapeVisitor()
+ virtual ~IMeshTools_ShapeVisitor()
{
}
//! Handles TopoDS_Edge object.
Standard_EXPORT virtual void Visit (const TopoDS_Edge& theEdge) = 0;
- DEFINE_STANDARD_RTTI_INLINE(IMeshTools_ShapeVisitor, Standard_Transient)
+ DEFINE_STANDARD_RTTIEXT(IMeshTools_ShapeVisitor, Standard_Transient)
protected:
//! Constructor.
- Standard_EXPORT IMeshTools_ShapeVisitor()
+ IMeshTools_ShapeVisitor()
{
}
};