- replaced default values by float ones
authorAkiko <akiko@linux-addicted.net>
Fri, 25 Oct 2013 11:05:10 +0000 (13:05 +0200)
committerAkiko <akiko@linux-addicted.net>
Fri, 25 Oct 2013 11:05:10 +0000 (13:05 +0200)
- just some clean up
- reworked intersect method again (now it fits my needs)

engine/Object.hxx

index b931e24..f7f7dcf 100644 (file)
@@ -1,7 +1,5 @@
 #pragma once
 
-#include <vector>
-#include <string>
 #include "common/BaseObject.hxx"
 #include "Vector.hxx"
 #include "Ray.hxx"
@@ -22,7 +20,7 @@ public:
     // --- constructors and deconstructors ---
 
     Object()
-    : BaseObject<Object<MT>>(), _name("unknown"), _visible(true), _origin(0, 0, 0), _up(0, 1, 0)
+    : BaseObject<Object<MT>>(), _name("unknown"), _visible(true), _origin(0.0, 0.0, 0.0), _up(0.0, 1.0, 0.0)
     {
     }
 
@@ -53,6 +51,7 @@ public:
         if (this != &rhs)
         {
             BaseObject<Object<MT>>::operator=(rhs);
+
             _name = rhs._name;
             _visible = rhs._visible;
             _origin = rhs._origin;
@@ -67,6 +66,7 @@ public:
         if (this != &rhs)
         {
             BaseObject<Object<MT>>::operator=(rhs);
+
             _name = std::move(rhs._name);
             _visible = std::move(rhs._visible);
             _origin = std::move(rhs._origin);
@@ -78,9 +78,9 @@ public:
 
     // --- public methods ---
 
-    virtual void setName(const std::string& name)
+    virtual MT intersect(const Ray<MT>& /*ray*/) const
     {
-        _name = name;
+        return -1.0;
     }
 
     virtual std::string name() const
@@ -88,14 +88,14 @@ public:
         return _name;
     }
 
-    virtual void setVisible(const bool visible)
+    virtual Vector3<MT> origin() const
     {
-        _visible = visible;
+        return _origin;
     }
 
-    virtual bool visible() const
+    virtual void setName(const std::string& name)
     {
-        return _visible;
+        _name = name;
     }
 
     virtual void setOrigin(const Vector3<MT>& o)
@@ -103,19 +103,14 @@ public:
         _origin = o;
     }
 
-    virtual Vector3<MT> origin() const
-    {
-        return _origin;
-    }
-
     virtual void setUp(const Vector3<MT>& up)
     {
         _up = up;
     }
 
-    virtual Vector3<MT> up() const
+    virtual void setVisible(const bool visible)
     {
-        return _up;
+        _visible = visible;
     }
 
     virtual ObjectType type() const
@@ -123,9 +118,14 @@ public:
         return ObjectType::None;
     }
 
-    virtual Ray<MT> intersect(const std::vector<Object<MT> *>& /*objects*/, const Ray<MT>& /*ray*/) const
+    virtual Vector3<MT> up() const
     {
-        return Ray<MT>();
+        return _up;
+    }
+
+    virtual bool visible() const
+    {
+        return _visible;
     }
 
 protected: