]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/object.h
Count reserved distance correctly in reverse direction
[r2c2.git] / source / libr2c2 / object.h
index 33b99a1443acb3b2f7452c8236e91354ab5ed8a4..31eb879228d0076fa0bc47dad32b6ce01567ebca 100644 (file)
@@ -14,7 +14,7 @@ class Object
 protected:
        Layout &layout;
        Vector position;
-       float rotation;
+       Angle rotation;
 
        Object(Layout &l): layout(l) { }
 public:
@@ -24,9 +24,9 @@ public:
        virtual const ObjectType &get_type() const = 0;
        Layout &get_layout() const { return layout; }
        virtual void set_position(const Vector &) = 0;
-       virtual void set_rotation(float) = 0;
+       virtual void set_rotation(const Angle &) = 0;
        const Vector &get_position() const { return position; }
-       float get_rotation() const { return rotation; }
+       const Angle &get_rotation() const { return rotation; }
        virtual Object *get_parent() const { return 0; }
 
        virtual unsigned get_n_snap_nodes() const { return 0; }
@@ -45,7 +45,8 @@ public:
        virtual bool break_link(unsigned) { return false; }
        virtual void break_links();
 
-       virtual bool collide_ray(const Vector &, const Vector &) const = 0;
+       virtual bool collide_ray(const Ray &) const;
+       virtual BoundingBox get_bounding_box() const;
 };
 
 } // namespace R2C2