Subversion Repositories gelsvn

Rev

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

Rev 631 Rev 666
1
/**
1
/**
2
 * @file subdivision.h
2
 * @file subdivision.h
3
 * @brief Functions for mesh subdivision. Catmull Clark to be precise.
3
 * @brief Functions for mesh subdivision. Catmull Clark to be precise.
4
 */
4
 */
5
 
5
 
6
/* ----------------------------------------------------------------------- *
6
/* ----------------------------------------------------------------------- *
7
 * This file is part of GEL, http://www.imm.dtu.dk/GEL
7
 * This file is part of GEL, http://www.imm.dtu.dk/GEL
8
 * Copyright (C) the authors and DTU Informatics
8
 * Copyright (C) the authors and DTU Informatics
9
 * For license and list of authors, see ../../doc/intro.pdf
9
 * For license and list of authors, see ../../doc/intro.pdf
10
 * ----------------------------------------------------------------------- */
10
 * ----------------------------------------------------------------------- */
11
 
11
 
12
#ifndef __HMESH_SUBDIVIDE_H__
12
#ifndef __HMESH_SUBDIVIDE_H__
13
#define __HMESH_SUBDIVIDE_H__
13
#define __HMESH_SUBDIVIDE_H__
14
 
14
 
15
namespace HMesh
15
namespace HMesh
16
{
16
{
17
    class Manifold;
17
    class Manifold;
18
    /** Perform a Catmull-Clark split, i.e. a split where each face is divided
18
    /** Perform a Catmull-Clark split, i.e. a split where each face is divided
19
    into new quadrilateral faces formed by connecting a corner with a
19
    into new quadrilateral faces formed by connecting a corner with a
20
    point on each incident edge and a point at the centre of the face. */
20
    point on each incident edge and a point at the centre of the face. */
21
    void cc_split(Manifold&, Manifold&);
21
    void cc_split(Manifold&, Manifold&);
22
    
22
    
23
    void loop_split(Manifold& m_in, Manifold& m);
23
    void loop_split(Manifold& m_in, Manifold& m);
24
    
24
    
25
    void root3_subdivide(Manifold&, Manifold&);
25
    void root3_subdivide(Manifold&, Manifold&);
-
 
26
    
-
 
27
    void rootCC_subdivide(Manifold& m_in, Manifold& m);
26
 
28
 
27
    void butterfly_subdivide(Manifold& m_in, Manifold& m);
29
    void butterfly_subdivide(Manifold& m_in, Manifold& m);
28
 
30
 
29
    void cc_smooth(Manifold&);
31
    void cc_smooth(Manifold&);
30
 
32
 
31
    void loop_smooth(Manifold&);
33
    void loop_smooth(Manifold&);
32
}
34
}
33
 
35
 
34
#endif
36
#endif
35
 
37
 
36

Generated by GNU Enscript 1.6.6.
38

Generated by GNU Enscript 1.6.6.
37
 
39
 
38
 
40
 
39
 
41