ivutils
Loading...
Searching...
No Matches
Contour< point_it, store_t, edge_it, edge_t > Class Template Reference

Basic contour interface. More...

#include <contour.h>

Inherited by Contour_N< Vector_Nt< vec_type, N > *, Vector_Nt< vec_type, N >, array_store_t< Vector_Nt< vec_type, N >, num > >, Contour_N< contour_projection_it< contour_t::point_iterator > >, Contour_N< modified_value_it< indexed_it< src_point_it, index_it >, transform_t > >, Contour_N< std::vector< Vector_Nt< vec_type, N > >::const_iterator, Vector_Nt< vec_type, N >, vec_store_t< Vector_Nt< vec_type, N > > >, Contour_N< Vector_Nt< vec_type, 3 > * >, Contour_N< std::vector< Vector_Nt< vec_type, 3 > >::const_iterator, Vector_Nt< vec_type, 3 >, vec_store_t< Vector_Nt< vec_type, 3 > > >, and Contour_N< point_it, vector_tt, store_t, edge_it, edge_t >.

Public Member Functions

point_it points_begin () const
 Gets begin of point iterator range by calling store_t function.
 
point_it points_end () const
 Gets end of point iterator range by calling store_t function.
 
vector_t GetPoint (int ind) const
 gets vertex with given index or infinite vector if index is not found
 
int SetPoint (int ind, const vector_t &vec)
 sets the value for given vertex returns <0 if this is not possible

 
vec_type Area () const
 calculates the area of the contour (assumed flat)
 
vector_t::vec_product_t VecArea (vector_t *base=NULL) const
 Calculates directed area of the contour based from first contour point (for volume calculations).
 
vector_t GetCenter () const
 gets contour center
 

Protected Member Functions

 Contour ()
 Default constructor may be used in derived classes only.
 

Protected Attributes

store_t store
 Knows how to get iterator range.
 

Detailed Description

template<class point_it, class store_t = range_store_t<point_it>, class edge_it = generic_edge_it<point_it>, class edge_t = typename generic_edge_it<point_it>::edge>
class Contour< point_it, store_t, edge_it, edge_t >

Basic contour interface.

Using generic edge iterators helps to construct a contour from any sequence of points. Parameter store_t is used for abstraction from the type of storage for the sequence of points.

Member Function Documentation

◆ VecArea()

template<class point_it , class store_t = range_store_t<point_it>, class edge_it = generic_edge_it<point_it>, class edge_t = typename generic_edge_it<point_it>::edge>
vector_t::vec_product_t Contour< point_it, store_t, edge_it, edge_t >::VecArea ( vector_t *  base = NULL) const
inline

Calculates directed area of the contour based from first contour point (for volume calculations).

Positive direction of the contor is assumed to be anti-clockwise (right-hand rule). Fills the base point if pointer is not NULL.


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