File indexing completed on 2025-01-18 10:03:22
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Contap_Line_HeaderFile
0018 #define _Contap_Line_HeaderFile
0019
0020 #include <Contap_IType.hxx>
0021 #include <Contap_TheHSequenceOfPoint.hxx>
0022 #include <gp_Dir.hxx>
0023 #include <gp_Pnt.hxx>
0024 #include <IntSurf_TypeTrans.hxx>
0025 #include <Standard.hxx>
0026 #include <Standard_DefineAlloc.hxx>
0027 #include <Standard_Handle.hxx>
0028 #include <Standard_Integer.hxx>
0029
0030 class IntSurf_LineOn2S;
0031 class IntSurf_PntOn2S;
0032 class gp_Lin;
0033 class gp_Circ;
0034 class Contap_Point;
0035
0036 class Contap_Line
0037 {
0038 public:
0039
0040 DEFINE_STANDARD_ALLOC
0041
0042
0043 Standard_EXPORT Contap_Line();
0044
0045 Standard_EXPORT void SetLineOn2S (const Handle(IntSurf_LineOn2S)& L);
0046
0047 Standard_EXPORT void Clear();
0048
0049 const Handle(IntSurf_LineOn2S)& LineOn2S() const;
0050
0051 Standard_EXPORT void ResetSeqOfVertex();
0052
0053 void Add (const IntSurf_PntOn2S& P);
0054
0055 Standard_EXPORT void SetValue (const gp_Lin& L);
0056
0057 Standard_EXPORT void SetValue (const gp_Circ& C);
0058
0059 Standard_EXPORT void SetValue (const Handle(Adaptor2d_Curve2d)& A);
0060
0061 Standard_EXPORT void Add (const Contap_Point& P);
0062
0063 Standard_Integer NbVertex() const;
0064
0065 Contap_Point& Vertex (const Standard_Integer Index) const;
0066
0067
0068
0069
0070 Contap_IType TypeContour() const;
0071
0072 Standard_Integer NbPnts() const;
0073
0074 const IntSurf_PntOn2S& Point (const Standard_Integer Index) const;
0075
0076 gp_Lin Line() const;
0077
0078 gp_Circ Circle() const;
0079
0080 Standard_EXPORT const Handle(Adaptor2d_Curve2d)& Arc() const;
0081
0082
0083 Standard_EXPORT void SetTransitionOnS (const IntSurf_TypeTrans T);
0084
0085
0086
0087 Standard_EXPORT IntSurf_TypeTrans TransitionOnS() const;
0088
0089
0090
0091
0092 protected:
0093
0094
0095
0096
0097
0098 private:
0099
0100
0101
0102 IntSurf_TypeTrans Trans;
0103 Handle(IntSurf_LineOn2S) curv;
0104 Handle(Contap_TheHSequenceOfPoint) svtx;
0105 Handle(Adaptor2d_Curve2d) thearc;
0106 Contap_IType typL;
0107 gp_Pnt pt;
0108 gp_Dir dir1;
0109 gp_Dir dir2;
0110 Standard_Real rad;
0111
0112
0113 };
0114
0115
0116 #include <Contap_Line.lxx>
0117
0118
0119
0120
0121
0122 #endif