diff options
Diffstat (limited to 'libraries/irrlicht-1.8/source/Irrlicht/CTriangleBBSelector.cpp')
-rw-r--r-- | libraries/irrlicht-1.8/source/Irrlicht/CTriangleBBSelector.cpp | 160 |
1 files changed, 80 insertions, 80 deletions
diff --git a/libraries/irrlicht-1.8/source/Irrlicht/CTriangleBBSelector.cpp b/libraries/irrlicht-1.8/source/Irrlicht/CTriangleBBSelector.cpp index 547b249..d73a3b3 100644 --- a/libraries/irrlicht-1.8/source/Irrlicht/CTriangleBBSelector.cpp +++ b/libraries/irrlicht-1.8/source/Irrlicht/CTriangleBBSelector.cpp | |||
@@ -1,80 +1,80 @@ | |||
1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt | 1 | // Copyright (C) 2002-2012 Nikolaus Gebhardt |
2 | // This file is part of the "Irrlicht Engine". | 2 | // This file is part of the "Irrlicht Engine". |
3 | // For conditions of distribution and use, see copyright notice in irrlicht.h | 3 | // For conditions of distribution and use, see copyright notice in irrlicht.h |
4 | 4 | ||
5 | #include "CTriangleBBSelector.h" | 5 | #include "CTriangleBBSelector.h" |
6 | #include "ISceneNode.h" | 6 | #include "ISceneNode.h" |
7 | 7 | ||
8 | namespace irr | 8 | namespace irr |
9 | { | 9 | { |
10 | namespace scene | 10 | namespace scene |
11 | { | 11 | { |
12 | 12 | ||
13 | //! constructor | 13 | //! constructor |
14 | CTriangleBBSelector::CTriangleBBSelector(ISceneNode* node) | 14 | CTriangleBBSelector::CTriangleBBSelector(ISceneNode* node) |
15 | : CTriangleSelector(node) | 15 | : CTriangleSelector(node) |
16 | { | 16 | { |
17 | #ifdef _DEBUG | 17 | #ifdef _DEBUG |
18 | setDebugName("CTriangleBBSelector"); | 18 | setDebugName("CTriangleBBSelector"); |
19 | #endif | 19 | #endif |
20 | 20 | ||
21 | Triangles.set_used(12); // a box has 12 triangles. | 21 | Triangles.set_used(12); // a box has 12 triangles. |
22 | } | 22 | } |
23 | 23 | ||
24 | 24 | ||
25 | 25 | ||
26 | //! Gets all triangles. | 26 | //! Gets all triangles. |
27 | void CTriangleBBSelector::getTriangles(core::triangle3df* triangles, | 27 | void CTriangleBBSelector::getTriangles(core::triangle3df* triangles, |
28 | s32 arraySize, s32& outTriangleCount, | 28 | s32 arraySize, s32& outTriangleCount, |
29 | const core::matrix4* transform) const | 29 | const core::matrix4* transform) const |
30 | { | 30 | { |
31 | if (!SceneNode) | 31 | if (!SceneNode) |
32 | return; | 32 | return; |
33 | 33 | ||
34 | // construct triangles | 34 | // construct triangles |
35 | const core::aabbox3d<f32>& box = SceneNode->getBoundingBox(); | 35 | const core::aabbox3d<f32>& box = SceneNode->getBoundingBox(); |
36 | core::vector3df edges[8]; | 36 | core::vector3df edges[8]; |
37 | box.getEdges(edges); | 37 | box.getEdges(edges); |
38 | 38 | ||
39 | Triangles[0].set( edges[3], edges[0], edges[2]); | 39 | Triangles[0].set( edges[3], edges[0], edges[2]); |
40 | Triangles[1].set( edges[3], edges[1], edges[0]); | 40 | Triangles[1].set( edges[3], edges[1], edges[0]); |
41 | 41 | ||
42 | Triangles[2].set( edges[3], edges[2], edges[7]); | 42 | Triangles[2].set( edges[3], edges[2], edges[7]); |
43 | Triangles[3].set( edges[7], edges[2], edges[6]); | 43 | Triangles[3].set( edges[7], edges[2], edges[6]); |
44 | 44 | ||
45 | Triangles[4].set( edges[7], edges[6], edges[4]); | 45 | Triangles[4].set( edges[7], edges[6], edges[4]); |
46 | Triangles[5].set( edges[5], edges[7], edges[4]); | 46 | Triangles[5].set( edges[5], edges[7], edges[4]); |
47 | 47 | ||
48 | Triangles[6].set( edges[5], edges[4], edges[0]); | 48 | Triangles[6].set( edges[5], edges[4], edges[0]); |
49 | Triangles[7].set( edges[5], edges[0], edges[1]); | 49 | Triangles[7].set( edges[5], edges[0], edges[1]); |
50 | 50 | ||
51 | Triangles[8].set( edges[1], edges[3], edges[7]); | 51 | Triangles[8].set( edges[1], edges[3], edges[7]); |
52 | Triangles[9].set( edges[1], edges[7], edges[5]); | 52 | Triangles[9].set( edges[1], edges[7], edges[5]); |
53 | 53 | ||
54 | Triangles[10].set(edges[0], edges[6], edges[2]); | 54 | Triangles[10].set(edges[0], edges[6], edges[2]); |
55 | Triangles[11].set(edges[0], edges[4], edges[6]); | 55 | Triangles[11].set(edges[0], edges[4], edges[6]); |
56 | 56 | ||
57 | // call parent | 57 | // call parent |
58 | CTriangleSelector::getTriangles(triangles, arraySize, outTriangleCount, transform); | 58 | CTriangleSelector::getTriangles(triangles, arraySize, outTriangleCount, transform); |
59 | } | 59 | } |
60 | 60 | ||
61 | void CTriangleBBSelector::getTriangles(core::triangle3df* triangles, | 61 | void CTriangleBBSelector::getTriangles(core::triangle3df* triangles, |
62 | s32 arraySize, s32& outTriangleCount, | 62 | s32 arraySize, s32& outTriangleCount, |
63 | const core::aabbox3d<f32>& box, | 63 | const core::aabbox3d<f32>& box, |
64 | const core::matrix4* transform) const | 64 | const core::matrix4* transform) const |
65 | { | 65 | { |
66 | return getTriangles(triangles, arraySize, outTriangleCount, transform); | 66 | return getTriangles(triangles, arraySize, outTriangleCount, transform); |
67 | } | 67 | } |
68 | 68 | ||
69 | void CTriangleBBSelector::getTriangles(core::triangle3df* triangles, | 69 | void CTriangleBBSelector::getTriangles(core::triangle3df* triangles, |
70 | s32 arraySize, s32& outTriangleCount, | 70 | s32 arraySize, s32& outTriangleCount, |
71 | const core::line3d<f32>& line, | 71 | const core::line3d<f32>& line, |
72 | const core::matrix4* transform) const | 72 | const core::matrix4* transform) const |
73 | { | 73 | { |
74 | return getTriangles(triangles, arraySize, outTriangleCount, transform); | 74 | return getTriangles(triangles, arraySize, outTriangleCount, transform); |
75 | } | 75 | } |
76 | 76 | ||
77 | 77 | ||
78 | } // end namespace scene | 78 | } // end namespace scene |
79 | } // end namespace irr | 79 | } // end namespace irr |
80 | 80 | ||