xmsgeom  1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
TrTriangulator.h
Go to the documentation of this file.
1 #pragma once
2 //------------------------------------------------------------------------------
8 //------------------------------------------------------------------------------
9 
10 //----- Include Files ----------------------------------------------------------
11 
12 // 3. Standard Library Headers
13 
14 // 4. External Library Headers
15 #include <xmscore/points/pt.h> // Pt*
16 #include <xmscore/stl/vector.h> // VecDbl
17 
18 // 5. Shared Headers
19 
20 // 6. Non-shared Headers
21 
22 //----- Namespace declaration --------------------------------------------------
23 
24 namespace xms
25 {
26 //----- Constants / Enumerations -----------------------------------------------
27 
28 //----- Forward Declarations ---------------------------------------------------
29 
30 //----- Typdefs / Classes ------------------------------------------------------
31 
34 {
35 public:
37  virtual ~TrTriangulator();
38 
39  bool Triangulate();
40 
42  virtual void SetPointLocations(const VecPt3d& /*a_locs*/){};
43 
44  // These functions are used to iterate through the point locations
45  // and provide connectivity
46  virtual int GetID() const = 0;
47  virtual Pt3d GetLocation() const = 0;
48  virtual int GetNPoints() const = 0;
49  virtual void IncrementPoint() = 0;
50 
51  virtual void PrepareToReceiveTriangles() = 0;
52  virtual void FinalizeTriangulation() = 0;
53  virtual void ReceiveTriangle(int a_id1, int a_id2, int a_id3) = 0;
54 
55 private:
56  TrTriangulator(const TrTriangulator& a_rhs);
57  const TrTriangulator& operator=(const TrTriangulator&);
59 }; // TrTriangulator
60 
61 //----- Function Prototypes ----------------------------------------------------
62 
63 } // namespace xms
virtual ~TrTriangulator()
Destructor.
Base class used to derive a class to triangulate points.
bool Triangulate()
Triangulate the points into a tin.
std::vector< Pt3d > VecPt3d
TrTriangulator()
Constructor.