From 9b7c502fde87451cc739835c2b565dca5d3c39ab Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Mon, 27 Oct 2014 13:16:18 -0400 Subject: move window creation into the renderer --- examples/mandelbrot.jl | 16 +--------------- src/renderer.jl | 26 ++++++++++++++++++++------ 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/examples/mandelbrot.jl b/examples/mandelbrot.jl index 1eb25b0..4fa9af6 100644 --- a/examples/mandelbrot.jl +++ b/examples/mandelbrot.jl @@ -1,17 +1,3 @@ -using Tk -using ImageView -using Color - using FractalExplorer -imgsize = (640, 480) - -win = Toplevel("FractalExplorer", imgsize[1], imgsize[2], false) -frame = Frame(win) -pack(frame, expand=true, fill="both") -canvas = Canvas(frame, imgsize[1], imgsize[2]) -pack(canvas, expand=true, fill="both") -set_visible(win, true) -view(canvas, [ 0.0 for y=1:imgsize[2], x=1:imgsize[1] ], interactive=false) - -mandelbrot(canvas) +mandelbrot() diff --git a/src/renderer.jl b/src/renderer.jl index 45261e4..7355879 100644 --- a/src/renderer.jl +++ b/src/renderer.jl @@ -3,6 +3,17 @@ using Images using ImageView using Color +mandelbrot() = mandelbrot(createwindow()) +function mandelbrot(canvas) + fractal(canvas, z -> z, (z, c) -> z.^2 + c) +end + +julia(c = 0) = julia(createwindow(), c) +function julia(canvas, c = 0) + fractal(canvas, z -> c, (z, c) -> z.^2 + c) +end + +fractal(make_c, step) = fractal(createwindow(), make_c, step) function fractal(canvas, make_c, step) imgsize = get_size(canvas) img = [ HSV(0, 0, 0) for y=1:imgsize[1], x=1:imgsize[2] ] @@ -30,10 +41,13 @@ function fractal(canvas, make_c, step) end end -function mandelbrot(canvas) - fractal(canvas, z -> z, (z, c) -> z.^2 + c) -end - -function julia(canvas, c = 0) - fractal(canvas, z -> c, (z, c) -> z.^2 + c) +function createwindow(winsize = (640, 480)) + win = Toplevel("FractalExplorer", winsize[1], winsize[2], false) + frame = Frame(win) + pack(frame, expand=true, fill="both") + canvas = Canvas(frame, winsize[1], winsize[2]) + pack(canvas, expand=true, fill="both") + set_visible(win, true) + view(canvas, [ 0.0 for y=1:winsize[2], x=1:winsize[1] ], interactive=false) + return canvas end -- cgit v1.2.3