
Me gustaría imprimir algunas formas rellenas con el color actual o uno seleccionado (por ejemplo, \e[31m)
Mi objetivo es imprimir un círculo relleno (letra o) en la pantalla pero el fondo permanecerá como está.
Finalmente podré dibujar el tablero del juego Luno.
Respuesta1
echo '
████████
██████████████
████████████████
██████████████████
██████████████████
████████████████
██████████████
████████'
O mediante programación y usando video inverso en lugar de caracteres de boxeo Unicode:
$ awk -v radius=20 'BEGIN{
for (y = -radius; y <= radius; y++) {
x = sqrt(radius * radius - y * y)
printf "%*s\033[7m%*s\033[27m\n", radius - x, "", 2 * x, ""
}}'
█████████████
██████████████████
██████████████████████
████████████████████████
███████████████████████████
█████████████████████████████
███████████████████████████████
████████████████████████████████
██████████████████████████████████
███████████████████████████████████
████████████████████████████████████
█████████████████████████████████████
██████████████████████████████████████
███████████████████████████████████████
███████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
███████████████████████████████████████
███████████████████████████████████████
██████████████████████████████████████
█████████████████████████████████████
████████████████████████████████████
███████████████████████████████████
██████████████████████████████████
████████████████████████████████
███████████████████████████████
█████████████████████████████
███████████████████████████
████████████████████████
██████████████████████
██████████████████
█████████████
Es posible que desee estirar el x
eje, ya que los caracteres terminales suelen ser más altos que anchos.
$ awk -v radius=10 'BEGIN{
for (y = -radius; y <= radius; y++) {
x = sqrt(radius * radius - y * y)
printf "%*s\033[7m%*s\033[27m\n", 2*(radius - x), "", 4 * x, ""
}}'
██████████████████
████████████████████████
█████████████████████████████
████████████████████████████████
███████████████████████████████████
█████████████████████████████████████
███████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
███████████████████████████████████████
█████████████████████████████████████
███████████████████████████████████
████████████████████████████████
█████████████████████████████
████████████████████████
██████████████████