src/Visualise.jl

changeset 59
7ee6be1823e8
parent 54
471f9f64ff2d
child 61
06cfef2c06c5
equal deleted inserted replaced
58:4a2c4ee27858 59:7ee6be1823e8
82 GR.fillrect(vp...) 82 GR.fillrect(vp...)
83 GR.selntran(1) 83 GR.selntran(1)
84 GR.restorestate() 84 GR.restorestate()
85 end 85 end
86 86
87 function do_visualise(imgs; refresh=true, fullscreen=false) 87 function do_visualise(imgs; refresh=true, fullscreen=false, windowsize=nothing)
88 n = length(imgs) 88 n = length(imgs)
89 # Get device dimensions in metres and pixels 89 # Get device dimensions in metres and pixels
90 scrw, scrh, pw, ph = GR.inqdspsize() 90 scrw, scrh, pw, ph = GR.inqdspsize()
91 imgaspect = n > 0 ? float(size(imgs[1], 1))/float(size(imgs[1], 2)) : 1 91 imgaspect = n > 0 ? float(size(imgs[1], 1))/float(size(imgs[1], 2)) : 1
92 # Scaling to maximum size window 92 # Scaling to maximum size window
94 # Set up window and transformations 94 # Set up window and transformations
95 GR.clearws() 95 GR.clearws()
96 GR.setscale(0); 96 GR.setscale(0);
97 GR.selntran(1) 97 GR.selntran(1)
98 # - First OS window size 98 # - First OS window size
99 if fullscreen 99 if !isnothing(windowsize)
100 w, h = float.(windowsize)
101 elseif fullscreen
100 w, h = float(scrw), float(scrh) 102 w, h = float(scrw), float(scrh)
101 elseif scrw/n>scrh 103 elseif scrw/n>scrh
102 w, h = float(sc*scrh*n), float(sc*scrh*imgaspect) 104 w, h = float(sc*scrh*n), float(sc*scrh*imgaspect)
103 else 105 else
104 w, h = float(sc*scrw), float(sc*scrw/n*imgaspect) 106 w, h = float(sc*scrw), float(sc*scrw/n*imgaspect)
123 x0 = (canvas[1]+canvas[2])/2 125 x0 = (canvas[1]+canvas[2])/2
124 hh = (canvas[4]-canvas[3])/2 126 hh = (canvas[4]-canvas[3])/2
125 x1 = x0-hh*(n/imgaspect) 127 x1 = x0-hh*(n/imgaspect)
126 x2 = x0+hh*(n/imgaspect) 128 x2 = x0+hh*(n/imgaspect)
127 GR.setviewport(x1, x2, canvas[3], canvas[4]) 129 GR.setviewport(x1, x2, canvas[3], canvas[4])
128 end 130 end
129 GR.setwindow(0, n, 0, 1) 131 GR.setwindow(0, n, 0, 1)
130 # Clear background 132 # Clear background
131 # Plot images 133 # Plot images
132 for i=1:n 134 for i=1:n
133 im = imgs[i]' 135 im = imgs[i]'

mercurial