shape_doc 0.1
topology3d_test.cpp
# include <shape/viewer_axel.hpp>
# include <shape/bounding_box.hpp>
# include <shape/algebraic_curve.hpp>
# include <shape/surface_algebraic.hpp>
# include <shape/mesher3d_curve_algebraic.hpp>

# define Kernel double
# define AXEL viewer<axel>
# define Cell cell<double>
# define Point point<double>
# define AlgebraicCurve algebraic_curve<double>
# define AlgebraicSurface surface_algebraic<double>
# define Topology3d mesher3d_curve_algebraic<double>
# define BoundingBox bounding_box<double>

int main(int argc, char** argv) {
  using namespace mmx;
  using namespace mmx::shape;
 
  BoundingBox bx(-2.13,2.12,-2.12,2.13, -2.2, 2.1);
    
  AlgebraicSurface s1((char *)"x^4+x*y+y^4+z^2-3");
  AlgebraicSurface s2((char *)"x^2+y^2+z^2-2");
  AlgebraicCurve* c1= new AlgebraicCurve(s1.equation(),s2.equation());

  Topology3d tp(bx);
  tp.set_smoothness(0.06);
  tp.set_precision (0.001);
  tp.push_back(c1); 
  tp.run();

    
  AXEL axl((char *)"tmp.axl");
  axl<< *as_graphic(tp);
  axl<< bx<< s1<< s2;
  axl.view();


}



# undef Kernel
# undef AXEL
# undef Cell
# undef Point
# undef AlgebraicCurve
# undef AlgebraicSurface
# undef Topology3d
# undef BoundingBox