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_CurveOn2Surfaces_HeaderFile 18 #define _BRep_CurveOn2Surfaces_HeaderFile 19 20 #include <Standard.hxx> 21 #include <Standard_Type.hxx> 22 23 #include <TopLoc_Location.hxx> 24 #include <GeomAbs_Shape.hxx> 25 #include <BRep_CurveRepresentation.hxx> 26 #include <Standard_Boolean.hxx> 27 #include <Standard_Real.hxx> 28 class Geom_Surface; 29 class Standard_NullObject; 30 class TopLoc_Location; 31 class gp_Pnt; 32 class BRep_CurveRepresentation; 33 34 35 class BRep_CurveOn2Surfaces; 36 DEFINE_STANDARD_HANDLE(BRep_CurveOn2Surfaces, BRep_CurveRepresentation) 37 38 //! Defines a continuity between two surfaces. 39 class BRep_CurveOn2Surfaces : public BRep_CurveRepresentation 40 { 41 42 public: 43 44 45 Standard_EXPORT BRep_CurveOn2Surfaces(const Handle(Geom_Surface)& S1, const Handle(Geom_Surface)& S2, const TopLoc_Location& L1, const TopLoc_Location& L2, const GeomAbs_Shape C); 46 47 //! Returns True. 48 Standard_EXPORT virtual Standard_Boolean IsRegularity() const Standard_OVERRIDE; 49 50 //! A curve on two surfaces (continuity). 51 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; 52 53 //! Raises an error. 54 Standard_EXPORT void D0 (const Standard_Real U, gp_Pnt& P) const; 55 56 Standard_EXPORT virtual const Handle(Geom_Surface)& Surface() const Standard_OVERRIDE; 57 58 Standard_EXPORT virtual const Handle(Geom_Surface)& Surface2() const Standard_OVERRIDE; 59 60 Standard_EXPORT virtual const TopLoc_Location& Location2() const Standard_OVERRIDE; 61 62 Standard_EXPORT virtual const GeomAbs_Shape& Continuity() const Standard_OVERRIDE; 63 64 Standard_EXPORT virtual void Continuity (const GeomAbs_Shape C) Standard_OVERRIDE; 65 66 //! Return a copy of this representation. 67 Standard_EXPORT Handle(BRep_CurveRepresentation) Copy() const Standard_OVERRIDE; 68 69 70 71 72 DEFINE_STANDARD_RTTIEXT(BRep_CurveOn2Surfaces,BRep_CurveRepresentation) 73 74 protected: 75 76 77 78 79 private: 80 81 82 Handle(Geom_Surface) mySurface; 83 Handle(Geom_Surface) mySurface2; 84 TopLoc_Location myLocation2; 85 GeomAbs_Shape myContinuity; 86 87 88 }; 89 90 91 92 93 94 95 96 #endif // _BRep_CurveOn2Surfaces_HeaderFile 97