]> git.lizzy.rs Git - irrlicht.git/blob - source/Irrlicht/CDummyTransformationSceneNode.h
SDL: Support clipboard
[irrlicht.git] / source / Irrlicht / CDummyTransformationSceneNode.h
1 // Copyright (C) 2002-2012 Nikolaus Gebhardt\r
2 // This file is part of the "Irrlicht Engine".\r
3 // For conditions of distribution and use, see copyright notice in irrlicht.h\r
4 \r
5 #ifndef __C_DUMMY_TRANSFORMATION_SCENE_NODE_H_INCLUDED__\r
6 #define __C_DUMMY_TRANSFORMATION_SCENE_NODE_H_INCLUDED__\r
7 \r
8 #include "IDummyTransformationSceneNode.h"\r
9 \r
10 namespace irr\r
11 {\r
12 namespace scene\r
13 {\r
14 \r
15         class CDummyTransformationSceneNode : public IDummyTransformationSceneNode\r
16         {\r
17         public:\r
18 \r
19                 //! constructor\r
20                 CDummyTransformationSceneNode(ISceneNode* parent, ISceneManager* mgr, s32 id);\r
21 \r
22                 //! returns the axis aligned bounding box of this node\r
23                 const core::aabbox3d<f32>& getBoundingBox() const override;\r
24 \r
25                 //! Returns a reference to the current relative transformation matrix.\r
26                 //! This is the matrix, this scene node uses instead of scale, translation\r
27                 //! and rotation.\r
28                 core::matrix4& getRelativeTransformationMatrix() override;\r
29 \r
30                 //! Returns the relative transformation of the scene node.\r
31                 core::matrix4 getRelativeTransformation() const override;\r
32 \r
33                 //! does nothing.\r
34                 void render() override {}\r
35 \r
36                 //! Returns type of the scene node\r
37                 ESCENE_NODE_TYPE getType() const override { return ESNT_DUMMY_TRANSFORMATION; }\r
38 \r
39                 //! Creates a clone of this scene node and its children.\r
40                 ISceneNode* clone(ISceneNode* newParent=0, ISceneManager* newManager=0) override;\r
41 \r
42 \r
43         private:\r
44 \r
45                 // TODO: We can add least add some warnings to find troubles faster until we have\r
46                 // fixed bug id 2318691.\r
47                 const core::vector3df& getScale() const override;\r
48                 void setScale(const core::vector3df& scale) override;\r
49                 const core::vector3df& getRotation() const override;\r
50                 void setRotation(const core::vector3df& rotation) override;\r
51                 const core::vector3df& getPosition() const override;\r
52                 void setPosition(const core::vector3df& newpos) override;\r
53 \r
54                 core::matrix4 RelativeTransformationMatrix;\r
55                 core::aabbox3d<f32> Box;\r
56         };\r
57 \r
58 } // end namespace scene\r
59 } // end namespace irr\r
60 \r
61 #endif\r
62 \r