Subversion Repositories gelsvn

Rev

Rev 62 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 62 Rev 97
1
#include <iostream>
1
#include <iostream>
2
 
2
 
3
#include "HMeshUtil/x3d_load.h"
3
#include "HMeshUtil/x3d_load.h"
4
#include "HMeshUtil/x3d_save.h"
4
#include "HMeshUtil/x3d_save.h"
5
 
5
 
6
using namespace std;
6
using namespace std;
7
using namespace HMesh;
7
using namespace HMesh;
8
using namespace HMeshUtil;
8
using namespace HMeshUtil;
9
 
9
 
10
int main(int argc, char** argv)
10
int main(int argc, char** argv)
11
{
11
{
12
	Manifold m;
12
	Manifold m;
-
 
13
	if(argc>1)
13
	x3d_load(argv[1], m);
14
		x3d_load(argv[1], m);
-
 
15
	else
-
 
16
		x3d_load("../../data/small.x3d", m);
14
 
17
 
15
	bool did_work;
18
	bool did_work;
16
	do
19
	do
17
		{
20
		{
18
			did_work = false;
21
			did_work = false;
19
			HalfEdgeIter h = m.halfedges_begin();
22
			HalfEdgeIter h = m.halfedges_begin();
20
			while(h != m.halfedges_end())
23
			while(h != m.halfedges_end())
21
      {
24
      {
22
        if(is_boundary(h))
25
        if(is_boundary(h))
23
        {
26
        {
24
          did_work = true;
27
          did_work = true;
25
					VertexIter v = h->opp->vert;
28
					VertexIter v = h->opp->vert;
26
					m.collapse_halfedge(v,h);
29
					m.collapse_halfedge(v,h);
27
					break;
30
					break;
28
				}
31
				}
29
				++h;
32
				++h;
30
			}
33
			}
31
		}
34
		}
32
	while(did_work);
35
	while(did_work);
33
 
36
 
34
	
37
	
35
	x3d_save("closed.x3d", m);
38
	x3d_save("../../data/closed.x3d", m);
36
}
39
}
37
 
40