proj home

Files   Classes   Functions   Hierarchy  

d4tessdraw Class Reference

#include <d4tessdraw.h>

Collaboration diagram for d4tessdraw:

List of all members.

Public Member Functions

 d4tessdraw (d4tess &_tess)
void draw ()
void meshupdate ()

Public Attributes

gobjSwitchContainer graphicsDeffered
gobjSwitchContainer graphicsImmediate


Detailed Description

Definition at line 27 of file d4tessdraw.h.


Constructor & Destructor Documentation

d4tessdraw::d4tessdraw ( d4tess _tess  ) 

Definition at line 42 of file d4tessdraw.cpp.

References gobj::global.

00045   : tess(_tess), gdynamic(true)
00046 {
00047   gobjContainer::global->push_back(&gdynamic);
00048 
00049   graphicsDeffered.push_back(new writepointsobj(tess));
00050   graphicsDeffered.push_back(new writesimplicesobj(tess));
00051   graphicsDeffered.push_back(new writewindingobj(tess));
00052   graphicsDeffered.push_back(new writegridobj(tess));
00053   graphicsDeffered.push_back(new writebaseobj(tess));
00054   graphicsDeffered.push_back(new writesurfaceobj(tess));
00055 
00056 
00057   graphicsImmediate.push_back(new writecpobj(tess));
00058 
00059   meshupdate();
00060 }


Member Function Documentation

void d4tessdraw::draw (  ) 

Definition at line 62 of file d4tessdraw.cpp.

References graphicsImmediate.

Referenced by display().

00063 {
00064   
00065   glPushAttrib(GL_CURRENT_BIT);
00066   glPushAttrib(GL_LIGHTING_BIT);
00067 
00068   graphicsImmediate.draw();
00069 
00070   glPopAttrib();
00071   glPopAttrib();
00072 }

void d4tessdraw::meshupdate (  ) 

Definition at line 19 of file d4tessdraw.cpp.

References gobj::global, graphicsDeffered, and gobjContainer::nuke().

Referenced by keyboard(), and main().

00020 {
00021   gdynamic.nuke();
00022 
00023   gobjContainer & g(*gobjContainer::global);
00024 
00025   uint i = g.v.size();
00026 
00027   // Writes all the graphics to gobjContainer::global
00028   graphicsDeffered.draw();
00029 
00030   uint k = g.v.size();
00031 
00032   for (uint j=i; j<k; ++j)
00033     gdynamic.push_back( g.v[j] );
00034 
00035   g.v.erase(g.v.begin()+i,g.v.end());
00036 
00037   assert(g.v.size()==i);
00038 }


Member Data Documentation

gobjSwitchContainer d4tessdraw::graphicsDeffered

Definition at line 35 of file d4tessdraw.h.

Referenced by main(), and meshupdate().

gobjSwitchContainer d4tessdraw::graphicsImmediate

Definition at line 37 of file d4tessdraw.h.

Referenced by draw(), and main().


The documentation for this class was generated from the following files:

Generated on Fri Mar 4 00:49:54 2011 for Chelton Evans Source by  doxygen 1.5.8