Logo by Sockratease - Contribute your own Logo!


it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Follow us on Twitter
Welcome, Guest. Please login or register. September 15, 2019, 12:49:02 PM

Login with username, password and session length

The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!

Pages: [1]   Go Down
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: Buddhabrot renderer, JavaScript / Canvas  (Read 2363 times)
0 Members and 1 Guest are viewing this topic.
Fractal Lover
Posts: 212

« on: August 30, 2013, 08:54:52 AM »

I rewrote an old Buddhabrot renderer of mine from Processing to JavaScript / Canvas: http://alexsimes.com/index.php?foo=visual%20programming&bar=buddhabrot

There is another post on the process (was originally meant to be a question on how to optimize it but ended up being largely a monologue of what I was doing to speed it up, ha ha): http://www.fractalforums.com/programming/buddhabrot-optimizations/

General summary of what it is doing:
- Each color channel (red, green, and blue) is treated as a separate Buddhabrot. Each color channel has its own maximum iterations for the Mandelbrot Set equation. Before running any code related to adding orbit traps, all pixels that do not belong to the Mandelbrot Set are found (for each color channel).

- The function for adding orbit traps alternates between the color channels. Each time a channel is chosen it tries to add 10,000 orbit traps. The random starting points are selected from an array of pixels that do not belong to the Mandelbrot Set (the last bulleted step). The pixel has a random deviation added to it (for a greater range of starting points) and then it is converted to the complex plane. If the random point still does not belong to the Mandelbrot Set after the random deviation is added, then it contributes to the appropriate value buffer depending on what color channel is being used.

- After 10,000 attempts (mostly successful) of adding orbit traps, the chosen color channel has a histogram made based on its value buffer. Using a cumulative distribution function the orbit traps for the chosen color channel are set to the normal 0 - 255 range but with a high contrast regardless of the state of the value buffer (due to the cumulative distribution function). An explanation of this process can be found here: http://en.wikipedia.org/wiki/Histogram_equalization#Small_image
Posts: 192

« Reply #1 on: January 28, 2014, 12:42:53 PM »

I like your 3D Game of life by the way.

Fractal Molossus
Posts: 795

« Reply #2 on: January 29, 2014, 01:39:41 PM »

I have the feeling that you're doing something wrong.
Can i get the source code please ?

often times... there are other approaches which are kinda crappy until you put them in the context of parallel machines
(en) http://www.blog-gpgpu.com/ , (fr) http://www.keru.org/ ,
Sysadmin & DBA @ http://www.over-blog.com/
Fractal Lover
Posts: 212

« Reply #3 on: January 29, 2014, 03:47:15 PM »

@tit_toinou, Thanks

@ker2x, We went over this before in the topic linked above: http://www.fractalforums.com/programming/buddhabrot-optimizations/

It is JavaScript, the code for the project is its own .js file named buddhabrot.js. You can see it by looking at the page source in the browser, the link to the .js file is at the beginning in <head>.
« Last Edit: January 29, 2014, 04:52:43 PM by asimes » Logged
Pages: [1]   Go Down
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Multithreaded Buddhabrot Renderer Programming « 1 2 3 » johandebock 34 6899 Last post September 25, 2015, 05:16:24 PM
by johandebock
Dark canvas Mandelbulb3D Gallery bib 0 468 Last post January 12, 2011, 11:16:26 PM
by bib
Javascript Mandelbox Explorer Announcements & News joeytwiddle 0 3118 Last post June 29, 2011, 11:46:23 PM
by joeytwiddle
Mandelbrot / Julia explorer, JavaScript / Canvas Programming asimes 4 1553 Last post August 18, 2013, 10:26:21 PM
by asimes
Generating all the rules via javascript Structure Synth barcud 7 939 Last post April 13, 2016, 03:41:53 PM
by barcud

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.142 seconds with 27 queries. (Pretty URLs adds 0.009s, 2q)