public void centerAndZoom(double x, double y) { DecPoint center = scale((double)x, (double)y); height = height / zoom; width = width / zoom; xmin = center.X - width / 2; xmax = center.X + width / 2; ymin = center.Y - height / 2; ymax = center.Y + height / 2; generateBitmap(); }
private void generateBitmap() { for (int x = 1; x < bmpXmax; ++x) { for (int y = 1; y < bmpYmax; ++y) { double Xtemp; DecPoint point = scale(x, y); DecPoint z = new DecPoint(0, 0); int iter; for (iter = 0; iter < iter_max && z.Abs2() < 4; ++iter) { Xtemp = z.X; z.X = z.X * z.X - z.Y * z.Y + point.X; z.Y = 2 * Xtemp * z.Y + point.Y; } bitmap.SetPixel(x, y, colors[iter]); } } }