00001 #ifndef __SCENE_OBJ__
00002 #define __SCENE_OBJ__
00003
00004 #include "Renderable.h"
00005 #include "Vec3.h"
00006 #include <QString>
00007
00008 namespace apig {
00009 class Face;
00010
00012 class SceneOBJ : public Renderable {
00013 public:
00014 SceneOBJ(QString fileName);
00015 ~SceneOBJ();
00016
00017 virtual void init();
00018 virtual void render() const;
00019
00020 bool loaded() const { return defined; }
00021 bool ready() const { return initialized; }
00022 QString getFileName() const { return fileName; }
00023
00024 virtual Vec3 center() const { return sceneCenter; }
00025 virtual float radius() const { return sceneRadius; }
00026
00027 private:
00028 QString fileName;
00029 bool defined;
00030 bool initialized;
00031 int nv;
00032 int nf;
00033 Vec3 *vertex;
00034 Vec3 *normal;
00035 Face *face;
00036 Vec3 sceneCenter;
00037 float sceneRadius;
00038 unsigned int displist;
00039 };
00040
00041 }
00042
00043 #endif