diff --git a/KEITHLEY-2701/createImages b/KEITHLEY-2701/createImages index abec916b363f7228905f20f46f63e12c7fa5dc62..a2d747f227635dabc696e8dd9528b84a9bbe1112 100755 --- a/KEITHLEY-2701/createImages +++ b/KEITHLEY-2701/createImages @@ -1,38 +1,43 @@ -#!/bin/bash + #!/bin/bash # -# Rolf Niepraschk <Rolf.Niepraschk@ptb.de>, 2017-03-29 +# Rolf Niepraschk <Rolf.Niepraschk@ptb.de>, 2017-04-03 # # Erzeugt aus einem leeren Messgeräte-Bild und neun 7-Segment-Bildern -# neue Messgeräte-Bilder mit zufälliger Anzeige +# neue Messgeräte-Bilder # -# Parameter=Anzahl der Mantissenziffern -# (wenn angegeben, dann kein Exponenent) +# Parameter1 = Anzahl der erzeugten Bilddateien +# +# Parameter2 = Anzahl der Einzelziffern -MAIN="KEITHLEY-2701" # device name +MAIN="KEITHLEY-617" # device name IMAGE_DIR=./images -MAX_FILES=10 MAX_DIGITS=7 # do not edit! +MAX_FILES=10 # do not edit! +NUMBER_OF_DIGITS=$MAX_DIGITS + +SHOW_EXP=1 if [ -n "$1" ]; then - NUMBER_OF_DIGITS=$1 - SHOW_EXP=0 -else - NUMBER_OF_DIGITS=$MAX_DIGITS - SHOW_EXP=1 + MAX_FILES=$1 + if [ -n "$2" ]; then + SHOW_EXP=0 + NUMBER_OF_DIGITS=$2 + fi fi if (( $NUMBER_OF_DIGITS > $MAX_DIGITS )); then NUMBER_OF_DIGITS=$MAX_DIGITS -fi -if (( $NUMBER_OF_DIGITS < 1 )); then - NUMBER_OF_DIGITS=1 -fi +else + if (( $NUMBER_OF_DIGITS < 1 )); then + NUMBER_OF_DIGITS=1 + fi +fi rm -rf "$IMAGE_DIR" mkdir -p "$IMAGE_DIR" -dotFile='dot.png' -minusFile='minus.png' +_dotFile='dot.png' +_minusFile='minus.png' emptyCanvas='xc:transparent' digitFile[0]='digit-0.png' @@ -47,13 +52,13 @@ digitFile[8]='digit-8.png' digitFile[9]='digit-9.png' digitFile[99]=$emptyCanvas # empty canvas -digitPos[7]='+185+220' -digitPos[6]='+207+220' -digitPos[5]='+229+220' +digitPos[1]='+185+220' +digitPos[2]='+207+220' +digitPos[3]='+229+220' digitPos[4]='+251+220' -digitPos[3]='+273+220' -digitPos[2]='+295+220' -digitPos[1]='+317+220' +digitPos[5]='+273+220' +digitPos[6]='+295+220' +digitPos[7]='+317+220' dotPos[7]=${digitPos[7]} dotPos[6]=${digitPos[6]} @@ -69,7 +74,7 @@ DPR=$((RANDOM % $NUMBER_OF_DIGITS + 1)) # random dot position (1..$NUMBER_OF_DIG for (( i=1; i<=$MAX_DIGITS; i++ )); do DNR[$i]=$((RANDOM % 10)) # random digit number (0..9) if [ $DPR == $i ]; then - DF[$i]="$dotFile" + DF[$i]="$_dotFile" DP[$i]="." # dot character else DF[$i]=$emptyCanvas @@ -94,20 +99,20 @@ done fname="$IMAGE_DIR/$MAIN@$value@.png" convert body.png \ - $DIGIT1 -geometry ${digitPos[7]} -composite \ - $DF1 -geometry ${dotPos[7]} -composite \ - $DIGIT2 -geometry ${digitPos[6]} -composite \ - $DF2 -geometry ${dotPos[6]} -composite \ - $DIGIT3 -geometry ${digitPos[5]} -composite \ - $DF3 -geometry ${dotPos[5]} -composite \ + $DIGIT1 -geometry ${digitPos[1]} -composite \ + $DF1 -geometry ${dotPos[1]} -composite \ + $DIGIT2 -geometry ${digitPos[2]} -composite \ + $DF2 -geometry ${dotPos[2]} -composite \ + $DIGIT3 -geometry ${digitPos[3]} -composite \ + $DF3 -geometry ${dotPos[3]} -composite \ $DIGIT4 -geometry ${digitPos[4]} -composite \ $DF4 -geometry ${dotPos[4]} -composite \ - $DIGIT5 -geometry ${digitPos[3]} -composite \ - $DF5 -geometry ${dotPos[3]} -composite \ - $DIGIT6 -geometry ${digitPos[2]} -composite \ - $DF6 -geometry ${dotPos[2]} -composite \ - $DIGIT7 -geometry ${digitPos[1]} -composite \ - $DF7 -geometry ${dotPos[1]} -composite \ + $DIGIT5 -geometry ${digitPos[5]} -composite \ + $DF5 -geometry ${dotPos[5]} -composite \ + $DIGIT6 -geometry ${digitPos[6]} -composite \ + $DF6 -geometry ${dotPos[6]} -composite \ + $DIGIT7 -geometry ${digitPos[7]} -composite \ + $DF7 -geometry ${dotPos[7]} -composite \ $fname exiv2 -M"set Exif.Image.ImageDescription value=$value" $fname