#include "thing.h" #include <GL/gl.h> #include <GL/glu.h> void Thing::draw() { } void Thing::rotate(Vec rot) { } void Thing::setColor(Color* c) { } void Thing::setColor(Color c) { } void Thing::setDelta(float d) { } void Thing::showNormals() { } void Thing::hideNormals() { } void Thing::setPosition(Vec newpos) { } void Thing::setCenter(Vec newcenter) { } void Thing::translate(Vec d) { } void Thing::scale(float f) { } void Thing::trace(bool s) { } void Thing::show() { } void Thing::hide() { } View::View() { rotation = new Vec(0.0f, 0.0f, 0.0f); position = new Vec(0.0f, 0.0f, 0.0f); bgcolor = new Color(0.0f, 0.0f, 0.0f); } View::View(Vec pos) { rotation = new Vec(0.0f, 0.0f, 0.0f); position = pos.clone(); bgcolor = new Color(0.0f, 0.0f, 0.0f); } View::View(Vec pos, Vec rot) { rotation = rot.clone(); position = pos.clone(); bgcolor = new Color(0.0f, 0.0f, 0.0f); } void View::rotate(Vec rot) { rotation->add((Vec)rot); } void View::setPosition(Vec newpos) { delete position; position = newpos.clone(); } void View::translate(Vec d) { position->add((Vec)d); } void View::setColor(Color* c) { bgcolor = c; } void View::draw() { //glClearColor(bgcolor->r(), bgcolor->g(), bgcolor->b(), 1.0f); glTranslatef(position->x(), position->y(), position->z()); glRotatef(rotation->x(), 1.0f, 0.0f, 0.0f); glRotatef(rotation->y(), 0.0f, 1.0f, 0.0f); glRotatef(rotation->z(), 0.0f, 0.0f, 1.0f); }