File indexing completed on 2026-05-31 08:29:58
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _BRepMesh_EdgeTessellationExtractor_HeaderFile
0017 #define _BRepMesh_EdgeTessellationExtractor_HeaderFile
0018
0019 #include <IMeshTools_CurveTessellator.hxx>
0020 #include <BRepMesh_EdgeParameterProvider.hxx>
0021 #include <TColStd_Array1OfInteger.hxx>
0022 #include <TopLoc_Location.hxx>
0023
0024
0025
0026 class BRepMesh_EdgeTessellationExtractor : public IMeshTools_CurveTessellator
0027 {
0028 public:
0029
0030 Standard_EXPORT BRepMesh_EdgeTessellationExtractor(const IMeshData::IEdgeHandle& theEdge,
0031 const IMeshData::IFaceHandle& theFace);
0032
0033
0034 Standard_EXPORT virtual ~BRepMesh_EdgeTessellationExtractor();
0035
0036
0037 Standard_EXPORT virtual Standard_Integer PointsNb() const Standard_OVERRIDE;
0038
0039
0040
0041
0042
0043
0044 Standard_EXPORT virtual Standard_Boolean Value(const Standard_Integer theIndex,
0045 gp_Pnt& thePoint,
0046 Standard_Real& theParameter) const
0047 Standard_OVERRIDE;
0048
0049 DEFINE_STANDARD_RTTIEXT(BRepMesh_EdgeTessellationExtractor, IMeshTools_CurveTessellator)
0050
0051 private:
0052 BRepMesh_EdgeParameterProvider<Handle(TColStd_HArray1OfReal)> myProvider;
0053 const Poly_Triangulation* myTriangulation;
0054 const TColStd_Array1OfInteger* myIndices;
0055 TopLoc_Location myLoc;
0056 };
0057
0058 #endif