Code pour dessiner les AABB.
This commit is contained in:
parent
70a210018b
commit
124d59f2b9
|
@ -75,4 +75,52 @@ void Chose::updateAABB() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Chose::displayAABB() {
|
||||||
|
updateAABB();
|
||||||
|
if (children.size() > 0) {
|
||||||
|
std::vector<Chose*>::iterator it;
|
||||||
|
for (it = children.begin(); it != children.end(); ++it) {
|
||||||
|
(*it)->displayAABB();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Affiche la AABB.
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[2],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[3],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[3],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[2],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[3],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[2],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[2],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[2],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[0],lod.aabb[3],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[5]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[2],lod.aabb[4]);
|
||||||
|
glVertex3d(lod.aabb[1],lod.aabb[3],lod.aabb[4]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
unsigned int Chose::initialSeed = 779313522;//random_seed();
|
unsigned int Chose::initialSeed = 779313522;//random_seed();
|
||||||
|
|
|
@ -18,6 +18,7 @@ class Chose {
|
||||||
|
|
||||||
public :
|
public :
|
||||||
void display();
|
void display();
|
||||||
|
void displayAABB();
|
||||||
virtual bool split() = 0;
|
virtual bool split() = 0;
|
||||||
virtual bool merge();
|
virtual bool merge();
|
||||||
virtual void triangulation() = 0;
|
virtual void triangulation() = 0;
|
||||||
|
|
7
view.cpp
7
view.cpp
|
@ -97,6 +97,13 @@ void View::renderScene(int lastTime, int currentTime) {
|
||||||
root->display();
|
root->display();
|
||||||
glEnd();
|
glEnd();
|
||||||
|
|
||||||
|
// DEBUG : display AABB
|
||||||
|
// glDisable(GL_LIGHTING);
|
||||||
|
// glDisable(GL_TEXTURE_2D);
|
||||||
|
// glBegin(GL_TRIANGLES);
|
||||||
|
// root->displayAABB();
|
||||||
|
// glEnd();
|
||||||
|
|
||||||
glFlush();
|
glFlush();
|
||||||
SDL_GL_SwapBuffers();
|
SDL_GL_SwapBuffers();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user