File indexing completed on 2026-06-06 08:35:49
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 DEFINE_STANDARD_ALLOC
0040
0041 Standard_EXPORT Contap_Line();
0042
0043 Standard_EXPORT void SetLineOn2S(const Handle(IntSurf_LineOn2S)& L);
0044
0045 Standard_EXPORT void Clear();
0046
0047 const Handle(IntSurf_LineOn2S)& LineOn2S() const;
0048
0049 Standard_EXPORT void ResetSeqOfVertex();
0050
0051 void Add(const IntSurf_PntOn2S& P);
0052
0053 Standard_EXPORT void SetValue(const gp_Lin& L);
0054
0055 Standard_EXPORT void SetValue(const gp_Circ& C);
0056
0057 Standard_EXPORT void SetValue(const Handle(Adaptor2d_Curve2d)& A);
0058
0059 Standard_EXPORT void Add(const Contap_Point& P);
0060
0061 Standard_Integer NbVertex() const;
0062
0063 Contap_Point& Vertex(const Standard_Integer Index) const;
0064
0065
0066
0067
0068 Contap_IType TypeContour() const;
0069
0070 Standard_Integer NbPnts() const;
0071
0072 const IntSurf_PntOn2S& Point(const Standard_Integer Index) const;
0073
0074 gp_Lin Line() const;
0075
0076 gp_Circ Circle() const;
0077
0078 Standard_EXPORT const Handle(Adaptor2d_Curve2d)& Arc() const;
0079
0080
0081 Standard_EXPORT void SetTransitionOnS(const IntSurf_TypeTrans T);
0082
0083
0084
0085 Standard_EXPORT IntSurf_TypeTrans TransitionOnS() const;
0086
0087 protected:
0088 private:
0089 IntSurf_TypeTrans Trans;
0090 Handle(IntSurf_LineOn2S) curv;
0091 Handle(Contap_TheHSequenceOfPoint) svtx;
0092 Handle(Adaptor2d_Curve2d) thearc;
0093 Contap_IType typL;
0094 gp_Pnt pt;
0095 gp_Dir dir1;
0096 gp_Dir dir2;
0097 Standard_Real rad;
0098 };
0099
0100 #include <Contap_Line.lxx>
0101
0102 #endif