]> git.jsancho.org Git - c-irrlicht.git/blobdiff - src/aabbox3d.cpp
Use structs with casting, without classes replication
[c-irrlicht.git] / src / aabbox3d.cpp
index 4209425a3417fabe7ff3702d1aec7da4e1392e80..69b1f78a815631fb3d6457a61b169fd95d98baff 100644 (file)
    <http://www.gnu.org/licenses/>.
 */
 
+#include <irrlicht/irrlicht.h>
 #include "aabbox3d.h"
 
 extern "C" {
   void
-  irr_core_aabbox3d_addInternalPoint(irr_core_aabbox3d_f32 box,
-                                     irr_core_vector3df p)
+  irr_core_aabbox3d_addInternalPoint(irr_core_aabbox3d_f32* box,
+                                     irr_core_vector3df* p)
   {
-    if (p.x > box.maxEdge.x) box.maxEdge.x = p.x;
-    if (p.y > box.maxEdge.y) box.maxEdge.y = p.y;
-    if (p.z > box.maxEdge.z) box.maxEdge.z = p.z;
-
-    if (p.x < box.minEdge.x) box.minEdge.x = p.x;
-    if (p.y < box.minEdge.y) box.minEdge.y = p.y;
-    if (p.z < box.minEdge.z) box.minEdge.z = p.z;
+    ((irr::core::aabbox3d<irr::f32>*)box)
+      ->addInternalPoint(*(irr::core::vector3df*)p);
   }
 
   void
-  irr_core_aabbox3d_reset(irr_core_aabbox3d_f32 box,
-                          irr_core_vector3df initValue)
+  irr_core_aabbox3d_reset(irr_core_aabbox3d_f32* box,
+                          irr_core_vector3df* initValue)
   {
-    box.minEdge = initValue;
-    box.maxEdge = initValue;
+    ((irr::core::aabbox3d<irr::f32>*)box)
+      ->reset(*(irr::core::vector3df*)initValue);
   }
 }