PTTRIANGULATOR Class Reference

#include <mi32/pttriang.h>

List of all members.

Public Types

typedef SIMPLE_ARRAY< INT32BOUNDARY
typedef MILIST< BOUNDARYBOUNDARYLIST
enum  EDGETYPE { EDGETYPE_Regular = 0, EDGETYPE_Break = 1, EDGETYPE_Clip = 2 }
enum  POINTTYPE { POINTTYPE_Regular = 0, POINTTYPE_Break = 1, POINTTYPE_Clip = 2, POINTTYPE_Intersection = 3 }
enum  RULE { RULE_Delaunay = 0, RULE_ShorterEdge = 1 }

Public Member Functions

ERRVALUE AddHardEdge (const INT32 &start, const INT32 &end)
void AddHardEdge (const DPOINT2D &start, const DPOINT2D &end)
void AddHardLine (const POLYLINE &polyline)
void AddHardLine (const DOUBLE_ARRAY< DPOINT3D > &points)
void AddHardLine (const DOUBLE_ARRAY< DPOINT2D > &points)
INT32 AddPoint (const DPOINT2D &point)
INT32 AddPoints (const DOUBLE_ARRAY< DPOINT3D > &points)
INT32 AddPoints (const DOUBLE_ARRAY< DPOINT2D > &points)
void ClearAll ()
void ClearAllSelection ()
void ClearClipRegion ()
void ClearEdgesSelection ()
void ClearHardEdges ()
void ClearHardEdgesSelection ()
void ClearPoints ()
void ClearTrianglesSelection ()
INT32 ExtrapolatePointsInExtents (const DRECT2D &extents, SIMPLE_ARRAY< DPOINT2D > &points)
INT32 FindClosestTriangle (const DPOINT2D &point)
INT32 FindDifferentNode (const DPOINT2D &point, const INT32 node)
INT32 FindEdge (const DPOINT2D &point)
INT32 FindHardEdge (const DPOINT2D &point)
INT32 FindNode (const DPOINT2D &point)
INT32 FindTriangle (const DPOINT2D &point)
void GetBoundaries (BOUNDARYLIST &boundaries) const
bool GetEdgeInfo (const INT32 edge, EDGEINFO &edgeinfo) const
void GetHardEdges (SIMPLE_ARRAY< INT32 > &hardedges) const
INT32 GetIndex (const INT32 node) const
INT32 GetModifyStamp ()
INT32 GetNode (const INT32 index) const
INT32 GetNumEdges () const
INT32 GetNumNodes () const
INT32 GetNumSelectedEdges ()
INT32 GetNumSelectedHardEdges ()
INT32 GetNumSelectedTriangles ()
INT32 GetNumTriangles () const
bool GetPoint (const INT32 node, DPOINT2D &point) const
POINTTYPE GetPointType (const INT32 node) const
RULE GetRule ()
double GetTolerance ()
bool GetTriangleEdges (const INT32 triangle, TRIANGLEEDGES &edges) const
bool GetTriangleInfo (const INT32 triangle, TRIANGLEINFO &triangleinfo) const
bool GetTriangleNodes (const INT32 triangle, TRIANGLENODES &nodes) const
bool GetTriangleTriangles (const INT32 triangle, TRIANGLETRIANGLES &triangles) const
bool IsEdgeSelected (const INT32 edge)
bool IsHardEdge (const INT32 start, const INT32 end)
bool IsHardEdgeSelected (const INT32 edge)
bool IsSegmentIntersectedByHardEdges (const INT32 start, const INT32 end)
bool IsTriangleSelected (const INT32 triangle)
bool IsTriangulated ()
PTTRIANGULATORoperator= (const PTTRIANGULATOR &rhs)
 PTTRIANGULATOR ()
INT32 RemoveSelectedEdges ()
INT32 RemoveSelectedHardEdges ()
INT32 RemoveSelectedTriangles ()
void SelectEdge (const INT32 edge)
void SelectHardEdge (const INT32 edge)
void SelectTriangle (const INT32 triangle)
void SetBoundaries (const BOUNDARYLIST &boundaries)
void SetClipRegion (const REGION2D &region)
ERRVALUE Triangulate (const double tolerance=0.0, const RULE rule=RULE_Delaunay)
void UnSelectEdge (const INT32 edge)
void UnSelectHardEdge (const INT32 edge)
void UnSelectTriangle (const INT32 triangle)
 ~PTTRIANGULATOR ()


Member Typedef Documentation

typedef SIMPLE_ARRAY<INT32> PTTRIANGULATOR::BOUNDARY
 

Definition at line 106 of file pttriang.h.

typedef MILIST<BOUNDARY> PTTRIANGULATOR::BOUNDARYLIST
 

Definition at line 107 of file pttriang.h.


Member Enumeration Documentation

enum PTTRIANGULATOR::EDGETYPE
 

Type of edge in triangulation.

Enumeration values:
EDGETYPE_Regular 
EDGETYPE_Break 
EDGETYPE_Clip 

Definition at line 100 of file pttriang.h.

enum PTTRIANGULATOR::POINTTYPE
 

Type of point in triangulation.

Enumeration values:
POINTTYPE_Regular 
POINTTYPE_Break 
POINTTYPE_Clip 
POINTTYPE_Intersection 

Definition at line 92 of file pttriang.h.

enum PTTRIANGULATOR::RULE
 

Rule is used to swap diagonal in quadritlateral.

Enumeration values:
RULE_Delaunay 
RULE_ShorterEdge 

Definition at line 86 of file pttriang.h.


Constructor & Destructor Documentation

PTTRIANGULATOR::PTTRIANGULATOR  ) 
 

Constructor.

PTTRIANGULATOR::~PTTRIANGULATOR  ) 
 

Destructor.


Member Function Documentation

ERRVALUE PTTRIANGULATOR::AddHardEdge const INT32 start,
const INT32 end
 

Add hard edge for triangulation as two indices for added before points.

void PTTRIANGULATOR::AddHardEdge const DPOINT2D start,
const DPOINT2D end
 

Add hard edge for triangulation as two DPOINT2Ds.

void PTTRIANGULATOR::AddHardLine const POLYLINE polyline  ) 
 

Add hard line for triangulation as polyline.

void PTTRIANGULATOR::AddHardLine const DOUBLE_ARRAY< DPOINT3D > &  points  ) 
 

Add hard line for triangulation as array of points.

void PTTRIANGULATOR::AddHardLine const DOUBLE_ARRAY< DPOINT2D > &  points  ) 
 

Add hard line for triangulation as array of points.

INT32 PTTRIANGULATOR::AddPoint const DPOINT2D point  ) 
 

Add point for triangulation Return index of point added for triangulation.

INT32 PTTRIANGULATOR::AddPoints const DOUBLE_ARRAY< DPOINT3D > &  points  ) 
 

Add points for triangulation Return index of first point added for triangulation.

INT32 PTTRIANGULATOR::AddPoints const DOUBLE_ARRAY< DPOINT2D > &  points  ) 
 

Add points for triangulation Return index of first point added for triangulation.

void PTTRIANGULATOR::ClearAll  ) 
 

Clear all input data.

void PTTRIANGULATOR::ClearAllSelection  )  [inline]
 

Definition at line 266 of file pttriang.h.

void PTTRIANGULATOR::ClearClipRegion  )  [inline]
 

Clear clip region.

Definition at line 180 of file pttriang.h.

void PTTRIANGULATOR::ClearEdgesSelection  )  [inline]
 

Definition at line 269 of file pttriang.h.

void PTTRIANGULATOR::ClearHardEdges  ) 
 

Clear all hard edges and lines.

void PTTRIANGULATOR::ClearHardEdgesSelection  )  [inline]
 

Definition at line 272 of file pttriang.h.

void PTTRIANGULATOR::ClearPoints  ) 
 

Clear all points.

void PTTRIANGULATOR::ClearTrianglesSelection  )  [inline]
 

Definition at line 275 of file pttriang.h.

INT32 PTTRIANGULATOR::ExtrapolatePointsInExtents const DRECT2D extents,
SIMPLE_ARRAY< DPOINT2D > &  points
 

INT32 PTTRIANGULATOR::FindClosestTriangle const DPOINT2D point  ) 
 

INT32 PTTRIANGULATOR::FindDifferentNode const DPOINT2D point,
const INT32  node
 

INT32 PTTRIANGULATOR::FindEdge const DPOINT2D point  ) 
 

INT32 PTTRIANGULATOR::FindHardEdge const DPOINT2D point  ) 
 

INT32 PTTRIANGULATOR::FindNode const DPOINT2D point  ) 
 

INT32 PTTRIANGULATOR::FindTriangle const DPOINT2D point  ) 
 

void PTTRIANGULATOR::GetBoundaries BOUNDARYLIST boundaries  )  const
 

bool PTTRIANGULATOR::GetEdgeInfo const INT32  edge,
EDGEINFO edgeinfo
const
 

Get edge information for given edge Return true if given edge exists.

void PTTRIANGULATOR::GetHardEdges SIMPLE_ARRAY< INT32 > &  hardedges  )  const
 

INT32 PTTRIANGULATOR::GetIndex const INT32  node  )  const
 

Get index of node assigned when this node was added for triangulation Return index of node or -1 if node is part of break edge of clip region.

INT32 PTTRIANGULATOR::GetModifyStamp  )  [inline]
 

Get modify stamp Return modify stamp.

Definition at line 389 of file pttriang.h.

INT32 PTTRIANGULATOR::GetNode const INT32  index  )  const
 

INT32 PTTRIANGULATOR::GetNumEdges  )  const
 

Get number of edges in triangulation Return number of edges.

INT32 PTTRIANGULATOR::GetNumNodes  )  const
 

Get number of nodes in triangulation Return number of nodes.

INT32 PTTRIANGULATOR::GetNumSelectedEdges  ) 
 

INT32 PTTRIANGULATOR::GetNumSelectedHardEdges  ) 
 

INT32 PTTRIANGULATOR::GetNumSelectedTriangles  ) 
 

INT32 PTTRIANGULATOR::GetNumTriangles  )  const
 

Get number of triangles triangulation Return number of triangles.

bool PTTRIANGULATOR::GetPoint const INT32  node,
DPOINT2D point
const
 

Get point for given node Return true if given node exists.

POINTTYPE PTTRIANGULATOR::GetPointType const INT32  node  )  const
 

RULE PTTRIANGULATOR::GetRule  )  [inline]
 

Get rule used for triangulation Return rule.

Definition at line 379 of file pttriang.h.

double PTTRIANGULATOR::GetTolerance  )  [inline]
 

Get tolerance used for triangulation Return tolerance.

Definition at line 384 of file pttriang.h.

bool PTTRIANGULATOR::GetTriangleEdges const INT32  triangle,
TRIANGLEEDGES edges
const
 

Get edges information for given triangle Return true if given triangle exists.

bool PTTRIANGULATOR::GetTriangleInfo const INT32  triangle,
TRIANGLEINFO triangleinfo
const
 

Get triangle information for given edge Return true if given triangle exists.

bool PTTRIANGULATOR::GetTriangleNodes const INT32  triangle,
TRIANGLENODES nodes
const
 

Get nodes information for given triangle Return true if given triangle exists.

bool PTTRIANGULATOR::GetTriangleTriangles const INT32  triangle,
TRIANGLETRIANGLES triangles
const
 

Get neighbor triangles information for given triangle Return true if given triangle exists.

bool PTTRIANGULATOR::IsEdgeSelected const INT32  edge  ) 
 

bool PTTRIANGULATOR::IsHardEdge const INT32  start,
const INT32  end
 

bool PTTRIANGULATOR::IsHardEdgeSelected const INT32  edge  ) 
 

bool PTTRIANGULATOR::IsSegmentIntersectedByHardEdges const INT32  start,
const INT32  end
 

bool PTTRIANGULATOR::IsTriangleSelected const INT32  triangle  ) 
 

bool PTTRIANGULATOR::IsTriangulated  )  [inline]
 

Is triangulated Return true if it is.

Definition at line 394 of file pttriang.h.

PTTRIANGULATOR& PTTRIANGULATOR::operator= const PTTRIANGULATOR rhs  ) 
 

Assignment operator.

INT32 PTTRIANGULATOR::RemoveSelectedEdges  ) 
 

INT32 PTTRIANGULATOR::RemoveSelectedHardEdges  ) 
 

INT32 PTTRIANGULATOR::RemoveSelectedTriangles  ) 
 

void PTTRIANGULATOR::SelectEdge const INT32  edge  ) 
 

void PTTRIANGULATOR::SelectHardEdge const INT32  edge  ) 
 

void PTTRIANGULATOR::SelectTriangle const INT32  triangle  ) 
 

void PTTRIANGULATOR::SetBoundaries const BOUNDARYLIST boundaries  ) 
 

void PTTRIANGULATOR::SetClipRegion const REGION2D region  )  [inline]
 

Set clip region.

Definition at line 373 of file pttriang.h.

ERRVALUE PTTRIANGULATOR::Triangulate const double  tolerance = 0.0,
const RULE  rule = RULE_Delaunay
 

Triangulate given set of input data for given rule and tolerance Return error code.

void PTTRIANGULATOR::UnSelectEdge const INT32  edge  ) 
 

void PTTRIANGULATOR::UnSelectHardEdge const INT32  edge  ) 
 

void PTTRIANGULATOR::UnSelectTriangle const INT32  triangle  ) 
 


The documentation for this class was generated from the following file:
Generated on Tue Dec 14 13:20:09 2004 for TNTsdk by  doxygen 1.3.8-20040913