9 Dicembre 2002
Costruzione di Interfacce - Paolo Cignoni
22
CSGGroup
vclass CSGGroup :public CSGNode
v{ public:
v  virtual ~CSGGroup();
v  typedef list<CSGNode *>::iterator iterator;
v  list<CSGNode *> Sons;
v  virtual void glDraw(const float DocTime);
v};
v
vCSGGroup::~CSGGroup()  //distruttore: disalloca tutti i figli
v{
v  for(iterator i=Sons.begin();i!=Sons.end();++i)
v delete (*i);
v}
v
vvoid CSGGroup::glDraw(const float DocTime)
v{
v  glPushMatrix();
v  for(iterator i=Sons.begin();i!=Sons.end();++i)
v    (*i)->glDraw(DocTime);
v  glPopMatrix();
v}
v