Michael Niedermayer
656911d84d
vsrc_mandelbrot: Fix vsrc_mandelbrot.c:358:85: warning: ‘epsilon’ may be used uninitialized in this function [-Wuninitialized]
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-24 00:08:05 +01:00
Michael Niedermayer
2c44aed82a
vsrc_mandelbrot: fix inner=period, the previous optimizations broke it.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-21 04:16:41 +01:00
Michael Niedermayer
90c02ae142
vsrc_mandelbrot: increase maxiter to 7189
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 23:52:29 +01:00
Michael Niedermayer
690860d0d5
vsrc_mandelbrot: Use threshold to detect cycles.
...
This way cycles are detected much earlier.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 23:28:56 +01:00
Michael Niedermayer
a5dfedd381
vsrc_mandelbrot: detect edges in interpol()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 22:22:21 +01:00
Michael Niedermayer
4ebbcdb3eb
vsrc_mandelbrot: avoid a | in interpol()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 22:11:53 +01:00
Michael Niedermayer
5dd16af6b5
vsrc_mandelbrot: increase default zoom speed by a factor of 2
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 19:42:24 +01:00
Michael Niedermayer
ca14808275
vsrc_mandelbrot: spatial interpolation
...
speeds the code up by a factor of about 2-3.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 19:41:28 +01:00
Michael Niedermayer
56fc4cf04f
vsrc_mandelbrot: always store values for periodicity checking, this avoids a few checks.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 15:02:34 +01:00
Michael Niedermayer
da1344e0cd
vsrc_mandelbrot: simplify second bailout search by not recalculating values.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 15:00:26 +01:00
Michael Niedermayer
e749b3780c
vsrc_mandelbrot: increase zyklus array size so that optimizations can write a bit more.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 14:16:53 +01:00
Michael Niedermayer
649d3932db
vsrc_mandelbrot: check bailout only once every 8 iterations, this is around 10% faster.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 14:15:56 +01:00
Michael Niedermayer
fe2efc5264
vsrc_mandelbrot: factorize periodicity checking too.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 13:55:51 +01:00
Michael Niedermayer
cf670fbc96
vsrc_mandelbrot: factorize main calculation out into a macro.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-19 13:51:44 +01:00
Michael Niedermayer
974d25e2db
mandelbrot: make mincol description and code match.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-16 15:13:01 +01:00
Michael Niedermayer
04bb26e3ee
mandelbrot: add dither to convergence & mincol colorings.
...
This avoids banding artifacts.
Note, low end TFTs still show some banding.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 21:33:11 +01:00
Michael Niedermayer
7575980ba4
mandelbrot: make mincol the default.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 20:04:25 +01:00
Michael Niedermayer
8d51cb4fb8
mandelbrot: add mincol inner coloring method.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 20:04:25 +01:00
Michael Niedermayer
5a68b1ac3b
mandelbrot: add inner drawing method to show converence time
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 17:26:51 +01:00
Michael Niedermayer
5582e557e6
mandelbrot: add "fractal" to the description
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 17:26:46 +01:00
Michael Niedermayer
4c52adad69
mandelbrot: Fix "warning: passing argument 2 of ‘draw_mandelbrot’ from incompatible pointer type"
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-15 17:26:41 +01:00
Michael Niedermayer
73af8ea356
mandelbrot: add math.h for log2()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-14 05:56:03 +01:00
Michael Niedermayer
70eb58cd92
mandelbrot: avoid INFINITY as openbsd seems not to like it.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-14 05:47:56 +01:00
Stefano Sabatini
3a9f2f1d65
vsrc_mandelbrot: set options through the opt framework
2011-11-13 21:31:23 +01:00
Giorgio Vazzana
c15400afc5
mandelbrot: remove always-false condition in fill_from_cache
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 19:41:21 +01:00
Michael Niedermayer
08dadd331f
mandelbrot: allow visualizing the period of converged points.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 19:28:24 +01:00
Michael Niedermayer
e8499ab171
mandelbrot: Add inner variable & enum for inner coloring schemes.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 19:26:22 +01:00
Michael Niedermayer
3cbe9afba5
mandelbrot: only check bailout once every 2 iterations.
...
Once we bailed out we calculate the exact iteration in which it would have happened if needed.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 18:14:40 +01:00
Michael Niedermayer
41fd1b2d5a
mandelbrot: add SQR() macro
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 18:14:10 +01:00
Giorgio Vazzana
e555119c73
mandelbrot: correct and simplify the formula used in NORMALIZED_ITERATION_COUNT
...
Use log(sqrt(mb->bailout)) instead of log(mb->bailout) because mb->bailout represent
the bailout radius squared, and then simplify the two sqrt().
This is also slightly faster.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 17:33:09 +01:00
Michael Niedermayer
88166fc579
mandelbrot: unroll the innermost loop once.
...
This allows us to remove a if() and a variable assignment.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 17:01:56 +01:00
Michael Niedermayer
1d06608732
mandelbrot: only check periodicity once for each period instead of twice.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 17:01:56 +01:00
Michael Niedermayer
2fee131b9e
mandelbrot: use period detection depening on left pixel and not the
...
previous calculated pixel, this is more accurate due to the last
calculated often being farther away.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 17:01:56 +01:00
Giorgio Vazzana
be97e7b9c2
mandelbrot: remove unused variables
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 01:27:30 +01:00
Giorgio Vazzana
459bba58d2
mandelbrot: add missing options to the parsing code
...
The following options were added: end_scale, end_pts, bailout, outer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-13 01:27:30 +01:00
Giorgio Vazzana
6024bdb21a
mandelbrot: fix sscanf format string
...
Replace ',' with ':'
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 21:00:12 +01:00
Michael Niedermayer
32dd67162a
mandelbrot: Print a note if the cache is too small
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 17:05:11 +01:00
Michael Niedermayer
905202ef6e
mandelbrot: increase cache size
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 17:04:50 +01:00
Michael Niedermayer
fd8d03457a
mandelbrot: increase resolution, and decrease zoom speed to maintain the cpu requirement.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 17:04:08 +01:00
Michael Niedermayer
40d6e30c55
mandelbrot: increase default maxiter
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:46:41 +01:00
Michael Niedermayer
6c5dd858b4
mandelbrot: Only use cycle detection if previous pixel was an interior pixel
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:46:21 +01:00
Michael Niedermayer
50b8f9388a
mandelbrot: detect cycles to speed up interior rendering.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:46:16 +01:00
Michael Niedermayer
3de934c873
mandelbrot: increase default maxiter to 1024
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:44:53 +01:00
Michael Niedermayer
07f272bdbb
mandelbrot: use cache to avoid recalculating points.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:44:53 +01:00
Michael Niedermayer
8ca891fc1a
mandelbrot: more interresting zoom coordinates borrowed from wikipedia.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 16:44:53 +01:00
Michael Niedermayer
ddeb194b14
mandelbrot: add a end_scale and pts so we can zoom in.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 00:04:16 +01:00
Michael Niedermayer
dece017280
mandelbrot: center coordinate reference on the images center
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 00:04:15 +01:00
Michael Niedermayer
aa198ad679
mandelbrot: make 2 variables const
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 00:04:15 +01:00
Michael Niedermayer
0e5b05134b
mandelbrot: fix typo that led to hardcoded max iteration count.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-12 00:04:15 +01:00
Michael Niedermayer
4ccd898af2
mandelbrot: support different outer coloring methods.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-11-11 23:22:04 +01:00