diff options
| author | Akshay Nair <phenax5@gmail.com> | 2026-06-03 23:57:21 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2026-06-03 23:57:21 +0530 |
| commit | ed4b84d2ca7e5b13d010effefb8ae676d084124a (patch) | |
| tree | 7aa142e52a3a2bd9e1d760dc8648e523d919dae7 /image.sh | |
| parent | 3be6325b1292233fae4817b3b864eca7b9911898 (diff) | |
| download | sqlite-creative-coding-ed4b84d2ca7e5b13d010effefb8ae676d084124a.tar.gz sqlite-creative-coding-ed4b84d2ca7e5b13d010effefb8ae676d084124a.zip | |
Refactor image.sh to handle png + cleanup sql
Diffstat (limited to 'image.sh')
| -rwxr-xr-x | image.sh | 25 |
1 files changed, 18 insertions, 7 deletions
@@ -1,13 +1,24 @@ #!/usr/bin/env sh -DB=fun.db +set -eu -[ $# -lt 1 ] && echo "Fuck" && exit 1; +db() { sqlite3 -tabs -noheader "$DB" "$@"; } + +ppm() { + image_id="$1" + echo "P3" + db "SELECT width, height FROM images WHERE id='$image_id'" + echo "255" + db "SELECT r,g,b FROM pixels WHERE image_id='$image_id' ORDER BY y ASC, x ASC" +} + +save_png() { magick ppm:- "media/$1.png"; } -db() { sqlite3 -list -noheader "$DB" "$@"; } +display() { magick display ppm:-; } + +[ $# -lt 1 ] && echo "Fuck" && exit 1; image_id="$1" -echo "P3" -db "SELECT width, height FROM images WHERE id='$image_id'" | awk -F'|' '{ print $1 " " $2 }' -echo "255" -db "SELECT r,g,b FROM pixels WHERE image_id='$image_id' ORDER BY y ASC, x ASC" | tr '|' ' ' +DB="${2:-fun.db}" + +ppm "$image_id" | tee >(save_png "$image_id") | display |
