The gruff package
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
- 'ghc-options: -O2' is rarely needed. Check that it is giving a real benefit and not just imposing longer compile times on your users.
- 'cc-options: -O[n]' is generally not needed. When building with optimisations Cabal automatically adds '-O2' for C code. Setting it yourself interferes with the --disable-optimization flag.
- Exposed modules use unallocated top-level names: Fractal
Mandelbrot Set fractal explorer using the ruff library.
Requires GTK, OpenGL, and GLSL fragment shader support; lots of RAM and multiple CPU cores recommended.
If you want to explore very deep zooms, you'll need hmpfr which currently requires GHC to be compiled with integer-simple instead of the default integer-gmp. To install with MPFR support, use cabal install gruff -fmpfr. Note that the default setting for this flag has changed since gruff-0.2.
gruff-0.3.4 updates dependencies for ghc-7.8. Colouring is improved.
gruff-0.3.3 relaxes dependencies for ghc-7.6.
gruff-0.3.1 is a bugfix release, fixing a performance problem wherein offscreen tiles were needlessly calculated. The performance gain is much less (and in many cases is in fact a performance loss) when using integer-simple.
gruff-0.3 includes a small library to allow external programs to create diagrams and animations with gruff. See the gruff-examples package. The interface has been remodelled to simplify it and add informative feature overlays.
gruff-0.2.1 was a bugfix release. Changes since gruff-0.2:
Supersampling bugs are fixed (no more undocumented quantization leading to inconsistent appearance at different zoom levels).
Race condition bugs in cache management are fixed (no more incompletely rendered images).
Internal changes/refactoring to make future additions easier.
Features in this version include:
Interactive fractal browser display with mouse controls:
Left click to zoom in (press shift for bigger jumps).
Right click to zoom out (press shift for bigger jumps).
Middle click to center.
Shift middle click to auto-focus.
Control left click to label with period.
Control right click to label with angled internal address (slow!).
Session persistance (stored in ~/.gruff/state.gruff - states can also be loaded from and saved to other files, including labels and rays). Note that the file format is incompatible with previous releases of gruff.
Tile cache (by default in ~/.gruff/cache - symlink it somewhere with a few GB of space if you plan on exploring a lot).
Can use MPFR if desired for higher precision, allowing deeper zooms and locating high period nucleii.
Limited amount of customizable colouring (colours for interior, border, and exterior points, as well as labels and rays).
Supersampling for more detailed images (useful range is 1 to 16).
Rudimentary scripting support (see the gruff-examples package).
Future versions will focus on enhancing the scripting support.
|Versions||0.1, 0.1.1, 0.2, 0.2.1, 0.3, 0.3.1, 0.3.3, 0.3.4, 0.3.4, 0.4|
|Change log||None available|
|Dependencies||base (==4.*), bytestring, containers (==0.*), directory (==1.*), filepath (==1.*), FTGL (==2.0), gruff (==0.3.4), gtk (>=0.11 && <0.13), gtkglext (>=0.11 && <0.13), hmpfr (>=0.3.2 && <0.4), mtl, old-locale (==1.*), OpenGL (==2.9.*), OpenGLRaw (>=1.1 && <2), parallel (>=3.1 && <3.3), qd (==1.*), qd-vec (==1.*), ruff (>=0.3.2 && <0.4), time (==1.*), Vec (>=0.9 && <2) [details]|
|Source repository||head: git clone git://gitorious.org/ruff/gruff.git|
this: git clone git://gitorious.org/ruff/gruff.git(tag v0.3.4)
|Uploaded||Mon Sep 22 23:10:26 UTC 2014 by ClaudeHeilandAllen|
|mpfr||use MPFR for higher precision floating point||Disabled||Automatic|
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
For package maintainers and hackage trustees