aboutsummaryrefslogtreecommitdiff
path: root/algorithms
diff options
context:
space:
mode:
authorDavid Phillips <dbphillipsnz@gmail.com>2016-06-01 13:45:28 +1200
committerDavid Phillips <dbphillipsnz@gmail.com>2016-06-01 13:45:28 +1200
commitda9941939798abe41caa07830a5605f0d131a2f2 (patch)
treeba7d8e12f379d3d632ed02477dc747de58b0bac4 /algorithms
parentf2371dcb179928b8b36587d822daeb919b7d2d84 (diff)
downloadfractal-gen-da9941939798abe41caa07830a5605f0d131a2f2.tar.xz
Coords are now centre of image rather than top left
Diffstat (limited to 'algorithms')
-rw-r--r--algorithms/burning-ship.c12
-rw-r--r--algorithms/mandelbrot.c11
2 files changed, 15 insertions, 8 deletions
diff --git a/algorithms/burning-ship.c b/algorithms/burning-ship.c
index 7e27e4b..6f8c9d9 100644
--- a/algorithms/burning-ship.c
+++ b/algorithms/burning-ship.c
@@ -34,17 +34,21 @@ void
struct frame *f = &(d->parent_frame);
unsigned int x,y,i;
double a,b;
+ double left,top;
double complex z,c;
defaultsd(&d->parent_frame.scale, 3.5f);
- defaultsd(&d->parent_frame.top, -2.2f);
- defaultsd(&d->parent_frame.left, -2.2f);
+ defaultsd(&d->parent_frame.x, -0.45f);
+ defaultsd(&d->parent_frame.y, -0.45f);
+
+ left = d->parent_frame.x - (d->parent_frame.scale / 2);
+ top = d->parent_frame.y - (d->parent_frame.scale / 2);
/* FIXME document this */
- b = clust_id*(f->scale/size)+f->top; /* FIXME document this */
+ b = clust_id*(f->scale/size)+top; /* FIXME document this */
for (y = clust_id; y < size; y += clust_total) {
- a = d->core*(f->scale/size)+f->left;
+ a = d->core*(f->scale/size)+left;
for (x = d->core; x < size; x += cores) {
z = 0;
c = a+I*b;
diff --git a/algorithms/mandelbrot.c b/algorithms/mandelbrot.c
index 51d0c43..33d7cde 100644
--- a/algorithms/mandelbrot.c
+++ b/algorithms/mandelbrot.c
@@ -34,18 +34,21 @@ void
struct frame *f = &(d->parent_frame);
unsigned int x,y,i;
double a,b;
+ double left, top;
double complex z,c;
- defaultsd(&d->parent_frame.top, -1.75f);
- defaultsd(&d->parent_frame.left, -2.5f);
defaultsd(&d->parent_frame.scale, 3.5f);
+ defaultsd(&d->parent_frame.x, -0.75f);
+ defaultsd(&d->parent_frame.y, 0);
+ left = d->parent_frame.x - (d->parent_frame.scale / 2);
+ top = d->parent_frame.y - (d->parent_frame.scale / 2);
/* FIXME document this */
- b = clust_id*(f->scale/size)+f->top; /* FIXME document this */
+ b = clust_id*(f->scale/size)+top; /* FIXME document this */
for (y = clust_id; y < size; y += clust_total) {
- a = d->core*(f->scale/size)+f->left;
+ a = d->core*(f->scale/size)+left;
for (x = d->core; x < size; x += cores) {
z = 0;
c = a + I*b;