voronoi.cxx
|
 |
Generate a Voronoi diagram, using distanceTransform() and seededRegionGrowing()
Usage: voronoi
, generates: distances.gif
(Euclidean distance transform) and voronoi.gif
(Voronoi diagram)
#include <iostream>
#include <vigra/multi_array.hxx>
#include <vigra/random.hxx>
#include <vigra/distancetransform.hxx>
#include <vigra/labelimage.hxx>
#include <vigra/seededregiongrowing.hxx>
using namespace vigra;
int main(int argc, char ** argv)
{
try
{
int number_of_points = 25;
int size = 512;
for(int i=1; i<=number_of_points; ++i)
{
in(x,y) = i;
}
out = 255;
std::cout << "Wrote distance transform (distances.gif)" << std::endl;
std::cout << "Wrote voronoi diagram (voronoi.gif)" << std::endl;
}
catch (std::exception & e)
{
std::cout << e.what() << std::endl;
return 1;
}
return 0;
}