Rev | Line | |
---|
[2980] | 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.