diff options
Diffstat (limited to 'Room.cpp')
-rw-r--r-- | Room.cpp | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/Room.cpp b/Room.cpp deleted file mode 100644 index 4923169..0000000 --- a/Room.cpp +++ /dev/null @@ -1,46 +0,0 @@ -#include "Room.h" -#include "LevelEdge.h" - - -const Room& Room::operator=(const Room &room) { - vertices.clear(); - edges.clear(); - - name = room.name; - height = room.height; - - vertices = room.vertices; - - for(std::vector<Edge>::const_iterator edge = room.edges.begin(); edge != room.edges.end(); edge++) { - LevelVertex v1(this, edge->getVertex1().getId(), this); - LevelVertex v2(this, edge->getVertex2().getId(), this); - edges.push_back(Edge(v1, v2)); - } - - return room; -} - -std::vector<SharedPtr<LevelObject> > Room::getChildren() { - std::vector<SharedPtr<LevelObject> > children; - - for(size_t i = 0; i < vertices.size(); i++) { - if(vertices[i]->isDirect()) - children.push_back(SharedPtr<LevelObject>(new LevelVertex(this, i, this))); - } - - for(size_t i = 0; i < edges.size(); i++) - children.push_back(SharedPtr<LevelObject>(new LevelEdge(this, i, this))); - - return children; -} - -void Room::rotate(Vertex m, float a) { - float s = sinf(a); - float c = cosf(a); - - for(std::vector<SharedPtr<RoomVertex> >::iterator v = vertices.begin(); v != vertices.end(); v++) { - **v -= m; - (*v)->setLocation(c*(**v)->getX() - s*(**v)->getY(), c*(**v)->getY() + s*(**v)->getX()); - **v += m; - } -} |