Public Types | Public Member Functions | Protected Attributes | Private Attributes
imesh_vertex_array< d > Class Template Reference

An array of vertices of dimension d. More...

#include <imesh_vertex.h>

Inheritance diagram for imesh_vertex_array< d >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef vcl_vector
< imesh_vertex< d >
>::iterator 
iterator
typedef vcl_vector
< imesh_vertex< d >
>::const_iterator 
const_iterator

Public Member Functions

 imesh_vertex_array ()
 Default Constructor.
 imesh_vertex_array (unsigned int size)
 Constructor (from size).
 imesh_vertex_array (const vcl_vector< imesh_vertex< d > > &verts)
 Constructor (from vector).
virtual imesh_vertex_array_baseclone () const
 Produce a clone of this object (dynamic copy).
virtual unsigned int size () const
 returns the number of vertices.
virtual unsigned int dim () const
 returns the dimension of the vertices.
virtual double operator() (unsigned int v, unsigned int i) const
 Access a vertex coordinate by vertex index and coordinate index.
virtual void append (const imesh_vertex_array_base &verts)
 Append these vertices (assuming the same type).
void push_back (const imesh_vertex< d > &v)
 Add a vertex to the array.
imesh_vertex< d > & operator[] (unsigned int v)
 Access a vertex.
const imesh_vertex< d > & operator[] (unsigned int v) const
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
bool has_normals () const
 Return true if the vertices have normals.
void set_normals (const vcl_vector< vgl_vector_3d< double > > &n)
 Set the vertex normals.
vgl_vector_3d< double > & normal (unsigned int v)
 Access a vertex normal.
const vgl_vector_3d< double > & normal (unsigned int v) const
const vcl_vector
< vgl_vector_3d< double > > & 
normals () const
 Access the normals.

Protected Attributes

vcl_vector< vgl_vector_3d
< double > > 
normals_

Private Attributes

vcl_vector< imesh_vertex< d > > verts_

Detailed Description

template<unsigned int d>
class imesh_vertex_array< d >

An array of vertices of dimension d.

Definition at line 191 of file imesh_vertex.h.


Member Typedef Documentation

template<unsigned int d>
typedef vcl_vector<imesh_vertex<d> >::const_iterator imesh_vertex_array< d >::const_iterator

Definition at line 241 of file imesh_vertex.h.

template<unsigned int d>
typedef vcl_vector<imesh_vertex<d> >::iterator imesh_vertex_array< d >::iterator

Definition at line 240 of file imesh_vertex.h.


Constructor & Destructor Documentation

template<unsigned int d>
imesh_vertex_array< d >::imesh_vertex_array ( ) [inline]

Default Constructor.

Definition at line 197 of file imesh_vertex.h.

template<unsigned int d>
imesh_vertex_array< d >::imesh_vertex_array ( unsigned int  size) [inline]

Constructor (from size).

Definition at line 200 of file imesh_vertex.h.

template<unsigned int d>
imesh_vertex_array< d >::imesh_vertex_array ( const vcl_vector< imesh_vertex< d > > &  verts) [inline]

Constructor (from vector).

Definition at line 204 of file imesh_vertex.h.


Member Function Documentation

template<unsigned int d>
virtual void imesh_vertex_array< d >::append ( const imesh_vertex_array_base verts) [inline, virtual]

Append these vertices (assuming the same type).

Reimplemented from imesh_vertex_array_base.

Definition at line 223 of file imesh_vertex.h.

template<unsigned int d>
iterator imesh_vertex_array< d >::begin ( ) [inline]

Definition at line 243 of file imesh_vertex.h.

template<unsigned int d>
const_iterator imesh_vertex_array< d >::begin ( ) const [inline]

Definition at line 244 of file imesh_vertex.h.

template<unsigned int d>
virtual imesh_vertex_array_base* imesh_vertex_array< d >::clone ( ) const [inline, virtual]

Produce a clone of this object (dynamic copy).

Implements imesh_vertex_array_base.

Definition at line 208 of file imesh_vertex.h.

template<unsigned int d>
virtual unsigned int imesh_vertex_array< d >::dim ( ) const [inline, virtual]

returns the dimension of the vertices.

Implements imesh_vertex_array_base.

Definition at line 217 of file imesh_vertex.h.

template<unsigned int d>
iterator imesh_vertex_array< d >::end ( ) [inline]

Definition at line 246 of file imesh_vertex.h.

template<unsigned int d>
const_iterator imesh_vertex_array< d >::end ( ) const [inline]

Definition at line 247 of file imesh_vertex.h.

bool imesh_vertex_array_base::has_normals ( ) const [inline, inherited]

Return true if the vertices have normals.

Definition at line 171 of file imesh_vertex.h.

vgl_vector_3d<double>& imesh_vertex_array_base::normal ( unsigned int  v) [inline, inherited]

Access a vertex normal.

Definition at line 178 of file imesh_vertex.h.

const vgl_vector_3d<double>& imesh_vertex_array_base::normal ( unsigned int  v) const [inline, inherited]

Definition at line 179 of file imesh_vertex.h.

const vcl_vector<vgl_vector_3d<double> >& imesh_vertex_array_base::normals ( ) const [inline, inherited]

Access the normals.

Definition at line 182 of file imesh_vertex.h.

template<unsigned int d>
virtual double imesh_vertex_array< d >::operator() ( unsigned int  v,
unsigned int  i 
) const [inline, virtual]

Access a vertex coordinate by vertex index and coordinate index.

Implements imesh_vertex_array_base.

Definition at line 220 of file imesh_vertex.h.

template<unsigned int d>
imesh_vertex<d>& imesh_vertex_array< d >::operator[] ( unsigned int  v) [inline]

Access a vertex.

Definition at line 235 of file imesh_vertex.h.

template<unsigned int d>
const imesh_vertex<d>& imesh_vertex_array< d >::operator[] ( unsigned int  v) const [inline]

Definition at line 236 of file imesh_vertex.h.

template<unsigned int d>
void imesh_vertex_array< d >::push_back ( const imesh_vertex< d > &  v) [inline]

Add a vertex to the array.

Definition at line 232 of file imesh_vertex.h.

void imesh_vertex_array_base::set_normals ( const vcl_vector< vgl_vector_3d< double > > &  n) [inline, inherited]

Set the vertex normals.

Definition at line 174 of file imesh_vertex.h.

template<unsigned int d>
virtual unsigned int imesh_vertex_array< d >::size ( ) const [inline, virtual]

returns the number of vertices.

Implements imesh_vertex_array_base.

Definition at line 214 of file imesh_vertex.h.


Member Data Documentation

vcl_vector<vgl_vector_3d<double> > imesh_vertex_array_base::normals_ [protected, inherited]

Definition at line 185 of file imesh_vertex.h.

template<unsigned int d>
vcl_vector<imesh_vertex<d> > imesh_vertex_array< d >::verts_ [private]

Definition at line 193 of file imesh_vertex.h.


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