File indexing completed on 2025-01-18 10:03:21
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _ChFiDS_SurfData_HeaderFile
0018 #define _ChFiDS_SurfData_HeaderFile
0019
0020 #include <Standard.hxx>
0021
0022 #include <ChFiDS_CommonPoint.hxx>
0023 #include <ChFiDS_FaceInterference.hxx>
0024 #include <gp_Pnt2d.hxx>
0025 #include <Standard_Real.hxx>
0026 #include <Standard_Integer.hxx>
0027 #include <TopAbs_Orientation.hxx>
0028 #include <Standard_Transient.hxx>
0029
0030
0031
0032 class ChFiDS_SurfData;
0033 DEFINE_STANDARD_HANDLE(ChFiDS_SurfData, Standard_Transient)
0034
0035
0036
0037 class ChFiDS_SurfData : public Standard_Transient
0038 {
0039
0040 public:
0041
0042
0043 Standard_EXPORT ChFiDS_SurfData();
0044
0045 Standard_EXPORT void Copy (const Handle(ChFiDS_SurfData)& Other);
0046
0047 Standard_Integer IndexOfS1() const;
0048
0049 Standard_Integer IndexOfS2() const;
0050
0051 Standard_Boolean IsOnCurve1() const;
0052
0053 Standard_Boolean IsOnCurve2() const;
0054
0055 Standard_Integer IndexOfC1() const;
0056
0057 Standard_Integer IndexOfC2() const;
0058
0059 Standard_Integer Surf() const;
0060
0061 TopAbs_Orientation Orientation() const;
0062
0063 const ChFiDS_FaceInterference& InterferenceOnS1() const;
0064
0065 const ChFiDS_FaceInterference& InterferenceOnS2() const;
0066
0067 const ChFiDS_CommonPoint& VertexFirstOnS1() const;
0068
0069 const ChFiDS_CommonPoint& VertexFirstOnS2() const;
0070
0071 const ChFiDS_CommonPoint& VertexLastOnS1() const;
0072
0073 const ChFiDS_CommonPoint& VertexLastOnS2() const;
0074
0075 void ChangeIndexOfS1 (const Standard_Integer Index);
0076
0077 void ChangeIndexOfS2 (const Standard_Integer Index);
0078
0079 void ChangeSurf (const Standard_Integer Index);
0080
0081 void SetIndexOfC1 (const Standard_Integer Index);
0082
0083 void SetIndexOfC2 (const Standard_Integer Index);
0084
0085 TopAbs_Orientation& ChangeOrientation();
0086
0087 ChFiDS_FaceInterference& ChangeInterferenceOnS1();
0088
0089 ChFiDS_FaceInterference& ChangeInterferenceOnS2();
0090
0091 ChFiDS_CommonPoint& ChangeVertexFirstOnS1();
0092
0093 ChFiDS_CommonPoint& ChangeVertexFirstOnS2();
0094
0095 ChFiDS_CommonPoint& ChangeVertexLastOnS1();
0096
0097 ChFiDS_CommonPoint& ChangeVertexLastOnS2();
0098
0099 Standard_EXPORT const ChFiDS_FaceInterference& Interference (const Standard_Integer OnS) const;
0100
0101 Standard_EXPORT ChFiDS_FaceInterference& ChangeInterference (const Standard_Integer OnS);
0102
0103 Standard_EXPORT Standard_Integer Index (const Standard_Integer OfS) const;
0104
0105
0106
0107 Standard_EXPORT const ChFiDS_CommonPoint& Vertex (const Standard_Boolean First, const Standard_Integer OnS) const;
0108
0109
0110
0111 Standard_EXPORT ChFiDS_CommonPoint& ChangeVertex (const Standard_Boolean First, const Standard_Integer OnS);
0112
0113 Standard_Boolean IsOnCurve (const Standard_Integer OnS) const;
0114
0115 Standard_Integer IndexOfC (const Standard_Integer OnS) const;
0116
0117 Standard_EXPORT Standard_Real FirstSpineParam() const;
0118
0119 Standard_EXPORT Standard_Real LastSpineParam() const;
0120
0121 Standard_EXPORT void FirstSpineParam (const Standard_Real Par);
0122
0123 Standard_EXPORT void LastSpineParam (const Standard_Real Par);
0124
0125 Standard_EXPORT Standard_Real FirstExtensionValue() const;
0126
0127 Standard_EXPORT Standard_Real LastExtensionValue() const;
0128
0129 Standard_EXPORT void FirstExtensionValue (const Standard_Real Extend);
0130
0131 Standard_EXPORT void LastExtensionValue (const Standard_Real Extend);
0132
0133 Standard_EXPORT Handle(Standard_Transient) Simul() const;
0134
0135 Standard_EXPORT void SetSimul (const Handle(Standard_Transient)& S);
0136
0137 Standard_EXPORT void ResetSimul();
0138
0139 Standard_EXPORT gp_Pnt2d Get2dPoints (const Standard_Boolean First, const Standard_Integer OnS) const;
0140
0141 Standard_EXPORT void Get2dPoints (gp_Pnt2d& P2df1, gp_Pnt2d& P2dl1, gp_Pnt2d& P2df2, gp_Pnt2d& P2dl2) const;
0142
0143 Standard_EXPORT void Set2dPoints (const gp_Pnt2d& P2df1, const gp_Pnt2d& P2dl1, const gp_Pnt2d& P2df2, const gp_Pnt2d& P2dl2);
0144
0145 Standard_Boolean TwistOnS1() const;
0146
0147 Standard_Boolean TwistOnS2() const;
0148
0149 void TwistOnS1 (const Standard_Boolean T);
0150
0151 void TwistOnS2 (const Standard_Boolean T);
0152
0153
0154
0155
0156 DEFINE_STANDARD_RTTIEXT(ChFiDS_SurfData,Standard_Transient)
0157
0158 protected:
0159
0160
0161
0162
0163 private:
0164
0165
0166 ChFiDS_CommonPoint pfirstOnS1;
0167 ChFiDS_CommonPoint plastOnS1;
0168 ChFiDS_CommonPoint pfirstOnS2;
0169 ChFiDS_CommonPoint plastOnS2;
0170 ChFiDS_FaceInterference intf1;
0171 ChFiDS_FaceInterference intf2;
0172 gp_Pnt2d p2df1;
0173 gp_Pnt2d p2dl1;
0174 gp_Pnt2d p2df2;
0175 gp_Pnt2d p2dl2;
0176 Standard_Real ufspine;
0177 Standard_Real ulspine;
0178 Standard_Real myfirstextend;
0179 Standard_Real mylastextend;
0180 Handle(Standard_Transient) simul;
0181 Standard_Integer indexOfS1;
0182 Standard_Integer indexOfC1;
0183 Standard_Integer indexOfS2;
0184 Standard_Integer indexOfC2;
0185 Standard_Integer indexOfConge;
0186 Standard_Boolean isoncurv1;
0187 Standard_Boolean isoncurv2;
0188 Standard_Boolean twistons1;
0189 Standard_Boolean twistons2;
0190 TopAbs_Orientation orientation;
0191
0192
0193 };
0194
0195
0196 #include <ChFiDS_SurfData.lxx>
0197
0198
0199
0200
0201
0202 #endif