File indexing completed on 2026-09-27 09:18:12
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _IntPatch_ThePathPointOfTheSOnBounds_HeaderFile
0018 #define _IntPatch_ThePathPointOfTheSOnBounds_HeaderFile
0019
0020 #include <Adaptor2d_Curve2d.hxx>
0021 #include <gp_Pnt.hxx>
0022
0023 class Adaptor3d_HVertex;
0024 class Standard_DomainError;
0025 class gp_Pnt;
0026
0027 class IntPatch_ThePathPointOfTheSOnBounds
0028 {
0029 public:
0030 DEFINE_STANDARD_ALLOC
0031
0032 Standard_EXPORT IntPatch_ThePathPointOfTheSOnBounds();
0033
0034 Standard_EXPORT IntPatch_ThePathPointOfTheSOnBounds(const gp_Pnt& P,
0035 const double Tol,
0036 const occ::handle<Adaptor3d_HVertex>& V,
0037 const occ::handle<Adaptor2d_Curve2d>& A,
0038 const double Parameter);
0039
0040 Standard_EXPORT IntPatch_ThePathPointOfTheSOnBounds(const gp_Pnt& P,
0041 const double Tol,
0042 const occ::handle<Adaptor2d_Curve2d>& A,
0043 const double Parameter);
0044
0045 void SetValue(const gp_Pnt& P,
0046 const double Tol,
0047 const occ::handle<Adaptor3d_HVertex>& V,
0048 const occ::handle<Adaptor2d_Curve2d>& A,
0049 const double Parameter);
0050
0051 void SetValue(const gp_Pnt& P,
0052 const double Tol,
0053 const occ::handle<Adaptor2d_Curve2d>& A,
0054 const double Parameter);
0055
0056 const gp_Pnt& Value() const;
0057
0058 double Tolerance() const;
0059
0060 bool IsNew() const;
0061
0062 const occ::handle<Adaptor3d_HVertex>& Vertex() const;
0063
0064 const occ::handle<Adaptor2d_Curve2d>& Arc() const;
0065
0066 double Parameter() const;
0067
0068 private:
0069 gp_Pnt point;
0070 double tol;
0071 bool isnew;
0072 occ::handle<Adaptor3d_HVertex> vtx;
0073 occ::handle<Adaptor2d_Curve2d> arc;
0074 double param;
0075 };
0076
0077
0078
0079
0080
0081 inline void IntPatch_ThePathPointOfTheSOnBounds::SetValue(const gp_Pnt& P,
0082 const double Tol,
0083 const occ::handle<Adaptor3d_HVertex>& V,
0084 const occ::handle<Adaptor2d_Curve2d>& A,
0085 const double Parameter)
0086 {
0087 isnew = false;
0088 point = P;
0089 tol = Tol;
0090 vtx = V;
0091 arc = A;
0092 param = Parameter;
0093 }
0094
0095 inline void IntPatch_ThePathPointOfTheSOnBounds::SetValue(const gp_Pnt& P,
0096 const double Tol,
0097 const occ::handle<Adaptor2d_Curve2d>& A,
0098 const double Parameter)
0099 {
0100 isnew = true;
0101 point = P;
0102 tol = Tol;
0103 arc = A;
0104 param = Parameter;
0105 }
0106
0107 inline const gp_Pnt& IntPatch_ThePathPointOfTheSOnBounds::Value() const
0108 {
0109 return point;
0110 }
0111
0112 inline double IntPatch_ThePathPointOfTheSOnBounds::Tolerance() const
0113 {
0114 return tol;
0115 }
0116
0117 inline bool IntPatch_ThePathPointOfTheSOnBounds::IsNew() const
0118 {
0119 return isnew;
0120 }
0121
0122 inline const occ::handle<Adaptor3d_HVertex>& IntPatch_ThePathPointOfTheSOnBounds::Vertex() const
0123 {
0124 if (isnew)
0125 {
0126 throw Standard_DomainError();
0127 }
0128 return vtx;
0129 }
0130
0131 inline const occ::handle<Adaptor2d_Curve2d>& IntPatch_ThePathPointOfTheSOnBounds::Arc() const
0132 {
0133 return arc;
0134 }
0135
0136 inline double IntPatch_ThePathPointOfTheSOnBounds::Parameter() const
0137 {
0138 return param;
0139 }
0140
0141 #endif