From d894e06c6e6a335ea672ca2aaf30066b0a9d077a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustav=20S=C3=B6rn=C3=A4s?= Date: Mon, 17 Aug 2020 14:57:07 +0200 Subject: add given files --- labb3/tiles/Tile.cpp | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 labb3/tiles/Tile.cpp (limited to 'labb3/tiles/Tile.cpp') diff --git a/labb3/tiles/Tile.cpp b/labb3/tiles/Tile.cpp new file mode 100644 index 0000000..dc16cf6 --- /dev/null +++ b/labb3/tiles/Tile.cpp @@ -0,0 +1,31 @@ +/* + * TDDD86 Tiles + * This file contains the implementation of the Tile structure. + * See Tile.h for comments about each member. + * Your code should work properly with an unmodified version of this file. + */ + +#include +#include "Tile.h" + +bool Tile::contains(int x, int y) const { + return this->x <= x && x < this->x + this->width && + this->y <= y && y < this->y + this->height; +} + +void Tile::draw(QGraphicsScene *scene) const { + QGraphicsRectItem *item = new QGraphicsRectItem(x, y, width, height); + item->setBrush(QBrush(QColor(r, g, b))); + scene->addItem(item); +} + +string Tile::toString() const { + return "Tile{x=" + to_string(x) + ",y=" + to_string(y) + + ",width=" + to_string(width) + ",height=" + to_string(height) + + ",r=" + to_string(r) + ",g=" +to_string (g) + ",b=" + to_string(b) + "}"; +} + +ostream& operator<<(ostream& out, const Tile& tile) { + out << tile.toString(); + return out; +} -- cgit v1.2.1