;+ ; NAME: ; MM_RAND ; function mm_rand,a,n,outer=out if n_params() eq 1 then n=1 sa=size(a) ; if sa(1+sa(0)) gt 3 then message,'Neither BYTE, INT nor LONG !' ; case sa(0) of ; 2:begin if keyword_set(out) then $ return,mm_dil_n(a,n)-a $ else $ return,a-mm_ero_n(a,n) ; end ; 3:begin ; if sa(1+sa(0)) ne 1 then message,'Not BYTE for 3-dim !' ; b=a ; if keyword_set(out) then begin ; t=mm_dil_n(b,n) ; a=b-temporary(a) ; endif else begin ; t=mm_ero_n(b,n) ; a=temporary(a)-b ; endelse ; return,-1 ; end ; else:return,-2 ; endcase end ;-