#include #include #include "Definitions.h" #include "Volume.h" #include "Walker.h" #include #include int main(int argc, char *argv[]) { BoundingBox bbox(vcg::Point3i(-20, -20, -20), vcg::Point3i(20, 20, 20)); vcg::Point3i resolution(40, 40, 40); Volume volume; Walker walker(bbox, resolution); typedef vcg::tri::MarchingCubes MarchingCubes; typedef vcg::tri::ExtendedMarchingCubes ExtendedMarchingCubes; // MARCHING CUBES Mesh mc_mesh; printf("[MARCHING CUBES] Building mesh..."); MarchingCubes mc(mc_mesh, walker); walker.BuildMesh(mc_mesh, volume, mc); vcg::tri::io::ExporterPLY::Save( mc_mesh, "marching_cubes.ply"); printf("OK!\n"); // EXTENDED MARCHING CUBES Mesh emc_mesh; printf("[EXTENDED MARCHING CUBES] Building mesh..."); ExtendedMarchingCubes emc(emc_mesh, walker, 30); walker.BuildMesh(emc_mesh, volume, emc); vcg::tri::io::ExporterPLY::Save( emc_mesh, "extended_marching_cubes.ply"); printf("OK!\n"); };