X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=laserbrain_demo;a=blobdiff_plain;f=src%2Fexhibit.cc;h=b8d44cc3bfaaaed6218f18862b2b66702418fe27;hp=d76b2912ba5caf727cabe8e125f09d6925f45a21;hb=ebbb52cd0de8e27817a0770bd7bdb48a58348a02;hpb=35c329e4b66fc60622080be1b9ff30148a7e74e4 diff --git a/src/exhibit.cc b/src/exhibit.cc index d76b291..b8d44cc 100644 --- a/src/exhibit.cc +++ b/src/exhibit.cc @@ -1,6 +1,7 @@ #include "exhibit.h" #include "snode.h" #include "scene.h" +#include "geomdraw.h" class ExhibitPriv { public: @@ -11,6 +12,8 @@ public: ExhibitPriv(); }; + +// selection ExSelection::ExSelection(Exhibit *ex) { this->ex = ex; @@ -23,11 +26,24 @@ ExSelection::operator bool() const return ex != 0; } +// Exhibit data +ExData::ExData() +{ + voice = 0; +} + +ExData::~ExData() +{ + delete voice; +} + +// private data for each exhibit type ExhibitPriv::ExhibitPriv() { orig_node = 0; } +// exhibit class Exhibit::Exhibit() { priv = new ExhibitPriv; @@ -77,5 +93,15 @@ void Exhibit::post_draw() const if(node) { glMatrixMode(GL_MODELVIEW); glPopMatrix(); + + const AABox &bvol = get_aabox(); + draw_geom_object(&bvol); } } + + +const AABox &Exhibit::get_aabox() const +{ + aabb = node->get_bounds(); + return aabb; +}