diff options
author | Matthias Schiffer <matthias@gamezock.de> | 2009-11-27 21:11:46 +0100 |
---|---|---|
committer | Matthias Schiffer <matthias@gamezock.de> | 2009-11-27 21:11:46 +0100 |
commit | 873bf9be915d5c46b6bbdbcd788fb94b646ee6fb (patch) | |
tree | 80969c935918a12dbade97862160753f66a8ecc7 /DisplayClass.cpp | |
parent | 59360094e5ac1ddeb5eda365ac4ccf765786635f (diff) | |
download | c3d-873bf9be915d5c46b6bbdbcd788fb94b646ee6fb.tar c3d-873bf9be915d5c46b6bbdbcd788fb94b646ee6fb.zip |
Cuboid und DisplayClass aktualisiert
Diffstat (limited to 'DisplayClass.cpp')
-rw-r--r-- | DisplayClass.cpp | 47 |
1 files changed, 38 insertions, 9 deletions
diff --git a/DisplayClass.cpp b/DisplayClass.cpp index 836988d..9cae95c 100644 --- a/DisplayClass.cpp +++ b/DisplayClass.cpp @@ -6,12 +6,34 @@ void DisplayClass::renderScene(unsigned long delta)
-{
-
- Cuboid cube1(2, 2, 1, -1, 1, 0.5);
- Cuboid cube2(1, 1, 2, -0.5, 0.5, -1.5);
+{ + //Cuboid cube1(2, 2, 1, -1, 1, 0.5);
+ //Cuboid cube2(1, 1, 2, -0.5, 0.5, -1.5); + + static const Cuboid dc(0.8, 2, 0.8); + static const float xs[5] = {-2.5, -1.5, -0.5, 0.5, 1.5}; + static const float zs[5] = {-1.5, -0.5, 0.5, 1.5, 2.5}; + + Cuboid cubes[5][5] = { + {dc, dc, dc, dc, dc}, + {dc, dc, dc, dc, dc}, + {dc, dc, dc, dc, dc}, + {dc, dc, dc, dc, dc}, + {dc, dc, dc, dc, dc}, + }; + + for(int i = 0; i < 5; ++i) { + for(int j = 0; j < 5; ++j) { + cubes[i][j].setPos(xs[j], 1.0, zs[i]); + } + } +/* {Cuboid(2, 1, 1, -2.5, 1.0, -1.5), Cuboid(2, 1, 1, -1.5, 1.0, -1.5), Cuboid(2, 1, 1, -0.5, 1.0, -1.5), Cuboid(2, 1, 1, 0.5, 1.0, -1.5), Cuboid(2, 1, 1, 1.5, 1.0, -1.5)}, + {Cuboid(2, 1, 1, -2.5, 1.0, -0.5), Cuboid(2, 1, 1, -1.5, 1.0, -1.5), Cuboid(2, 1, 1, -0.5, 1.0, -1.5), Cuboid(2, 1, 1, 0.5, 1.0, -0.5), Cuboid(2, 1, 1, 1.5, 1.0, -0.5)}, + {Cuboid(2, 1, 1, -2.5, 1.0, 0.5), Cuboid(2, 1, 1, -1.5, 1.0, -1.5), Cuboid(2, 1, 1, -0.5, 1.0, -1.5), Cuboid(2, 1, 1, 0.5, 1.0, -1.5), Cuboid(2, 1, 1, 1.5, 1.0, 0.5)}, + {Cuboid(2, 1, 1, -2.5, 1.0, 1.5), Cuboid(2, 1, 1, -1.5, 1.0, -1.5), Cuboid(2, 1, 1, -0.5, 1.0, -1.5), Cuboid(2, 1, 1, 0.5, 1.0, -1.5), Cuboid(2, 1, 1, 1.5, 1.0, 1.5)}, + {Cuboid(2, 1, 1, -2.5, 1.0, 2.5), Cuboid(2, 1, 1, -1.5, 1.0, 2.5), Cuboid(2, 1, 1, -0.5, 1.0, 2.5), Cuboid(2, 1, 1, 0.5, 1.0, 2.5), Cuboid(2, 1, 1, 1.5, 1.0, 2.5)}};*/
static float angle = 0.0;
- angle += delta*0.05;
+ angle += delta*0.043;
if(angle >= 360)
angle -= 360;
@@ -28,17 +50,24 @@ void DisplayClass::renderScene(unsigned long delta) //glRotatef(angle*2, 1.0, 0.0, 0.0);
//glRotatef(angle*3, 0.0, 0.0, 1.0);
- glRotatef(-angle*5, 0.0, 0.0, 1.0); + //glRotatef(-angle*5, 0.0, 0.0, 1.0); m.store(); // Save current transformation + + for(int i = 0; i < 5; ++i) { + for(int j = 0; j < 5; ++j) { + std::list<Triangle> ct = cubes[i][j].getTriangles(m);
+ triangles.splice(triangles.end(), ct); + } + } - std::list<Triangle> t1 = cube1.getTriangles(m);
+ /*std::list<Triangle> t1 = cube1.getTriangles(m);
triangles.splice(triangles.end(), t1);
glRotatef(angle*10, 0.0, 0.0, 1.0); m.store(); - std::list<Triangle> t2 = cube2.getTriangles(m); - triangles.splice(triangles.end(), t2);
+ t1 = cube2.getTriangles(m); + triangles.splice(triangles.end(), t1);*/
//std::sort(triangles.begin(), triangles.end(), Sorter(p)); |