@@ -142,6 +142,7 @@ function allocate_outputs(
142
142
hA, wA = size (A) .* (scale + 2 border + pad) .+ (pad)
143
143
hBr, wBr = size (Br) .* (scale + 2 border + pad) .+ (pad)
144
144
hBc, wBc = size (Bc) .* (scale + 2 border + pad) .+ (pad)
145
+ Arc_img = fill (background_color, hA, wA)
145
146
Ar_img = fill (background_color, hA, wA)
146
147
Ac_img = fill (background_color, hA, wA)
147
148
Br_img = fill (background_color, hBr, wBr)
@@ -150,8 +151,10 @@ function allocate_outputs(
150
151
if ! iszero (A[I])
151
152
area = matrix_entry_area (I, scale, border, pad)
152
153
barea = matrix_entry_plus_border_area (I, scale, border, pad)
154
+ Arc_img[barea] .= border_color
153
155
Ar_img[barea] .= border_color
154
156
Ac_img[barea] .= border_color
157
+ Arc_img[area] .= background_color
155
158
Ar_img[area] .= background_color
156
159
Ac_img[area] .= background_color
157
160
end
@@ -172,7 +175,7 @@ function allocate_outputs(
172
175
Bc_img[area] .= background_color
173
176
end
174
177
end
175
- return Ar_img, Ac_img, Br_img, Bc_img
178
+ return Arc_img, Ar_img, Ac_img, Br_img, Bc_img
176
179
end
177
180
178
181
# # Implementations for different AbstractColoringResult types start here
@@ -247,7 +250,11 @@ function show_colors!(
247
250
return A_img, B_img
248
251
end
249
252
253
+ mytriu (area) = [area[i, j] for i in axes (area, 1 ) for j in axes (area, 2 ) if i < j]
254
+ mytril (area) = [area[i, j] for i in axes (area, 1 ) for j in axes (area, 2 ) if i > j]
255
+
250
256
function show_colors! (
257
+ Arc_img:: AbstractMatrix{<:Colorant} ,
251
258
Ar_img:: AbstractMatrix{<:Colorant} ,
252
259
Ac_img:: AbstractMatrix{<:Colorant} ,
253
260
Br_img:: AbstractMatrix{<:Colorant} ,
@@ -278,9 +285,11 @@ function show_colors!(
278
285
r, c = Tuple (I)
279
286
area = matrix_entry_area (I, scale, border, pad)
280
287
if column_colors (res)[c] > 0
288
+ Arc_img[mytriu (area)] .= A_ccolors[c]
281
289
Ac_img[area] .= A_ccolors[c]
282
290
end
283
291
if row_colors (res)[r] > 0
292
+ Arc_img[mytril (area)] .= A_rcolors[r]
284
293
Ar_img[area] .= A_rcolors[r]
285
294
end
286
295
end
@@ -299,7 +308,7 @@ function show_colors!(
299
308
Bc_img[area] .= B_ccolors[c]
300
309
end
301
310
end
302
- return Ar_img, Ac_img, Br_img, Bc_img
311
+ return Arc_img, Ar_img, Ac_img, Br_img, Bc_img
303
312
end
304
313
305
314
end # module
0 commit comments