0032768: Coding - get rid of unused headers [BopAlgo to BRepBuilderAPI]
[occt.git] / src / BRep / BRep_CurveOnClosedSurface.hxx
1 // Created on: 1993-07-06
2 // Created by: Remi LEQUETTE
3 // Copyright (c) 1993-1999 Matra Datavision
4 // Copyright (c) 1999-2014 OPEN CASCADE SAS
5 //
6 // This file is part of Open CASCADE Technology software library.
7 //
8 // This library is free software; you can redistribute it and/or modify it under
9 // the terms of the GNU Lesser General Public License version 2.1 as published
10 // by the Free Software Foundation, with special exception defined in the file
11 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 // distribution for complete text of the license and disclaimer of any warranty.
13 //
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
16
17 #ifndef _BRep_CurveOnClosedSurface_HeaderFile
18 #define _BRep_CurveOnClosedSurface_HeaderFile
19
20 #include <Standard.hxx>
21
22 #include <BRep_CurveOnSurface.hxx>
23 class Geom2d_Curve;
24 class Geom_Surface;
25 class TopLoc_Location;
26 class BRep_CurveRepresentation;
27
28
29 class BRep_CurveOnClosedSurface;
30 DEFINE_STANDARD_HANDLE(BRep_CurveOnClosedSurface, BRep_CurveOnSurface)
31
32 //! Representation  of a    curve by two  pcurves   on
33 //! a closed surface.
34 class BRep_CurveOnClosedSurface : public BRep_CurveOnSurface
35 {
36
37 public:
38
39   
40   Standard_EXPORT BRep_CurveOnClosedSurface(const Handle(Geom2d_Curve)& PC1, const Handle(Geom2d_Curve)& PC2, const Handle(Geom_Surface)& S, const TopLoc_Location& L, const GeomAbs_Shape C);
41   
42     void SetUVPoints2 (const gp_Pnt2d& P1, const gp_Pnt2d& P2);
43   
44     void UVPoints2 (gp_Pnt2d& P1, gp_Pnt2d& P2) const;
45   
46   //! Returns True.
47   Standard_EXPORT virtual Standard_Boolean IsCurveOnClosedSurface() const Standard_OVERRIDE;
48   
49   //! Returns True
50   Standard_EXPORT virtual Standard_Boolean IsRegularity() const Standard_OVERRIDE;
51   
52   //! A curve on two surfaces (continuity).
53   Standard_EXPORT virtual Standard_Boolean IsRegularity (const Handle(Geom_Surface)& S1, const Handle(Geom_Surface)& S2, const TopLoc_Location& L1, const TopLoc_Location& L2) const Standard_OVERRIDE;
54   
55   Standard_EXPORT virtual const Handle(Geom2d_Curve)& PCurve2() const Standard_OVERRIDE;
56   
57   //! Returns Surface()
58   Standard_EXPORT virtual const Handle(Geom_Surface)& Surface2() const Standard_OVERRIDE;
59   
60   //! Returns Location()
61   Standard_EXPORT virtual const TopLoc_Location& Location2() const Standard_OVERRIDE;
62   
63   Standard_EXPORT virtual const GeomAbs_Shape& Continuity() const Standard_OVERRIDE;
64   
65   Standard_EXPORT virtual void Continuity (const GeomAbs_Shape C) Standard_OVERRIDE;
66   
67   Standard_EXPORT virtual void PCurve2 (const Handle(Geom2d_Curve)& C) Standard_OVERRIDE;
68   
69   //! Return a copy of this representation.
70   Standard_EXPORT virtual Handle(BRep_CurveRepresentation) Copy() const Standard_OVERRIDE;
71   
72   //! Recomputes any derived data after a modification.
73   //! This is called when the range is modified.
74   Standard_EXPORT virtual void Update() Standard_OVERRIDE;
75
76   //! Dumps the content of me into the stream
77   Standard_EXPORT virtual void DumpJson (Standard_OStream& theOStream, Standard_Integer theDepth = -1) const Standard_OVERRIDE;
78
79
80
81
82   DEFINE_STANDARD_RTTIEXT(BRep_CurveOnClosedSurface,BRep_CurveOnSurface)
83
84 protected:
85
86
87
88
89 private:
90
91
92   Handle(Geom2d_Curve) myPCurve2;
93   GeomAbs_Shape myContinuity;
94   gp_Pnt2d myUV21;
95   gp_Pnt2d myUV22;
96
97
98 };
99
100
101 #include <BRep_CurveOnClosedSurface.lxx>
102
103
104
105
106
107 #endif // _BRep_CurveOnClosedSurface_HeaderFile