Line | |
---|
1 | #ifndef __ENTITYMERGER_H
|
---|
2 | #define __ENTITYMERGER_H
|
---|
3 |
|
---|
4 | #include "common.h"
|
---|
5 |
|
---|
6 |
|
---|
7 | namespace CHCDemoEngine
|
---|
8 | {
|
---|
9 |
|
---|
10 | class Material;
|
---|
11 | class Transform3;
|
---|
12 | class SceneEntity;
|
---|
13 | class Geometry;
|
---|
14 | class Shape;
|
---|
15 |
|
---|
16 |
|
---|
17 | /** Class representing a scene entity merger
|
---|
18 | It merges two scene entities and creates a new one
|
---|
19 | */
|
---|
20 | class EntityMerger
|
---|
21 | {
|
---|
22 | public:
|
---|
23 |
|
---|
24 | /** Creates a scene entity.
|
---|
25 | */
|
---|
26 | EntityMerger(SceneEntity *entity1, SceneEntity *entity2);
|
---|
27 | ~EntityMerger();
|
---|
28 |
|
---|
29 | SceneEntity *Merge();
|
---|
30 |
|
---|
31 | protected:
|
---|
32 |
|
---|
33 | Geometry *MergeGeometry(Geometry *geom1, Geometry *geom2);
|
---|
34 | Shape *MergeShapes(Shape *shape1, Shape *shape2, SceneEntity *parent);
|
---|
35 |
|
---|
36 | Geometry *MergeGeometries(const GeometryContainer &geometries);
|
---|
37 | Shape *MergeShapes(const ShapeContainer &shapes, SceneEntity *parent);
|
---|
38 |
|
---|
39 |
|
---|
40 | SceneEntity *mEntity1;
|
---|
41 | SceneEntity *mEntity2;
|
---|
42 | };
|
---|
43 |
|
---|
44 | }
|
---|
45 |
|
---|
46 | #endif // __ENTITYMERGER_H |
---|
Note: See
TracBrowser
for help on using the repository browser.