1 // Created on: 1999-03-05 2 // Created by: Fabrice SERVANT 3 // Copyright (c) 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 _IntPolyh_Edge_HeaderFile 18 #define _IntPolyh_Edge_HeaderFile 19 20 #include <Standard.hxx> 21 #include <Standard_DefineAlloc.hxx> 22 #include <Standard_Handle.hxx> 23 24 #include <Standard_Integer.hxx> 25 26 //! The class represents the edge built between the two IntPolyh points.<br> 27 //! It is linked to two IntPolyh triangles. 28 class IntPolyh_Edge 29 { 30 public: 31 32 DEFINE_STANDARD_ALLOC 33 34 //! Constructor IntPolyh_Edge()35 IntPolyh_Edge() : 36 myPoint1(-1), myPoint2(-1), myTriangle1(-1), myTriangle2(-1) 37 {} 38 //! Constructor IntPolyh_Edge(const Standard_Integer thePoint1,const Standard_Integer thePoint2,const Standard_Integer theTriangle1,const Standard_Integer theTriangle2)39 IntPolyh_Edge(const Standard_Integer thePoint1, 40 const Standard_Integer thePoint2, 41 const Standard_Integer theTriangle1, 42 const Standard_Integer theTriangle2) 43 : 44 myPoint1(thePoint1), 45 myPoint2(thePoint2), 46 myTriangle1(theTriangle1), 47 myTriangle2(theTriangle2) 48 {} 49 50 //! Returns the first point FirstPoint() const51 Standard_Integer FirstPoint() const 52 { 53 return myPoint1; 54 } 55 //! Returns the second point SecondPoint() const56 Standard_Integer SecondPoint() const 57 { 58 return myPoint2; 59 } 60 //! Returns the first triangle FirstTriangle() const61 Standard_Integer FirstTriangle() const 62 { 63 return myTriangle1; 64 } 65 //! Returns the second triangle SecondTriangle() const66 Standard_Integer SecondTriangle() const 67 { 68 return myTriangle2; 69 } 70 //! Sets the first point SetFirstPoint(const Standard_Integer thePoint)71 void SetFirstPoint (const Standard_Integer thePoint) 72 { 73 myPoint1 = thePoint; 74 } 75 //! Sets the second point SetSecondPoint(const Standard_Integer thePoint)76 void SetSecondPoint (const Standard_Integer thePoint) 77 { 78 myPoint2 = thePoint; 79 } 80 //! Sets the first triangle SetFirstTriangle(const Standard_Integer theTriangle)81 void SetFirstTriangle (const Standard_Integer theTriangle) 82 { 83 myTriangle1 = theTriangle; 84 } 85 //! Sets the second triangle SetSecondTriangle(const Standard_Integer theTriangle)86 void SetSecondTriangle (const Standard_Integer theTriangle) 87 { 88 myTriangle2 = theTriangle; 89 } 90 91 Standard_EXPORT void Dump (const Standard_Integer v) const; 92 93 protected: 94 95 private: 96 97 Standard_Integer myPoint1; 98 Standard_Integer myPoint2; 99 Standard_Integer myTriangle1; 100 Standard_Integer myTriangle2; 101 }; 102 103 #endif // _IntPolyh_Edge_HeaderFile 104