File indexing completed on 2026-09-28 09:20:07
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef GeomBndLib_OffsetSurface_HeaderFile
0015 #define GeomBndLib_OffsetSurface_HeaderFile
0016
0017 #include <Bnd_Box.hxx>
0018 #include <Geom_OffsetSurface.hxx>
0019 #include <Standard.hxx>
0020 #include <Standard_DefineAlloc.hxx>
0021
0022
0023
0024 class GeomBndLib_OffsetSurface
0025 {
0026 public:
0027 DEFINE_STANDARD_ALLOC
0028
0029 GeomBndLib_OffsetSurface(const occ::handle<Geom_OffsetSurface>& theSurf)
0030 : myGeom(theSurf)
0031 {
0032 }
0033
0034 GeomBndLib_OffsetSurface(const GeomBndLib_OffsetSurface&) = delete;
0035 GeomBndLib_OffsetSurface& operator=(const GeomBndLib_OffsetSurface&) = delete;
0036 GeomBndLib_OffsetSurface(GeomBndLib_OffsetSurface&&) = delete;
0037 GeomBndLib_OffsetSurface& operator=(GeomBndLib_OffsetSurface&&) = delete;
0038
0039 const occ::handle<Geom_OffsetSurface>& Geometry() const { return myGeom; }
0040
0041
0042 [[nodiscard]] Standard_EXPORT Bnd_Box Box(double theTol) const;
0043
0044
0045 [[nodiscard]] Standard_EXPORT Bnd_Box
0046 Box(double theUMin, double theUMax, double theVMin, double theVMax, double theTol) const;
0047
0048
0049 [[nodiscard]] Bnd_Box BoxOptimal(double theTol) const
0050 {
0051 double aU1 = 0., aU2 = 0., aV1 = 0., aV2 = 0.;
0052 myGeom->Bounds(aU1, aU2, aV1, aV2);
0053 return BoxOptimal(aU1, aU2, aV1, aV2, theTol);
0054 }
0055
0056
0057 [[nodiscard]] Standard_EXPORT Bnd_Box
0058 BoxOptimal(double theUMin, double theUMax, double theVMin, double theVMax, double theTol) const;
0059
0060 private:
0061 occ::handle<Geom_OffsetSurface> myGeom;
0062 };
0063
0064 #endif