The mandulia package

[Tags: gpl, program]

Mandulia provides a zooming visualisation of the Mandelbrot Set as many Julia Sets. Featuring a profiled and optimized renderer, and a Lua configuration and scripting interface.

By default Mandulia compiles using SSE4 instructions. If your CPU does not support SSE4, you should add -f-SSE4 to your cabal-install command line.


[Skip to ReadMe]

Properties

Versions0.4, 0.5, 0.6, 0.7
Change logChangeLog
Dependenciesarray, base (==4.*), bytestring, containers, directory, filepath, GLUT (>=2.2), hslua (>=0.2), time [details]
LicenseGPL-3
Copyright(C) 2010 Claude Heiland-Allen <claudiusmaximus@goto10.org>
AuthorClaude Heiland-Allen
Maintainerclaudiusmaximus@goto10.org
StabilityProvisional
CategoryGraphics
Home pagehttp://gitorious.org/maximus/mandulia
Source repositoryhead: git clone git://gitorious.org/maximus/mandulia.git
this: git clone git://gitorious.org/maximus/mandulia.git(tag v0.5)
Executablesmandulia
UploadedSun Jul 25 03:02:59 UTC 2010 by ClaudeHeilandAllen
DistributionsNixOS:0.7
Downloads604 total (34 in last 30 days)
Votes
0 []
StatusDocs not available [build log]
All reported builds failed as of 2015-06-04 [all 2 reports]

Flags

NameDescriptionDefault
sse4Enable optimizations for SSE4 CPUs.Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for mandulia-0.5

Mandulia
========

Mandelbrot/Julia set explorer.


Invocation
----------

Multi-core CPU with lots of RAM recommended:

    mandulia configuration

Currently there is one preset configurations available:
'main' -- keyboard navigation with randomized attract mode.

To render videos (see below):

    mandulia configuration |
    ppmtoy4m -S444 -F25:1 |
    ffmpeg2theora -v 8 -f yuv4mpegpipe -o mandulia.ogv -


Controls
--------

'main' defines the following key bindings:

Escape   -- quit
F11      -- toggle full screen
a        -- enter attract mode immediately
r        -- record for 10 minutes (assuming 25fps)
s        -- record for 1 frame (aka screenshot)

Note that recording is via PPM images on 'stdout', so to avoid flooding
your terminal with binary data be sure to redirect it somewhere else.

As a side-effect, the following count as 'activity':

PageUp   -- zoom in
PageDown -- zoom out
cursors  -- move around
End      -- stop moving
Home     -- return to base
[ ]      -- change speed
#        -- reset speed
{ }      -- change weight
~        -- reset weight

Attract mode is entered after 1 minute (assuming 25fps) of inactivity,
and left on any activity.

Other configurations may differ, check their sources for details.


Scripting
---------

Mandulia can be reconfigured without recompilation, using Lua scripts.
The first (non RTS) argument to 'mandulia' will be executed on startup.
First it will try to load it as a file, then via Lua's 'require()'.
See 'defaults.lua' to see the available interface, and 'main.lua' for an
example of keyboard navigation.  Note that some variables only take
effect on startup, and later modification will be ignored.