source: flair-dev/trunk/include/FlairSimulator/MeshSceneNode.h @ 8

Last change on this file since 8 was 8, checked in by Sanahuja Guillaume, 5 years ago

simulator

File size: 2.0 KB
Line 
1//  created:    2012/08/22
2//  filename:   MeshSceneNode.h
3//
4//  author:     Guillaume Sanahuja
5//              Copyright Heudiasyc UMR UTC/CNRS 7253
6//
7//  version:    $Id: $
8//
9//  purpose:    classe definissant un IMeshSceneNode
10//
11/*********************************************************************/
12
13#ifndef MESHSCENENODE_H
14#define MESHSCENENODE_H
15
16#include <IMeshSceneNode.h>
17
18namespace flair
19{
20namespace simulator
21{
22    class Model;
23
24    class MeshSceneNode : public irr::scene::IMeshSceneNode
25    {
26        public:
27            MeshSceneNode(Model* parent,irr::scene::IMesh* mesh,
28                const irr::core::vector3df& position = irr::core::vector3df(0,0,0),
29                const irr::core::vector3df& rotation = irr::core::vector3df(0,0,0),
30                irr::video::ITexture* texture=NULL, irr::s32 id=-1);
31
32            virtual void OnRegisterSceneNode(void);
33            virtual void render(void);
34            virtual const irr::core::aabbox3d<irr::f32>& getBoundingBox() const
35            {
36                return Box;
37            }
38            virtual irr::u32 getMaterialCount(void) const
39            {
40                return 1;
41            }
42            virtual irr::video::SMaterial& getMaterial(irr::u32 i);
43            virtual void setMesh( irr::scene::IMesh* ptr);
44            virtual  irr::scene::IMesh* getMesh(void);
45            virtual void setReadOnlyMaterials(bool readonly);
46            virtual bool isReadOnlyMaterials(void) const
47            {
48                return false;
49            }
50            virtual irr::scene::IShadowVolumeSceneNode* addShadowVolumeSceneNode(const irr::scene::IMesh* shadowMesh=0,
51            irr::s32 id=-1, bool zfailmethod=true, irr::f32 infinity=1000.0f)
52            {
53                return NULL;
54            }
55
56        private:
57            irr::scene::IMesh *mesh;
58            irr::core::aabbox3d<irr::f32> Box;
59            irr::video::SMaterial Material;
60    };
61} // end namespace simulator
62} // end namespace flair
63
64#endif // MESHSCENENODE_H
Note: See TracBrowser for help on using the repository browser.