From d3e70eb68019f7d4e866dbda6ee8463ec5ad901b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustav=20S=C3=B6rn=C3=A4s?= Date: Mon, 21 Sep 2020 15:38:11 +0200 Subject: Given files L3 tiles --- 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