source: GTP/trunk/Lib/Geom/shared/GTGeometry/include/GeoLodTreeConstructor.h @ 842

Revision 842, 1.8 KB checked in by gumbau, 18 years ago (diff)
Line 
1#ifndef __GEO_TREE_CONSTRUCTOR__
2#define __GEO_TREE_CONSTRUCTOR__
3
4#include "GeoTreeSimpSequence.h"
5#include "GeoMesh.h"
6
7namespace Geometry
8{
9/// Construction module for multiresolution tree models.
10/** This module stores general tree multiresolution representations using our own specific file format.
11        It takes as inputs the TreeSimplificationSequence computed by the TreeSimplification module and writes a file
12        with the simplification sequence.\n
13
14        The LodTree file begins with a line stating the name of the mesh with leaves it refers to and also the name of the mesh with the trunk and the name of the LodStrips file refered to this mesh.
15
16        File format:\n
17                -# Tree reference.\n
18                -# Number of collapses.\n
19                -# Number of triangles added to the model (new leaves).\n
20                -# Triangle data.
21                -# Collapses: the two leaves that collapses and the new leaf.\n
22                .
23        \n
24
25Inputs:\n
26        - The leaves collapse sequence computed by the simplification module (Geometry::TreeSimplificationSequence).
27        .       
28Outputs:\n
29        - The module writes a file with the simplification sequence.
30        .  */
31        class LodTreeConstructor : public Serializable
32        {
33        public:
34                /// Constructor, gets a mesh and a simplification sequence, and generates a multiresolution model.
35                LodTreeConstructor(const Mesh *, const TreeSimplificationSequence *);
36
37                /// Class Destructor
38                ~LodTreeConstructor(void);
39
40                /// Copy constructor
41                //LodTreeConstructor(const LodTreeConstructor&);
42
43                /// Assignment operator
44                //LodTreeConstructor& operator =(const LodTreeConstructor&);
45               
46                /// Saves the multiresolution model into a file.
47                /// It writes the change sequence using the serializer as a parameter.
48                void Save (Serializer &s);
49
50                /// Load
51                void Load(Serializer &s);
52        };
53
54}
55
56#endif
57
Note: See TracBrowser for help on using the repository browser.