Array::Shaped::Console - Renders 2d arrays to a console using block symbols
use Array::Shaped::Console;
my @array[2;2] = (-1,1;1,-1);
# Prints "□▧\n▧□\n" using default "grayscale" console symbols array
printed(@array).say;
# Prints "□■\n■□\n" with infinity having a special default symbol.
@array = (-1,Inf;Inf,-1);
say printed( @array );
Array::Shaped::Console includes functions and ranges to easily render numeric 2d arrays to the console, using the same shape of the array, and adapting the array range to the number of symbols that are also handled in the function.
These symbol sets, as well as the "infinity" symbol, are predefined;
@grayscale = chr(0x25A1)..chr(0x25A9);
@dashes = '–'..'―';
@lines = '⎽'...'⎺';
@shades = '░'..'▓';
@lower = '▁'..'█';
@left = '▏'...'█';
@squares = <▪ ◾ ◼>;
@circles = <◌ ○ ◍ ●>;
@chars = ".:-=+*#%@".comb;
$inf-char = chr(0x25A0);
@grayscale is used by default.
Returns a string that collates, using the array shape, in a single string that separates rows by a carriage return.
JJ Merelo jjmerelo@gmail.com
Copyright 2020-2022 JJ Merelo
This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.