Elf M. Sternberg
1471a14f1a
This implementation features concurrency, a little object-oriented code, and some old-school PNM. |
||
---|---|---|
.. | ||
src | ||
Cargo.toml | ||
README.md | ||
mandel.png |
README.md
Mandelbrot
An implementation of the the Mandelbrot set exercise from the end of chapter two of O'Reilly's Programming Rust.
I have deviated from the original in two ways, one major, one minor.
First, I've made the rendering plane, which maps from the cartesian
(pixel) plane to the complex plane, into a struct, and put all the major
rendering features into an implementation on that struct. By adding a
simple method, subplane()
, I was able to make crossbeam rendering much
simpler and easier to read by providing horizontal slices of the pixel
plane, and I was also able to avoid recalculating the relationship
between the two planes for every pixel. A small performance boost, but
worthwhile.
Second, the output is PNM rather than PNG. I'm a huge PNM partisan, and you kids better get off my lawn.