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