xc
GTSEdge.h
1 // -*-c++-*-
2 //----------------------------------------------------------------------------
3 // xc utils library; general purpose classes and functions.
4 //
5 // Copyright (C) Luis C. PĂ©rez Tato
6 //
7 // XC utils is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // This software is distributed in the hope that it will be useful, but
13 // WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with this program.
19 // If not, see <http://www.gnu.org/licenses/>.
20 //----------------------------------------------------------------------------
21 //GTSEdge.h
22 //C++ wrapper para la clase GtsEdge de la biblioteca GTS.
23 
24 #ifndef GTS_EDGE_H
25 #define GTS_EDGE_H
26 
27 #include "gts.h"
28 
29 class GTSVertex;
30 
31 class GTSEdge
32  {
33  GtsEdge *edg;
34 
35  bool borrar;
36 
37  void crea(GTSVertex &v1,GTSVertex &v2);
38  void borra(void);
39 
40  friend class GTSFace;
41 
42  public:
43 
44  GTSEdge(GTSVertex &v1,GTSVertex &v2);
45  GTSEdge(const GTSEdge &);
46  GTSEdge &operator=(const GTSEdge &);
47 
48  GTSVertex V1(void) const;
49  GTSVertex V2(void) const;
50 
51  bool CollapseIsValid(void) const;
52  GTSVertex VolumeOptimizedVertex(GtsVolumeOptimizedParams &params) const;
53 
54  ~GTSEdge(void);
55  };
56 
57 
58 #endif
Definition: GTSFace.h:31
Definition: GTSVertex.h:34
Definition: GTSEdge.h:31