class Ficha { void dibujarforma() { cubo=40+zoom; if (cubo<20){cubo=20;} pushMatrix(); strokeWeight(1); line(posx, posy, 0, posx, posy, fecha); stroke(0, 255, 25, deep); line(posx, posy, fecha, posx, posy, fecha_doc); stroke(0, 185, 255, deep); strokeWeight(300/deep); if(deep > 66) { strokeWeight(9); } if(deep < 6) { strokeWeight(80); } point(posx, posy, fecha); stroke(0, 255, 25, deep); point(posx, posy, fecha_doc); strokeWeight(1); //line(posx, posy, 0, posx, posy, -altitud);//este es la linea de interporetacion textFont(futura30, fontsize); textAlign(LEFT); // mx = constrain(mouseX, posx-10, posx+10); // my = constrain(mouseY, posy-10, posy+10); if (overRect(fecha) == true) { translate(posx, posy, fecha); rotateY(textroty); rotateX(textrotx); rotateZ(textrotz); fill(255); text(label, 10, 0); fill(195); text(fecha+1800, 10, 20); textodesc=desc; } if(overRect(fecha_doc) == true) { translate(posx, posy, fecha_doc); rotateY(textroty); rotateX(textrotx); rotateZ(textrotz); textAlign(RIGHT); fill(195); text(autor_doc, -10, 20); text(grupo_doc, -10, 40); text(fecha_doc+1800, -10, 60); fill(255); text(titulo_doc, -10, 0); } popMatrix(); } boolean overRect(float zeta) { rango = cubo/10; equis = screenX(posx, posy, zeta); ye = screenY(posx, posy, zeta); if(mouseX >= equis-rango && mouseX <= equis+rango && mouseY >= ye-rango && mouseY <= ye+rango){ return true; } else { return false; } } }