function drawboxes (nb, e, r, s) %DRAWBOXES: helper function for cs_dmpsy and ccspy % Example: % drawboxes (nb, e, r, s) % See also drawbox, plot % CXSparse, Copyright (c) 2006-2022, Timothy A. Davis. All Rights Reserved. % SPDX-License-Identifier: LGPL-2.1+ if (nb > 1) if (e == 1) r1 = r (1:nb) - .5 ; r2 = r (2:nb+1) - .5 ; c1 = s (1:nb) - .5 ; c2 = s (2:nb+1) - .5 ; else r1 = ceil (r (1:nb) / e) - .5 ; r2 = ceil ((r (2:nb+1) - 1) / e) + .5 ; c1 = ceil (s (1:nb) / e) - .5 ; c2 = ceil ((s (2:nb+1) - 1) / e) + .5 ; end kk = find (diff (c1) > 0 | diff (c2) > 0 | diff (r1) > 0 | diff (r2) > 0) ; kk = [1 kk+1] ; for k = kk plot ([c1(k) c2(k) c2(k) c1(k) c1(k)], ... [r1(k) r1(k) r2(k) r2(k) r1(k)], 'k', 'LineWidth', 1) ; end end