Go to Overview over all GrAL packages.
Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Triang2D Class Reference

A simple grid class for triangulations. More...

#include <triang2d.h>

Inheritance diagram for Triang2D:

Inheritance graph
[legend]
Collaboration diagram for Triang2D:

Collaboration graph
[legend]
List of all members.

Public Methods

 Triang2D ()
 Triang2D (int *c, int nc)
 Triang2D (int *c, int nc, int nv)
 Triang2D (Triang2D const &rhs)
Triang2D & operator= (Triang2D const &rhs)
 ~Triang2D ()
void DoCopy ()
void Steal (int *c, int nc, int nv)
int NumOfCells () const
int NumOfVertices () const
VertexIterator FirstVertex () const
EdgeIterator FirstEdge () const
FacetIterator FirstFacet () const
CellIterator FirstCell () const

Friends

class Triang2D_VertexOnCellIterator
class Triang2D_FacetOnCellIterator
class Triang2D_Cell
class Triang2D_Vertex

Detailed Description

A simple grid class for triangulations.

This class may act as a wrapper with reference-semantics for a plain array containing the cell-vertex connectivity. Value semantics may be enforced by a call to the member function DoCopy().

A copy by assignment or copy-ctor will always entail value-semantics on the copied-to side, i.e. make a full copy.

As this class also serves as a tutorial on how to adapt existing data structures to GrAL, the technical level was kept low, i.e. there are no complicated constructions for building element and iterators types out of generic components.

Definition at line 47 of file triang2d.h.


Constructor & Destructor Documentation

Triang2D::Triang2D   [inline]
 

Definition at line 54 of file triang2d.h.

Triang2D::Triang2D int *    c,
int    nc
[inline]
 

Definition at line 56 of file triang2d.h.

Triang2D::Triang2D int *    c,
int    nc,
int    nv
[inline]
 

Definition at line 59 of file triang2d.h.

Triang2D::Triang2D Triang2D const &    rhs
 

Definition at line 7 of file triang2d.C.

References cells, ncells, and nvertices.

Triang2D::~Triang2D  
 

Definition at line 27 of file triang2d.C.


Member Function Documentation

Triang2D & Triang2D::operator= Triang2D const &    rhs
 

Definition at line 15 of file triang2d.C.

References cells, ncells, and nvertices.

void Triang2D::DoCopy  
 

make a physical copy, if only referencing the grid, thus gaining ownership of cells.

Definition at line 70 of file triang2d.C.

void Triang2D::Steal int *    c,
int    nc,
int    nv
 

set this to the connectivity given by c. Assume ownership of c *without* doing a copy.

Definition at line 72 of file triang2d.C.

Referenced by copy_cells.

int Triang2D::NumOfCells   const [inline]
 

Definition at line 86 of file triang2d.h.

Referenced by copy_cells.

int Triang2D::NumOfVertices   const [inline]
 

Definition at line 87 of file triang2d.h.

Triang2D::VertexIterator Triang2D::FirstVertex   const [inline]
 

Definition at line 331 of file triang2d.h.

References grid_types_base_Triang2D::VertexIterator.

Triang2D::EdgeIterator Triang2D::FirstEdge   const [inline]
 

Definition at line 335 of file triang2d.h.

References grid_types_base_Triang2D::EdgeIterator.

Triang2D::FacetIterator Triang2D::FirstFacet   const [inline]
 

Definition at line 339 of file triang2d.h.

References grid_types_base_Triang2D::FacetIterator.

Triang2D::CellIterator Triang2D::FirstCell   const [inline]
 

Definition at line 345 of file triang2d.h.

References grid_types_base_Triang2D::CellIterator.


Friends And Related Function Documentation

friend class Triang2D_VertexOnCellIterator [friend]
 

Definition at line 81 of file triang2d.h.

friend class Triang2D_FacetOnCellIterator [friend]
 

Definition at line 82 of file triang2d.h.

friend class Triang2D_Cell [friend]
 

Definition at line 83 of file triang2d.h.

friend class Triang2D_Vertex [friend]
 

Definition at line 84 of file triang2d.h.


The documentation for this class was generated from the following files:
Copyright (c) Guntram Berti 1997-2002. See the GrAL Homepage for up-to-date information.

Generated at Tue Feb 26 16:09:20 2002 for GrAL Triang2D by doxygen 1.2.11-20011104 written by Dimitri van Heesch, © 1997-2000