QGIS API Documentation  2.6.0-Brighton
HalfEdge.h
Go to the documentation of this file.
1 /***************************************************************************
2  HalfEdge.h - description
3  -------------------
4  copyright : (C) 2004 by Marco Hugentobler
5  email : mhugent@geo.unizh.ch
6  ***************************************************************************/
7
8 /***************************************************************************
9  * *
10  * This program is free software; you can redistribute it and/or modify *
11  * it under the terms of the GNU General Public License as published by *
12  * the Free Software Foundation; either version 2 of the License, or *
13  * (at your option) any later version. *
14  * *
15  ***************************************************************************/
16
17 #ifndef HALFEDGE_H
18 #define HALFEDGE_H
19
20 class ANALYSIS_EXPORT HalfEdge
21 {
22  protected:
24  int mDual;
26  int mNext;
28  int mPoint;
30  bool mBreak;
32  bool mForced;
33
34  public:
36  HalfEdge();
37  HalfEdge( int dual, int next, int point, bool mbreak, bool forced );
38  ~HalfEdge();
40  int getDual() const;
42  int getNext() const;
44  int getPoint() const;
46  bool getBreak() const;
48  bool getForced() const;
50  void setDual( int d );
52  void setNext( int n );
54  void setPoint( int p );
56  void setBreak( bool b );
58  void setForced( bool f );
59 };
60
61 inline HalfEdge::HalfEdge(): mDual( -10 ), mNext( -10 ), mPoint( -10 ), mBreak( false ), mForced( false )
62 {
63
64 }
65
66 inline HalfEdge::HalfEdge( int dual, int next, int point, bool mbreak, bool forced ): mDual( dual ), mNext( next ), mPoint( point ), mBreak( mbreak ), mForced( forced )
67 {
68
69 }
70
72 {
73
74 }
75
76 inline int HalfEdge::getDual() const
77 {
78  return mDual;
79 }
80
81 inline int HalfEdge::getNext() const
82 {
83  return mNext;
84 }
85
86 inline int HalfEdge::getPoint() const
87 {
88  return mPoint;
89 }
90
91 inline bool HalfEdge::getBreak() const
92 {
93  return mBreak;
94 }
95
96 inline bool HalfEdge::getForced() const
97 {
98  return mForced;
99 }
100
101 inline void HalfEdge::setDual( int d )
102 {
103  mDual = d;
104 }
105
106 inline void HalfEdge::setNext( int n )
107 {
108  mNext = n;
109 }
110
111 inline void HalfEdge::setPoint( int p )
112 {
113  mPoint = p;
114 }
115
116 inline void HalfEdge::setBreak( bool b )
117 {
118  mBreak = b;
119 }
120
121 inline void HalfEdge::setForced( bool f )
122 {
123  mForced = f;
124 }
125
126 #endif