-
Notifications
You must be signed in to change notification settings - Fork 2
A simple morphogenesis à la Turing program
License
thomasdeniau/pyfauxfur
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
README ====== This file provides basic explanations regarding the PyFauxFur project. It contains a simple descriptions of its features, system requirements, installation and usage instructions. For more information, please refer to the report, available in the report/ folder. FEATURES -------- PyFauxFur implements the Turing Morphogenesis model [Turing52], as described by Turk [Turk91]. It features real time display of the simulation results, and the calculations are done in a separate thread. It uses Qt for its graphical user interface, OpenGL for the image rendering, and Blitz++ (via SciPy) for its numerical calculations. REQUIREMENTS ------------ This program has been tested with python 2.5. It requires PyQt4, NumPy, SciPy and PyOpenGL >= 3.0. It has been tested with PyQt4 4.4.4, NumPy 1.2.1, SciPy 0.7.0 and PyOpenGL 3.0.0. INSTALLATION ------------ Apart from the dependencies, no installation should be necessary. If Ui_MainWindow.py has not been generated, you can do so by running ./gen.sh COMMON PROBLEMS --------------- ImportError: No module named Ui_MainWindow Please refer to the INSTALLATION section : you need to generate the necessary UI files for the Qt-based interface to be correctly displayed. These files may be generated automatically in a future release. USAGE ----- Simply run python PyFauxFur.py For additional usage information, you can run python PyFauxFur.py --help You can also generate a batch of sample images after 1000 iterations with ./test_images.sh SOME PATTERNS ------------- The default parameters (which you can see with the --help option) are a good starting point for interesting textures. Running the program for 1000 or so iterations with parameters within [0.5, 2] * default values will produce interesting results. Changing ß_i is not recommended. To get stripes, use D_a > 10 * D_b, the width of stripes will decrease when D_s increases. To obtain dots, use 5 * D_b > D_a > 3 * D_b. To obtain blobs and lines, use D_a >> D_b. The spots will be less intense as the number of iterations and D_s increase. REFERENCES ---------- [Turk1991] Greg Turk, "Generating Textures on Arbitrary Surfaces Using Reaction-Diffusion," Computer Graphics, Vol. 25, No. 4, (SIGGRAPH 91), July 1991, pp. 289-298. [Turing1952] Alan Turing, "The Chemical Basis of Morphogenesis," Philosophical Transactions of the Royal Society B, Vol. 237, pp. 37-72 (August 14, 1952). CODE INSPIRATION ---------------- Reaction-Diffusion Textures, Orion Sky Lawlor, http://charm.cs.uiuc.edu/users/olawlor/projects/2003/rd/ Turing's Reaction-Diffusion Model of Morphogenesis, Christopher G. Jennings, http://www.sfu.ca/~cjenning/toybox/turingmorph/
About
A simple morphogenesis à la Turing program
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published