@Override public boolean renderizar(GL gl) { float[] cor2 = {cor.r, cor.g, cor.b, 1f}; gl.glMaterialfv(GL.GL_FRONT, GL.GL_AMBIENT_AND_DIFFUSE, cor2, 0); gl.glPushMatrix(); { gl.glMultMatrixd(transformacao.getMatriz(), 0); gl.glBegin(primitiva); { for (Ponto ponto : pontos) { gl.glVertex3d(ponto.x, ponto.y, ponto.z); } } gl.glEnd(); this.bbox.draw(gl); } gl.glPopMatrix(); return super.renderizar(gl); }
/** * Inclui uma expansão no objeto * * @param transformacao */ public final void addExpansao(Transformacao transformacao) { this.transformacao = transformacao.transformMatrix(this.transformacao); }
/** * Inclui um movimentação no objeto * * @param transformacao */ public final void addMovimentacao(Transformacao transformacao) { this.transformacao = transformacao.transformMatrix(this.transformacao); }