VTK
vtkPolygonBuilder.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPolygonBuilder.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
27 #ifndef vtkPolygonBuilder_h
28 #define vtkPolygonBuilder_h
29 
30 #include "vtkCommonMiscModule.h" // For export macro
31 #include <map> //for private data members
32 #include <utility> //for private data members
33 #include "vtkType.h" //for basic types
34 #include <cstddef> //for size_t
35 #include "vtkObject.h"
36 
38 
40 {
41 public:
43 
45  void InsertTriangle(vtkIdType* abc);
46 
50  void GetPolygons(vtkIdListCollection* polys);
51 
53  void Reset();
54 
55 private:
56  typedef std::pair<vtkIdType,vtkIdType> Edge;
57  typedef std::map<Edge,size_t> EdgeHistogram;
58  typedef std::multimap<vtkIdType,vtkIdType> EdgeMap;
59 
60  EdgeHistogram EdgeCounter;
61  EdgeMap Edges;
62 };
63 
64 #endif
65 // VTK-HeaderTest-Exclude: vtkPolygonBuilder.h
#define VTKCOMMONMISC_EXPORT
int vtkIdType
Definition: vtkType.h:247
maintain an unordered list of dataarray objects