RVC::TIN Class Reference

Manages RVC::OBJTYPE_TIN RVC objects. More...

#include <rvc/tin.h>

Inheritance diagram for RVC::TIN:
Inheritance graph
[legend]

List of all members.

Classes

class  ELEMITERATOR
 Constant iterator class. More...
class  MAKEPARMS
 Necessary tin object creation parameters. More...

Public Types

typedef ELEMITERATOR< RVCTINEDGEEDGEITERATOR
typedef ELEMITERATOR< RVCTINHULLHULLITERATOR
typedef ELEMITERATOR< RVCTINNODENODEITERATOR
typedef ELEMITERATOR
< RVCTINTRIANGLE
TRIANGLEITERATOR

Public Member Functions

 TIN (const RVC::TIN &rhs)
 TIN ()
virtual ~TIN ()
INT32 Add (const RVCTINTRIANGLE &triangle)
INT32 Add (const RVCTINNODE &node)
INT32 Add (const RVCTINHULL &hull)
INT32 Add (const RVCTINEDGE &edge)
int ComputeElevation (DPOINT3D &pt)
ERRVALUE ComputePlaneCoefficients (INT32 TriangleNum, double &A, double &B, double &C, double &D)
template<class _ELEM >
ELEMITERATOR< _ELEM > ElementBegin (ELEMITERATOR< _ELEM > item) const
template<class _ELEM >
ELEMITERATOR< _ELEM > ElementEnd (ELEMITERATOR< _ELEM > item) const
ERRVALUE GetMakeParms (RVC::TIN::MAKEPARMS &MakeParms) const
INT32 GetNextEdgeID () const
INT32 GetNextNodeID () const
INT32 GetNextTriangleID () const
INT32 GetNumEdges () const
INT32 GetNumHullEdges (INT32 hullnum) const
INT32 GetNumHullIslands (INT32 hullnum) const
INT32 GetNumHulls () const
INT32 GetNumNodeEdges (INT32 NodeNum) const
INT32 GetNumNodes () const
INT32 GetNumTriangles () const
double GetTolerance () const
bool IsPointInTriangle (INT32 TriangleNum, const DPOINT2D &point) const
ERRVALUE Make (RVC::OBJITEM &ObjItem, const MAKEPARMS &MakeParms, const char *Source=0, const CREDENTIALS *Credentials=0)
ERRVALUE Make (const RVC::OBJECT &parent, const DESCRIPTOR &Descriptor, const MAKEPARMS &MakeParms, const CREDENTIALS *Credentials RVC_DEFAULT_CREDENTIALS)
RVC::TINoperator= (const RVC::TIN &rhs)
ERRVALUE Read (INT32 trinum, RVCTINTRIANGLE &triangle) const
ERRVALUE Read (INT32 nodenum, RVCTINNODE &node) const
ERRVALUE Read (INT32 hullnum, RVCTINHULL &hull) const
ERRVALUE Read (INT32 EdgeNum, RVCTINEDGE &Edge) const
ERRVALUE ReadHullEdges (INT32 hullnum, INT32 start, INT32 count, SIMPLE_ARRAY< RVCTINHULLEDGE > &edges) const
ERRVALUE ReadHullIslands (INT32 hullnum, INT32 start, INT32 count, SIMPLE_ARRAY< INT32 > &islands) const
ERRVALUE ReadNodeEdges (INT32 nodenum, INT32 start, INT32 count, SIMPLE_ARRAY< INT32 > &Edges) const
ERRVALUE ReadNodeEdges (INT32 nodenum, SIMPLE_ARRAY< INT32 > &EdgeList) const
ERRVALUE SetNextEdgeID (INT32 NextEdgeID)
ERRVALUE SetNextNodeID (INT32 NextNodeID)
ERRVALUE SetNextTriangleID (INT32 NextTriangleID)
ERRVALUE SetTolerance (double tolerance)
ERRVALUE SwapHullEdges (INT32 hullnum1, INT32 hullnum2)
ERRVALUE SwapNodeEdges (INT32 node1, INT32 node2)
ERRVALUE Write (INT32 TriangleNum, const RVCTINTRIANGLE &triangle)
ERRVALUE Write (INT32 nodenum, const RVCTINNODE &node)
ERRVALUE Write (INT32 hullnum, const RVCTINHULL &hull)
ERRVALUE Write (INT32 edgenum, const RVCTINEDGE &edge)
ERRVALUE WriteHullEdges (INT32 hullnum, INT32 total, INT32 start, INT32 count, const SIMPLE_ARRAY< RVCTINHULLEDGE > &edges)
ERRVALUE WriteHullEdges (INT32 hullnum, const SIMPLE_ARRAY< RVCTINHULLEDGE > &edges)
ERRVALUE WriteHullIslands (INT32 hullnum, INT32 total, INT32 start, INT32 count, const INT32 *islands)
ERRVALUE WriteNodeEdges (INT32 nodenum, INT32 NumEdges, INT32 start, INT32 count, const SIMPLE_ARRAY< INT32 > &EdgeList)
ERRVALUE WriteNodeEdges (INT32 nodenum, const SIMPLE_ARRAY< INT32 > &EdgeList)

Protected Member Functions

ERRVALUE ClearNodeEdgeList ()
ERRVALUE SetNumEdges (INT32 NewNumEdges)
ERRVALUE SetNumHulls (INT32 NewNumHulls)
ERRVALUE SetNumNodes (INT32 NewNumNodes)
ERRVALUE SetNumTriangles (INT32 NewNumTriangles)

Detailed Description

Manages RVC::OBJTYPE_TIN RVC objects.

The interface currently wraps the MfTIN functions.

RVC Object Types that this class supports: RVC::OBJTYPE_TIN.

Default RVC Object Type for this class: RVC::OBJTYPE_TIN.

Valid parents for this class:


Member Typedef Documentation


Constructor & Destructor Documentation

RVC::TIN::TIN (  ) 

Default constructor.

RVC::TIN::TIN ( const RVC::TIN rhs  ) 

Copy constructor.

virtual RVC::TIN::~TIN (  )  [virtual]

Destructor.


Member Function Documentation

INT32 RVC::TIN::Add ( const RVCTINTRIANGLE triangle  ) 

Add a triangle to the TIN object.

Returns:
Number of the added triangle element or < 0 if error
INT32 RVC::TIN::Add ( const RVCTINNODE node  ) 

Add a node to the TIN object.

Returns:
Number of the added node element or < 0 if error
INT32 RVC::TIN::Add ( const RVCTINHULL hull  ) 

Add a hull to the TIN object.

Returns:
Number of the added hull element or < 0 if error
INT32 RVC::TIN::Add ( const RVCTINEDGE edge  ) 

Add an edge to the TIN object.

Returns:
Number of the added edge element or < 0 if error
ERRVALUE RVC::TIN::ClearNodeEdgeList (  )  [protected]
int RVC::TIN::ComputeElevation ( DPOINT3D pt  ) 

Compute the elevation at a given (x,y) point.

Returns:
0 if the point was outside a hull, >0 if elevation was calculated, <0 error
Parameters:
pt Point to compute elevation at, result stored in pt.z
ERRVALUE RVC::TIN::ComputePlaneCoefficients ( INT32  TriangleNum,
double &  A,
double &  B,
double &  C,
double &  D 
)

Compute plane coefficients for a given triangle.

template<class _ELEM >
ELEMITERATOR<_ELEM> RVC::TIN::ElementBegin ( ELEMITERATOR< _ELEM >  item  )  const [inline]

Obtain an element iterator to the beginning of the element list.

template<class _ELEM >
ELEMITERATOR<_ELEM> RVC::TIN::ElementEnd ( ELEMITERATOR< _ELEM >  item  )  const [inline]

Obtain an element iterator to the end of the element list.

ERRVALUE RVC::TIN::GetMakeParms ( RVC::TIN::MAKEPARMS MakeParms  )  const

Get MAKEPARM values from current TIN object instance.

INT32 RVC::TIN::GetNextEdgeID (  )  const

Obtain next available edge ID for edge ID table.

Returns:
Next available edge ID
INT32 RVC::TIN::GetNextNodeID (  )  const

Obtain next available node ID for node ID table.

Returns:
Next available node ID
INT32 RVC::TIN::GetNextTriangleID (  )  const

Obtain next available triangle ID for triangle ID table.

Returns:
Next available triangle ID
INT32 RVC::TIN::GetNumEdges (  )  const

Obtain number of edges in the TIN object.

Returns:
Number of edges
INT32 RVC::TIN::GetNumHullEdges ( INT32  hullnum  )  const

Obtain number of edges in a hull.

Returns:
Number of hull edges
Parameters:
hullnum Hull to get number of edges of
INT32 RVC::TIN::GetNumHullIslands ( INT32  hullnum  )  const

Obtain number of islands in a hull.

Returns:
Number of hull islands
Parameters:
hullnum Hull to get number of islands of
INT32 RVC::TIN::GetNumHulls (  )  const

Obtain number of hulls in the TIN object.

Returns:
Number of hulls
INT32 RVC::TIN::GetNumNodeEdges ( INT32  NodeNum  )  const

Obtain number of edges in a node.

Returns:
Number of node edges
Parameters:
NodeNum Node to get number of edges of
INT32 RVC::TIN::GetNumNodes (  )  const

Obtain number of nodes in the TIN object.

Returns:
Number of nodes
INT32 RVC::TIN::GetNumTriangles (  )  const

Obtain number of triangles in the TIN object.

Returns:
Number of triangles
double RVC::TIN::GetTolerance (  )  const

Obtain current xy tolerance for this object.

Returns:
Minimum distance between two nodes
bool RVC::TIN::IsPointInTriangle ( INT32  TriangleNum,
const DPOINT2D point 
) const
ERRVALUE RVC::TIN::Make ( RVC::OBJITEM ObjItem,
const MAKEPARMS MakeParms,
const char *  Source = 0,
const CREDENTIALS Credentials = 0 
)

Create new TIN object given parent object, name, description, creation parameters, and source.

Parameters:
ObjItem Parent object and DESCRIPTOR of object to create, new location RETURNED
Credentials User credentials passed in, NULL for default behavior
ERRVALUE RVC::TIN::Make ( const RVC::OBJECT parent,
const DESCRIPTOR Descriptor,
const MAKEPARMS MakeParms,
const CREDENTIALS *Credentials  RVC_DEFAULT_CREDENTIALS 
)

Create new TIN object given parent object, name, description, creation parameters, and source.

Parameters:
RVC_DEFAULT_CREDENTIALS User credentials passed in, NULL for default behavior
RVC::TIN& RVC::TIN::operator= ( const RVC::TIN rhs  ) 

Assignment.

Reimplemented from RVC::GEOMETRIC.

ERRVALUE RVC::TIN::Read ( INT32  trinum,
RVCTINTRIANGLE triangle 
) const

Read a TIN triangle element.

Parameters:
trinum Triangle number to read
triangle Triangle element RETURNED
ERRVALUE RVC::TIN::Read ( INT32  nodenum,
RVCTINNODE node 
) const

Read a TIN node element.

Parameters:
nodenum Node number to read
node Node element RETURNED
ERRVALUE RVC::TIN::Read ( INT32  hullnum,
RVCTINHULL hull 
) const

Read a TIN hull element.

Parameters:
hullnum Hull number ot read
hull Hull element RETURNED
ERRVALUE RVC::TIN::Read ( INT32  EdgeNum,
RVCTINEDGE Edge 
) const

Read a TIN edge element.

Parameters:
EdgeNum Edge number to read
Edge Edge element RETURNED
ERRVALUE RVC::TIN::ReadHullEdges ( INT32  hullnum,
INT32  start,
INT32  count,
SIMPLE_ARRAY< RVCTINHULLEDGE > &  edges 
) const

Read list of edges that make up the hull.

Parameters:
hullnum Hull number to read edge list of
start Start position to read hull edge list
count Maximum number of edges to read
edges List of hull edges read into
ERRVALUE RVC::TIN::ReadHullIslands ( INT32  hullnum,
INT32  start,
INT32  count,
SIMPLE_ARRAY< INT32 > &  islands 
) const

Read list of islands that are in the hull.

Parameters:
hullnum Hull number to read island list of
start Start position to read hull islands list
count Maximum number of islands to read
islands List of hull islands read into
ERRVALUE RVC::TIN::ReadNodeEdges ( INT32  nodenum,
INT32  start,
INT32  count,
SIMPLE_ARRAY< INT32 > &  Edges 
) const

Read list of edges that are attached to the node.

Parameters:
nodenum Node number to read edge list of
start Start position to read node edge list
count Maximum number of edges to read
Edges List of node edges read into
ERRVALUE RVC::TIN::ReadNodeEdges ( INT32  nodenum,
SIMPLE_ARRAY< INT32 > &  EdgeList 
) const

Read list of edges that are attached to the node.

Parameters:
nodenum Node number to read edge list of
EdgeList List of node edges read into
ERRVALUE RVC::TIN::SetNextEdgeID ( INT32  NextEdgeID  ) 

Set next available edge ID for edge ID table.

ERRVALUE RVC::TIN::SetNextNodeID ( INT32  NextNodeID  ) 

Set next available node ID for node ID table.

ERRVALUE RVC::TIN::SetNextTriangleID ( INT32  NextTriangleID  ) 

Set next available triangle ID for triangle ID table.

ERRVALUE RVC::TIN::SetNumEdges ( INT32  NewNumEdges  )  [protected]
ERRVALUE RVC::TIN::SetNumHulls ( INT32  NewNumHulls  )  [protected]
ERRVALUE RVC::TIN::SetNumNodes ( INT32  NewNumNodes  )  [protected]
ERRVALUE RVC::TIN::SetNumTriangles ( INT32  NewNumTriangles  )  [protected]
ERRVALUE RVC::TIN::SetTolerance ( double  tolerance  ) 

Set current xy tolerance for this object.

ERRVALUE RVC::TIN::SwapHullEdges ( INT32  hullnum1,
INT32  hullnum2 
)

Swap hull edge lists between two hulls.

ERRVALUE RVC::TIN::SwapNodeEdges ( INT32  node1,
INT32  node2 
)

Swap node edge lists between two nodes.

ERRVALUE RVC::TIN::Write ( INT32  TriangleNum,
const RVCTINTRIANGLE triangle 
)

Write a TIN triangle element Does not update element nor object extents.

Parameters:
TriangleNum Triangle number to write
triangle Triangle element to write
ERRVALUE RVC::TIN::Write ( INT32  nodenum,
const RVCTINNODE node 
)

Write a TIN node element Does not update element nor object extents.

Parameters:
nodenum Node number to write
node Node element to write
ERRVALUE RVC::TIN::Write ( INT32  hullnum,
const RVCTINHULL hull 
)

Write a TIN hull element Does not update element nor object extents.

Parameters:
hullnum Hull number to write
hull Hull element to write
ERRVALUE RVC::TIN::Write ( INT32  edgenum,
const RVCTINEDGE edge 
)

Write a TIN edge element Does not update element nor object extents.

Parameters:
edgenum Edge number to write
edge Edge element to write
ERRVALUE RVC::TIN::WriteHullEdges ( INT32  hullnum,
INT32  total,
INT32  start,
INT32  count,
const SIMPLE_ARRAY< RVCTINHULLEDGE > &  edges 
)

Write hull edge list Does not update element nor object extents.

Parameters:
hullnum Hull number to write edge list to
total Total number of edges for this hull
start Start position to write hull edge list
count Number of edges to write
edges Hull edge list to write
ERRVALUE RVC::TIN::WriteHullEdges ( INT32  hullnum,
const SIMPLE_ARRAY< RVCTINHULLEDGE > &  edges 
)

Write hull edge list Does not update element nor object extents.

Parameters:
hullnum Hull number to write edge list to
edges Hull edge list to write
ERRVALUE RVC::TIN::WriteHullIslands ( INT32  hullnum,
INT32  total,
INT32  start,
INT32  count,
const INT32 islands 
)

Write hull island list Does not update element nor object extents.

Parameters:
hullnum Hull number to write island list to
total Total number of islands for this hull
start Start position to write hull island list
count Number of islands to write
islands Hull island list to write
ERRVALUE RVC::TIN::WriteNodeEdges ( INT32  nodenum,
INT32  NumEdges,
INT32  start,
INT32  count,
const SIMPLE_ARRAY< INT32 > &  EdgeList 
)

Write node edge list Does not update element nor object extents.

Parameters:
nodenum Node number to write edge list to
NumEdges Total number of edges for this node
start Start position to write node edge list
count Number of edges to write
ERRVALUE RVC::TIN::WriteNodeEdges ( INT32  nodenum,
const SIMPLE_ARRAY< INT32 > &  EdgeList 
)

Write node edge list Does not update element nor object extents.

Parameters:
nodenum Node number to write edge list to

The documentation for this class was generated from the following file:

Generated on Sun Oct 7 21:38:20 2012 for TNTsdk 2012 by  doxygen 1.6.1