From 8fbf7fe3c46e5ea4b81f6bd8fb9140498e968db0 Mon Sep 17 00:00:00 2001 From: Yoann Date: Tue, 20 Dec 2011 21:13:13 +0100 Subject: [PATCH] Petit correctif pour les ponts. --- rules/batiment/batimentquadpont.cpp | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/rules/batiment/batimentquadpont.cpp b/rules/batiment/batimentquadpont.cpp index ea013bc..929c76a 100644 --- a/rules/batiment/batimentquadpont.cpp +++ b/rules/batiment/batimentquadpont.cpp @@ -72,8 +72,8 @@ void BatimentQuadPont::triangulation() { std::cout << std::endl << l1.norm() << std::endl; - addTriangle(new Triangle(pb,sw,swh,0x10,0xFF,0x10)); - addTriangle(new Triangle(pa,nw,nwh,0x10,0xFF,0x10)); + addTriangle(new Triangle(lctr+pb,lctr+sw,lctr+swh,0x10,0xFF,0x10)); + addTriangle(new Triangle(lctr+pa,lctr+nw,lctr+nwh,0x10,0xFF,0x10)); for(var=-1.7,n=0; var <= 1.7; var+=pas,n++) { std::cout << var << std::endl; @@ -82,26 +82,27 @@ void BatimentQuadPont::triangulation() { a = q.corner[3] + Vertex(0,0,nt(var,height)); b = q.corner[2] + Vertex(0,0,nt(var,height)); - addQuad(a,b,pb,pa,0xEE,0xEE,0xEE); + addQuad(lctr+a,lctr+b,lctr+pb,lctr+pa,0xEE,0xEE,0xEE); + if( n < middle) { - addTriangle(new Triangle(pa,a,nwh,0xFF,0x10,0xFF)); - addTriangle(new Triangle(pb,b,swh,0xFF,0x10,0xFF)); + addTriangle(new Triangle(lctr+pa,lctr+a,lctr+nwh,0xFF,0x10,0xFF)); + addTriangle(new Triangle(lctr+pb,lctr+b,lctr+swh,0xFF,0x10,0xFF)); } else if(n == middle) { - addTriangle(new Triangle(pa,a,nwh,0x10,0x10,0xFF)); - addTriangle(new Triangle(pb,b,swh,0x10,0x10,0xFF)); - addTriangle(new Triangle(a,neh,nwh,0x10,0x10,0xFF)); - addTriangle(new Triangle(b,seh,swh,0x10,0x10,0xFF)); + addTriangle(new Triangle(lctr+pa,lctr+a,lctr+nwh,0x10,0x10,0xFF)); + addTriangle(new Triangle(lctr+pb,lctr+b,lctr+swh,0x10,0x10,0xFF)); + addTriangle(new Triangle(lctr+a,lctr+neh,lctr+nwh,0x10,0x10,0xFF)); + addTriangle(new Triangle(lctr+b,lctr+seh,lctr+swh,0x10,0x10,0xFF)); } else { - addTriangle(new Triangle(pa,a,neh,0x10,0xFF,0xFF)); - addTriangle(new Triangle(pb,b,seh,0x10,0xFF,0xFF)); + addTriangle(new Triangle(lctr+pa,lctr+a,lctr+neh,0x10,0xFF,0xFF)); + addTriangle(new Triangle(lctr+pb,lctr+b,lctr+seh,0x10,0xFF,0xFF)); } pa = a; pb = b; } - addTriangle(new Triangle(se,pb,seh,0x10,0xFF,0x10)); - addTriangle(new Triangle(ne,pa,neh,0x10,0xFF,0x10)); + addTriangle(new Triangle(lctr+se,lctr+pb,lctr+seh,0x10,0xFF,0x10)); + addTriangle(new Triangle(lctr+ne,lctr+pa,lctr+neh,0x10,0xFF,0x10)); }