File indexing completed on 2025-01-18 10:03:23
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _DBRep_IsoBuilder_HeaderFile
0018 #define _DBRep_IsoBuilder_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <TColStd_Array1OfReal.hxx>
0025 #include <TColStd_Array1OfInteger.hxx>
0026 #include <Standard_Integer.hxx>
0027 #include <Geom2dHatch_Hatcher.hxx>
0028 #include <NCollection_IndexedDataMap.hxx>
0029 class TopoDS_Face;
0030 class DBRep_Face;
0031
0032
0033 class DBRep_IsoBuilder : public Geom2dHatch_Hatcher
0034 {
0035 public:
0036
0037 DEFINE_STANDARD_ALLOC
0038
0039
0040
0041 Standard_EXPORT DBRep_IsoBuilder(const TopoDS_Face& TopologicalFace, const Standard_Real Infinite, const Standard_Integer NbIsos);
0042
0043
0044 Standard_Integer NbDomains() const
0045 {
0046 return myNbDom;
0047 }
0048
0049
0050
0051 Standard_EXPORT void LoadIsos (const Handle(DBRep_Face)& Face) const;
0052
0053 protected:
0054
0055 typedef NCollection_IndexedDataMap
0056 <TopoDS_Shape, Handle(Geom2d_Curve)>
0057 DataMapOfEdgePCurve;
0058
0059
0060
0061
0062
0063
0064
0065
0066 Standard_EXPORT void FillGaps(const TopoDS_Face& theFace,
0067 DataMapOfEdgePCurve& theEdgePCurveMap);
0068
0069
0070 private:
0071
0072
0073
0074 Standard_Real myInfinite;
0075 Standard_Real myUMin;
0076 Standard_Real myUMax;
0077 Standard_Real myVMin;
0078 Standard_Real myVMax;
0079 TColStd_Array1OfReal myUPrm;
0080 TColStd_Array1OfInteger myUInd;
0081 TColStd_Array1OfReal myVPrm;
0082 TColStd_Array1OfInteger myVInd;
0083 Standard_Integer myNbDom;
0084
0085
0086 };
0087
0088
0089 #endif