void Objecte::aplicaTGCentrat(mat4 m) { mat4 t1, t2; t1 = Translate(-(capsa.pmin[0]+capsa.a/2.0),-(capsa.pmin[1]+capsa.h/2),-(capsa.pmin[2]+capsa.p/2)); t2 = Translate(capsa.pmin[0]+capsa.a/2.0,capsa.pmin[1]+capsa.h/2,capsa.pmin[2]+capsa.p/2); aplicaTGPoints(t2*m*t1); }
void Objecte::aplicaTG(mat4 m) { aplicaTGPoints(m); // Actualitzacio del vertex array per a preparar per pintar glBufferSubData( GL_ARRAY_BUFFER, 0, sizeof(point4) * Index, &points[0] ); }
void Objecte::aplicaTGCentrat(mat4 m) { // Metode a modificar this->capsa=this->calculCapsa3D(); point4 pmig = capsa.pmin; pmig[0]+=capsa.a/2.0; pmig[1]+=capsa.h/2.0; pmig[2]+=capsa.p/2.0; aplicaTG(Translate(-pmig[0],-pmig[1],-pmig[2])); aplicaTG(m); aplicaTGPoints(Translate(pmig[0],pmig[1],pmig[2])); }