$search
00001 /* 00002 James R. Diebel 00003 Stanford University 00004 00005 Started: 20 January 2005 00006 00007 segmsh.cc - utility to segment a mesh and output a region file 00008 00009 Depends on: 00010 - Mesh class (mesh.hh) 00011 -- Vec3d class (vec3d.hh) 00012 -- Vert class (vert.hh) 00013 -- Edge class (edge.hh) 00014 -- Face class (face.hh) 00015 - Timer class (timer.hh) 00016 - TriMesh class (trimesh.h) 00017 */ 00018 00019 00020 #include <iostream> 00021 #include "bmtk/mesh.hh" 00022 #include "bmtk/timer.hh" 00023 #include <trimesh/trimesh.h> 00024 00025 using namespace std; 00026 using namespace bmtk; 00027 00028 int main (int argc, char *argv[]) { 00029 // if bad command line args, give usage instructions and exit 00030 if (argc < 3) { 00031 cout << endl 00032 << "Usage: segmsh infile.msh outfile.reg" << endl 00033 << " infile.msh must be an msh file" << endl 00034 << " outfile.reg is a region file" << endl; 00035 exit(1); 00036 } 00037 00038 // read Mesh from file 00039 Mesh m; 00040 m.readMesh(argv[1]); 00041 m.readOptions("mrf_options.dat"); 00042 00043 // segment the mesh 00044 m.findRegionProps(); 00045 m.runSegmentation(); 00046 00047 // output the segmentation 00048 m.exportRegions(argv[2]); 00049 00050 return 0; 00051 }