import java.applet.*; import java.awt.*; import java.awt.image.*; import java.awt.event.*; import java.io.*; import java.net.*; import java.text.*; import java.util.*; import java.util.zip.*; public class sketch_cubo_fractal extends BApplet { float xmag, ymag = 0; float newXmag, newYmag = 0; int Delay=7; void setup() { size(400, 400); colorMode(RGB, 100); background(90, 90, 90); } void loop() { translate(width/2, height/2, -70); newXmag = mouseX/(float)(width) * TWO_PI; newYmag = mouseY/(float)(height) * TWO_PI; float diff = xmag-newXmag; if (abs(diff) > 0.01f) { xmag -= diff/Delay; } diff = ymag-newYmag; if (abs(diff) > 0.01f) { ymag -= diff/Delay; } rotateX(ymag); rotateY(xmag); calculate(80,0,0,0); } void calculate (int lato, int xloc, int yloc, int zloc) { draw_target(lato,xloc,yloc,zloc); if(lato>10){ calculate(lato/2,-lato*2,yloc,zloc); calculate(lato/2,lato*2,yloc,zloc); calculate(lato/2,xloc,lato*2,zloc); calculate(lato/2,xloc,-lato*2,zloc); calculate(lato/2,xloc,yloc,lato*2); calculate(lato/2,xloc,yloc,-lato*2); } } void draw_target(int lato, int xloc, int yloc, int zloc) { push(); translate(xloc, yloc, zloc); fill(lato*3, lato*3, lato*3); box(lato); pop(); } }