1 // Special module to run the mandlebrot set
7 void mandel(Plot2D *p2, int tol) {
10 double zr,zi,ztr,zti,cr,ci;
16 scalingx = (p2->xmax-p2->xmin)/f->width;
17 scalingy = (p2->ymax-p2->ymin)/f->height;
20 printf("working...\n");
21 for (i = 0; i < f->width; i++) {
22 for (j = 0; j < f->height; j++) {
23 zr = scalingx*i + p2->xmin;
24 zi = scalingy*j + p2->ymin;
29 ztr = zr*zr-zi*zi + cr;
33 if (ztr*ztr + zti*zti > 20) break;
37 if (n >= tol) FrameBuffer_plot(f,i,j,BLACK);
38 else FrameBuffer_plot(f,i,j,16+(int) (n*cscale));
40 if ((i % 10) == 0) printf("%d\n",i);