Subversion Repositories gelsvn

Rev

Rev 448 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 448 Rev 595
Line -... Line 1...
-
 
1
/**
-
 
2
 * @file smooth.h
-
 
3
 * @brief Functions for mesh smoothing.
-
 
4
 */
-
 
5
 
-
 
6
/* ----------------------------------------------------------------------- *
-
 
7
 * This file is part of GEL, http://www.imm.dtu.dk/GEL
-
 
8
 * Copyright (C) the authors and DTU Informatics
-
 
9
 * For license and list of authors, see ../../doc/intro.pdf
-
 
10
 * ----------------------------------------------------------------------- */
-
 
11
 
1
#ifndef __HMESH_SMOOTH_H
12
#ifndef __HMESH_SMOOTH_H
2
#define __HMESH_SMOOTH_H
13
#define __HMESH_SMOOTH_H
3
 
14
 
4
#include "HMesh/Manifold.h"
-
 
5
 
-
 
6
namespace HMesh
15
namespace HMesh
7
{
16
{
-
 
17
    class Manifold;
-
 
18
 
8
	/// Simple laplacian smoothing with an optional weight.
19
    /// Simple laplacian smoothing with an optional weight.
9
	void laplacian_smooth(HMesh::Manifold& m, float t=1.0f);
20
    void laplacian_smooth(HMesh::Manifold& m, float t=1.0f);
10
 
21
 
11
	/// Taubin smoothing is similar to laplacian smoothing but reduces shrinkage
22
    /// Taubin smoothing is similar to laplacian smoothing but reduces shrinkage
12
	void taubin_smooth(HMesh::Manifold& m, int iter);
23
    void taubin_smooth(HMesh::Manifold& m, int iter);
13
 
24
 
14
	/** Fuzzy vector median smoothing is effective when it comes to
25
    /// Fuzzy vector median smoothing is effective when it comes to preserving sharp edges.
15
			preserving sharp edges. */
-
 
16
	void fvm_smooth(HMesh::Manifold& m, int iter);
26
    void fvm_smooth(HMesh::Manifold& m, int iter);
17
}
27
}
18
#endif
28
#endif
19
 
29