xref: /aosp_15_r20/bootable/recovery/tools/image_generator/draw-progress.sh (revision e7c364b630b241adcb6c7726a21055250b91fdac)
1*e7c364b6SAndroid Build Coastguard Worker#!/bin/bash
2*e7c364b6SAndroid Build Coastguard Worker
3*e7c364b6SAndroid Build Coastguard Worker# arc central angle in degrees
4*e7c364b6SAndroid Build Coastguard Workerarc_size="64.5"
5*e7c364b6SAndroid Build Coastguard Worker
6*e7c364b6SAndroid Build Coastguard Workerarc_start=$(bc -l <<< "90 - $arc_size / 2")
7*e7c364b6SAndroid Build Coastguard Workerarc_end=$(bc -l <<< "90 + $arc_size / 2")
8*e7c364b6SAndroid Build Coastguard Worker
9*e7c364b6SAndroid Build Coastguard WorkerN=100
10*e7c364b6SAndroid Build Coastguard Workerfor ((i=0; i < $N; i++)); do
11*e7c364b6SAndroid Build Coastguard Worker	progress=$(bc -l <<< "$i / ($N - 1)")
12*e7c364b6SAndroid Build Coastguard Worker	fg_arc_start=$(bc -l <<< "$arc_end - $progress * $arc_size")
13*e7c364b6SAndroid Build Coastguard Worker
14*e7c364b6SAndroid Build Coastguard Worker	filename="progress$(printf "%02d" $i).png"
15*e7c364b6SAndroid Build Coastguard Worker	echo "-- Writing file: $filename"
16*e7c364b6SAndroid Build Coastguard Worker
17*e7c364b6SAndroid Build Coastguard Worker	convert -size 400x400 xc:black \
18*e7c364b6SAndroid Build Coastguard Worker		-draw "stroke-linecap round stroke-width 8 \
19*e7c364b6SAndroid Build Coastguard Worker				stroke gray ellipse 200,200 100,100 $arc_start,$arc_end \
20*e7c364b6SAndroid Build Coastguard Worker				stroke white ellipse 200,200 100,100 $fg_arc_start,$arc_end" "$filename"
21*e7c364b6SAndroid Build Coastguard Worker
22*e7c364b6SAndroid Build Coastguard Worker  echo "-- Writing file: rtl_$filename"
23*e7c364b6SAndroid Build Coastguard Worker  convert -size 400x400 xc:black \
24*e7c364b6SAndroid Build Coastguard Worker  		-draw "stroke-linecap round stroke-width 8 \
25*e7c364b6SAndroid Build Coastguard Worker  				stroke gray ellipse 200,200 100,100 $arc_start,$arc_end \
26*e7c364b6SAndroid Build Coastguard Worker  				stroke white ellipse 200,200 100,100 $fg_arc_start,$arc_end" "rtl_$filename"
27*e7c364b6SAndroid Build Coastguard Worker
28*e7c364b6SAndroid Build Coastguard Worker		mogrify -crop 120x30+140+280 "$filename"
29*e7c364b6SAndroid Build Coastguard Worker		mogrify -crop 120x30+140+280 "rtl_$filename"
30*e7c364b6SAndroid Build Coastguard Worker
31*e7c364b6SAndroid Build Coastguard Worker		# Use color format recovery can use
32*e7c364b6SAndroid Build Coastguard Worker		mogrify -define png:format=png24 -type TrueColor "$filename"
33*e7c364b6SAndroid Build Coastguard Worker    mogrify -define png:format=png24 -type TrueColor "rtl_$filename"
34*e7c364b6SAndroid Build Coastguard Worker
35*e7c364b6SAndroid Build Coastguard Worker		mogrify -flop "rtl_$filename"
36*e7c364b6SAndroid Build Coastguard Workerdone
37