politopix
4.1.0
|
Do the same as CellByCellVoronoiDist with the neighbourhood computation. More...
#include <Voronoi_Rn.h>
Public Member Functions | |
CellByCellVoronoiDistNgb (const boost::shared_ptr< Polytope_Rn > &is, const std::vector< Point_Rn > &lop) | |
Constructor. More... | |
virtual | ~CellByCellVoronoiDistNgb () |
Destructor. More... | |
virtual bool | compute () throw (std::length_error) |
Run the whole algorithm. More... | |
virtual bool | compute (std::vector< Point_Rn >::const_iterator iteBeg, std::vector< Point_Rn >::const_iterator iteEnd) throw (std::length_error) |
Run the algorithm on a sub list from iteBeg to iteEnd. More... | |
const std::vector< std::vector < std::pair< boost::shared_ptr < HalfSpace_Rn >, unsigned int > > > & | getFacetNeighbours () const |
virtual void | allocateFacetNeighbours () |
void | dumpFacetNeighbours (std::ostream &this_ostream) const |
virtual void | updateFacetNeighbours (const std::vector< std::pair< double, unsigned int > > &allDistances, boost::shared_ptr< Polytope_Rn > newVoronoiCell, unsigned int counter, unsigned int newTruncationStep) |
![]() | |
CellByCellVoronoiDist (const boost::shared_ptr< Polytope_Rn > &is, const std::vector< Point_Rn > &lop) | |
Constructor. More... | |
CellByCellVoronoiDist (const boost::shared_ptr< Polytope_Rn > &is, const std::vector< Point_Rn > &lop, double percent) | |
virtual | ~CellByCellVoronoiDist () |
Destructor. More... | |
void | processDistances (std::vector< std::pair< double, unsigned int > > &allDistances, std::vector< Point_Rn >::const_iterator newVoronoiSeed, boost::shared_ptr< Polytope_Rn > newVoronoiCell) |
The distance criterion is going to be used to classify partially or globally the way in which we process the cells' half-spaces. More... | |
void | setAverageNumberOfNeighbours (double pc) |
When we want to do a partial sort so try to assess the average number of facet neighbours for each cell. More... | |
![]() | |
CellByCellVoronoi (const boost::shared_ptr< Polytope_Rn > &is, const std::vector< Point_Rn > &lop) | |
Constructor. More... | |
virtual | ~CellByCellVoronoi () |
Destructor. More... | |
![]() | |
Voronoi_Rn (const boost::shared_ptr< Polytope_Rn > &inputSpace, const std::vector< Point_Rn > &listOfPoints) | |
Refers to the class WithProperties. More... | |
virtual | ~Voronoi_Rn () |
Destructor. More... | |
boost::shared_ptr< HalfSpace_Rn > | computeMidPlane (std::vector< Point_Rn >::const_iterator seed1, std::vector< Point_Rn >::const_iterator seed2) |
Compute the half-space containing seed1, in between seed1 and seed2, according to the growing seed property. More... | |
const std::vector < boost::shared_ptr < Polytope_Rn > > & | getVoronoiCells () const |
std::vector< boost::shared_ptr < Polytope_Rn > > | getVoronoiCells () |
const std::vector< Point_Rn > & | getListOfSeeds () const |
bool | checkTopologyAndGeometry () const throw (std::domain_error) |
void | dump (std::ostream &out) const |
Dump the cell structure on the given output. More... | |
void | gnuplot (std::ostream &out) const throw (std::domain_error) |
Protected Attributes | |
std::vector< std::vector < std::pair< boost::shared_ptr < HalfSpace_Rn >, unsigned int > > > | _facetNeighbours |
For the current cell, store its neighbour numbers. _facetNeighbours[i] = { (H0, i0), (H1, i1), ... }. More... | |
![]() | |
double | _percentageOfSortedHalfSpaces |
The amount of half-spaces we want to sort. More... | |
std::vector< boost::shared_ptr < HalfSpace_Rn > > | _allHalfSpaces |
For each seed, the list of the half-spaces used to build its cell. More... | |
![]() | |
const boost::shared_ptr < Polytope_Rn > & | _inputSpace |
The original space to be divided. More... | |
const std::vector< Point_Rn > & | _listOfSeeds |
The list of input points. More... | |
std::vector< boost::shared_ptr < Polytope_Rn > > | _listOfVoronoiCells |
The list of polytopes partitioning the whole space. More... | |
Additional Inherited Members | |
![]() | |
enum | TypeOfAlgorithm { Incremental = 0, CellByCell = 1, CellByCellDist = 2, CellByCellDistNgb = 3, CellByCellDistNgb_1pc = 4, CellByCellDistNgb_10pc = 5, CellByCellDistNgb_20pc = 6, CellByCellDistNgb_30pc = 7, CellByCellDistNgb_40pc = 8, WithProperties = 10 } |
Choose the kind of algorithm to be run. More... | |
Do the same as CellByCellVoronoiDist with the neighbourhood computation.
Definition at line 230 of file Voronoi_Rn.h.
|
inline |
Constructor.
Constructor
is | The input space in which the Voronoi diagram is computed |
lop | The list of Voronoi seeds |
Definition at line 239 of file Voronoi_Rn.h.
|
inlinevirtual |
Destructor.
Definition at line 242 of file Voronoi_Rn.h.
|
inlinevirtual |
Definition at line 255 of file Voronoi_Rn.h.
|
virtual |
Run the whole algorithm.
Reimplemented from CellByCellVoronoiDist.
Definition at line 498 of file Voronoi_Rn.cpp.
|
virtual |
Run the algorithm on a sub list from iteBeg to iteEnd.
Definition at line 504 of file Voronoi_Rn.cpp.
void CellByCellVoronoiDistNgb::dumpFacetNeighbours | ( | std::ostream & | this_ostream | ) | const |
Definition at line 573 of file Voronoi_Rn.cpp.
|
inline |
|
virtual |
Definition at line 588 of file Voronoi_Rn.cpp.
|
protected |
For the current cell, store its neighbour numbers. _facetNeighbours[i] = { (H0, i0), (H1, i1), ... }.
Definition at line 265 of file Voronoi_Rn.h.