Logo by blob - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

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. April 20, 2024, 03:00:52 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
  Print  
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 3545 times)
0 Members and 1 Guest are viewing this topic.
asimes
Fractal Lover
**
Posts: 212



asimes
WWW
« 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
Logged
tit_toinou
Iterator
*
Posts: 192


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

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

ker2x
Fractal Molossus
**
Posts: 795


WWW
« 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 ?
Logged

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/
asimes
Fractal Lover
**
Posts: 212



asimes
WWW
« 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
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Multithreaded Buddhabrot Renderer Programming « 1 2 3 » johandebock 34 20375 Last post September 25, 2015, 05:16:24 PM
by johandebock
Dark canvas Mandelbulb3D Gallery bib 0 1238 Last post January 12, 2011, 11:16:26 PM
by bib
Javascript Mandelbox Explorer Announcements & News joeytwiddle 0 4271 Last post June 29, 2011, 11:46:23 PM
by joeytwiddle
Mandelbrot / Julia explorer, JavaScript / Canvas Programming asimes 4 3139 Last post August 18, 2013, 10:26:21 PM
by asimes
Generating all the rules via javascript Structure Synth barcud 7 4039 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.207 seconds with 24 queries. (Pretty URLs adds 0.014s, 2q)