shape_doc 0.1
minimal_edge_test.cpp
# include <shape/viewer_axel.hpp>
# include <shape/bounding_box.hpp>
# include <shape/surface_algebraic.hpp>
# include <shape/solver_implicit.hpp>
# include <shape/mesher3d_shape.hpp>
# include <shape/cell3d_surface_algebraic.hpp>
# include <shape/find_minimal_edges.hpp>

# define Kernel  double
# define BoundingBox bounding_box<Kernel>
# define AlgebraicSurface surface_algebraic<Kernel>
# define Cell3dAlgebraicSurface cell3d_surface_algebraic< Kernel >

# define Topology3d mesher3d_shape< Kernel >

int main(int argc, char** argv) {
  using namespace mmx;
  using namespace mmx::shape;
  
  BoundingBox bx(-2.1,2,-2,2.1,-2,2);

  AlgebraicSurface* s= new AlgebraicSurface((char *)"x^3+y^5-z^2");
  
  Cell3dAlgebraicSurface*  cl= new Cell3dAlgebraicSurface(s->equation(),bx);
  std::cout<<"Cell:  "<<cl->boundingBox()<<std::endl;

 //  typedef mesher3d_shape<double,default_env> Mesher;

//   Mesher tp(s,bx);
//   tp.set_smoothness(0.05);
//   //  tp.push_back(s);
//   tp.run();

//      EdgeListBuilder<Mesher::Node> elb;
//      elb.cellProc( tp.output()->m_tree.root() );
//      std::cout << "Active edges: " << elb.edgeList().size() << std::endl;
//      std::cout << "Active faces: " << elb.faceList().size() << std::endl;
  /*
  axel::ostream axl((char *)"surface.axl");
  axl<<(&tp);
  axl.view();
  */

}