summaryrefslogtreecommitdiff
path: root/flam3.c
diff options
context:
space:
mode:
authorLars-Dominik Braun <lars@6xq.net>2015-05-10 16:28:23 +0200
committerLars-Dominik Braun <lars@6xq.net>2015-05-10 16:28:23 +0200
commita83af6c9ed35849821f85267c7e9670ec87ad834 (patch)
treea574c66655d6ee418d544b0f052dc8ccc07b4bd0 /flam3.c
parentad199eccf9334c8ee00f52686a0f401b82f402bc (diff)
downloadpucket-a83af6c9ed35849821f85267c7e9670ec87ad834.tar.gz
pucket-a83af6c9ed35849821f85267c7e9670ec87ad834.tar.bz2
pucket-a83af6c9ed35849821f85267c7e9670ec87ad834.zip
Refactor det_matrix
Diffstat (limited to 'flam3.c')
-rw-r--r--flam3.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/flam3.c b/flam3.c
index 74decee..22f526a 100644
--- a/flam3.c
+++ b/flam3.c
@@ -1242,23 +1242,17 @@ static double round6(double x) {
return 1e-6*(int)(x+0.5);
}
+static double det_matrix(double2 m[3]) {
+ return m[0][0] * m[1][1] - m[0][1] * m[1][0];
+}
+
static int compare_xforms(const void *av, const void *bv) {
flam3_xform *a = (flam3_xform *) av;
flam3_xform *b = (flam3_xform *) bv;
- double aa[2][2];
- double bb[2][2];
double ad, bd;
- aa[0][0] = a->c[0][0];
- aa[0][1] = a->c[0][1];
- aa[1][0] = a->c[1][0];
- aa[1][1] = a->c[1][1];
- bb[0][0] = b->c[0][0];
- bb[0][1] = b->c[0][1];
- bb[1][0] = b->c[1][0];
- bb[1][1] = b->c[1][1];
- ad = det_matrix(aa);
- bd = det_matrix(bb);
+ ad = det_matrix(a->c);
+ bd = det_matrix(b->c);
if (a->color_speed > b->color_speed) return 1;
if (a->color_speed < b->color_speed) return -1;