--- /dev/null
+// SuperTux
+// Copyright (C) 2010 Ingo Ruhnke <grumbel@gmx.de>
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+#include "math/rectf.hpp"
+
+#include "math/sizef.hpp"
+
+Rectf::Rectf(const Vector& p1_, const Sizef& size) :
+ p1(p1_),
+ p2(p1_.x + size.width, p1_.y + size.height)
+{
+}
+
+/* EOF */
#include "math/vector.hpp"
#include "object/anchor_point.hpp"
+class Sizef;
+
/** This class represents a rectangle.
* (Implementation Note) We're using upper left and lower right point instead of
* upper left and width/height here, because that makes the collision detection
p2()
{ }
- Rectf(const Vector& np1, const Vector& np2)
- : p1(np1), p2(np2)
+ Rectf(const Vector& np1, const Vector& np2) :
+ p1(np1), p2(np2)
{
}
- Rectf(float x1, float y1, float x2, float y2)
- : p1(x1, y1), p2(x2, y2)
+ Rectf(float x1, float y1, float x2, float y2) :
+ p1(x1, y1), p2(x2, y2)
{
assert(p1.x <= p2.x && p1.y <= p2.y);
}
+ Rectf(const Vector& p1_, const Sizef& size);
+
float get_left() const
{ return p1.x; }