summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-10-27 13:16:18 -0400
committerJesse Luehrs <doy@tozt.net>2014-10-27 13:16:18 -0400
commit9b7c502fde87451cc739835c2b565dca5d3c39ab (patch)
tree9a6e5a2942fdd49b39aef2c008227a2936246762
parente4a1e61a88a89930971aa59928481e19d02176dc (diff)
downloadjulia-fractals-9b7c502fde87451cc739835c2b565dca5d3c39ab.tar.gz
julia-fractals-9b7c502fde87451cc739835c2b565dca5d3c39ab.zip
move window creation into the renderer
-rw-r--r--examples/mandelbrot.jl16
-rw-r--r--src/renderer.jl26
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