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_OtherCurve_HeaderFile
0015 #define GeomBndLib_OtherCurve_HeaderFile
0016
0017 #include <Adaptor3d_Curve.hxx>
0018 #include <Bnd_Box.hxx>
0019 #include <Standard.hxx>
0020 #include <Standard_DefineAlloc.hxx>
0021
0022 #include <functional>
0023
0024
0025
0026 class GeomBndLib_OtherCurve
0027 {
0028 public:
0029 DEFINE_STANDARD_ALLOC
0030
0031 GeomBndLib_OtherCurve(const Adaptor3d_Curve& theCurve)
0032 : myCurve(theCurve)
0033 {
0034 }
0035
0036 GeomBndLib_OtherCurve(const GeomBndLib_OtherCurve&) = delete;
0037 GeomBndLib_OtherCurve& operator=(const GeomBndLib_OtherCurve&) = delete;
0038 GeomBndLib_OtherCurve(GeomBndLib_OtherCurve&&) = delete;
0039 GeomBndLib_OtherCurve& operator=(GeomBndLib_OtherCurve&&) = delete;
0040
0041
0042 [[nodiscard]] Standard_EXPORT Bnd_Box Box(double theTol) const;
0043
0044
0045 [[nodiscard]] Standard_EXPORT Bnd_Box Box(double theU1, double theU2, double theTol) const;
0046
0047
0048 [[nodiscard]] Bnd_Box BoxOptimal(double theTol) const
0049 {
0050 return BoxOptimal(myCurve.get().FirstParameter(), myCurve.get().LastParameter(), theTol);
0051 }
0052
0053
0054 [[nodiscard]] Standard_EXPORT Bnd_Box BoxOptimal(double theU1, double theU2, double theTol) const;
0055
0056 private:
0057 std::reference_wrapper<const Adaptor3d_Curve> myCurve;
0058 };
0059
0060 #endif