add-into-simplex.h

Go to the documentation of this file.
00001 #include <delaunay/IncrementalDelaunay.h>
00002 #include <delaunay/PointVertex.h>
00003 #include <topology/SimplicialHelpers.h>
00004 
00005 #define QUIET
00006 
00007 template <class D, size_t ambient, size_t topo>
00008 void run(const vector<Geometry::Point<ambient> >& pts) {
00009 
00010   D *del = D::makeBoundingSimplex(pts.begin(), pts.end(), 1.0);
00011 
00012 #ifndef QUIET
00013   puts("before");
00014   Simplicial::printComplex(del->getComplex());
00015 #endif
00016 
00017 
00018   size_t npoints = topo + 1;
00019 
00020   assert(Simplicial::countSimplices(del->getComplex()) == 1);
00021   assert(Simplicial::countVertices(del->getComplex()) == npoints);
00022   assert(del->isOriented());
00023   assert(del->isDelaunay());
00024 
00025   for (size_t i = 0; i < pts.size(); ++i) {
00026     del->expensiveInsertVertex(new PointVertex<ambient>(pts[i]));
00027     npoints++;
00028     assert(Simplicial::countVertices(del->getComplex()) == npoints);
00029     assert(del->isOriented());
00030     assert(del->isDelaunay());
00031   }
00032 
00033 #ifndef QUIET
00034   puts("after");
00035   Simplicial::printComplex(del->getComplex());
00036 #endif
00037 }

Generated on Thu Mar 27 19:04:12 2008 by  doxygen 1.4.6