From ddaadd2d85a757bca164a2d54b562080e03f5039 Mon Sep 17 00:00:00 2001
From: niepra01 <rolf.niepraschk@ptb.de>
Date: Fri, 7 Apr 2017 11:07:34 +0200
Subject: [PATCH] Code vereinfacht; mehr Variationen

---
 KEITHLEY-2701/createImages | 130 +++++++++++++++++--------------------
 1 file changed, 59 insertions(+), 71 deletions(-)

diff --git a/KEITHLEY-2701/createImages b/KEITHLEY-2701/createImages
index 35545cd..9ce525d 100755
--- a/KEITHLEY-2701/createImages
+++ b/KEITHLEY-2701/createImages
@@ -1,6 +1,6 @@
 #!/bin/bash
 #
-# Rolf Niepraschk <Rolf.Niepraschk@ptb.de>, 2017-04-03
+# Rolf Niepraschk <Rolf.Niepraschk@ptb.de>, 2017-04-07
 #
 # Erzeugt aus einem leeren Messgeräte-Bild und neun 7-Segment-Bildern
 # neue Messgeräte-Bilder 
@@ -15,12 +15,12 @@ MAX_DIGITS=7 # do not edit!
 MAX_FILES=10 # do not edit!
 NUMBER_OF_DIGITS=$MAX_DIGITS
 
-SHOW_EXP=1
+SHOW_EXP=true
 
 if [ -n "$1" ]; then
   MAX_FILES=$1
   if [ -n "$2" ]; then
-    SHOW_EXP=0
+    SHOW_EXP=false
     NUMBER_OF_DIGITS=$2
   fi  
 fi
@@ -31,13 +31,13 @@ else
   if (( $NUMBER_OF_DIGITS < 1 )); then
     NUMBER_OF_DIGITS=1
   fi
-fi  
+fi
 
 rm -rf "$IMAGE_DIR"
-mkdir -p "$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'
@@ -50,7 +50,19 @@ digitFile[6]='digit-6.png'
 digitFile[7]='digit-7.png'
 digitFile[8]='digit-8.png'
 digitFile[9]='digit-9.png'
-digitFile[99]=$emptyCanvas # empty canvas
+digitFile[10]='minus.png'
+
+NUM2CHAR[0]='0'
+NUM2CHAR[1]='1'
+NUM2CHAR[2]='2'
+NUM2CHAR[3]='3'
+NUM2CHAR[4]='4'
+NUM2CHAR[5]='5'
+NUM2CHAR[6]='6'
+NUM2CHAR[7]='7'
+NUM2CHAR[8]='8'
+NUM2CHAR[9]='9'
+NUM2CHAR[10]='-'
 
 digitPos[1]='+185+220'
 digitPos[2]='+207+220'
@@ -60,90 +72,66 @@ digitPos[5]='+273+220'
 digitPos[6]='+295+220'
 digitPos[7]='+317+220'
 
-dotPos[7]=${digitPos[7]}
-dotPos[6]=${digitPos[6]}
-dotPos[5]=${digitPos[5]}
-dotPos[4]=${digitPos[4]}
-dotPos[3]=${digitPos[3]}
-dotPos[2]=${digitPos[2]}
 dotPos[1]=${digitPos[1]}
+dotPos[2]=${digitPos[2]}
+dotPos[3]=${digitPos[3]}
+dotPos[4]=${digitPos[4]}
+dotPos[5]=${digitPos[5]}
+dotPos[6]=${digitPos[6]}
+dotPos[7]=${digitPos[7]}
 
 for ((FNb=1; FNb<=MAX_FILES; FNb++)); do
 
-DPR=$((RANDOM % $NUMBER_OF_DIGITS + 1)) # random dot position (1..$NUMBER_OF_DIGITS)
-for (( i=1; i<=$MAX_DIGITS; i++ )); do 
-  DNR[$i]=$((RANDOM % 10)) # random digit number (0..9)
-  if [ $DPR == $i ]; then
-    DF[$i]="$_dotFile"
-    DP[$i]="." # dot character
-  else
-    DF[$i]=$emptyCanvas
-    DP[$i]=""
-  fi  
-done 
-
-fname="$IMAGE_DIR/$MAIN@$value@.png"
-
 value=""
-for (( i=1; i<=$MAX_DIGITS; i++ )); do  
+DPR=$((RANDOM % $NUMBER_OF_DIGITS + 1)) # random dot position (1..$NUMBER_OF_DIGITS)
+for (( i=1; i<=$MAX_DIGITS; i++ )); do
   if (( $i <= $NUMBER_OF_DIGITS )); then
-    eval DIGIT$i=${digitFile[ ${DNR[i]} ]}
-    eval DF$i=${DF[i]}
-    value+="${DNR[i]}${DP[i]}" 
+    R=$((RANDOM % 11)) # random digit number (0..10='0'..'-')
+    eval DIGIT$i=${digitFile[R]}
+    value+="${NUM2CHAR[R]}"
+    if [ $DPR == $i ]; then
+      eval DOT$i="$dotFile"
+      value+="."
+    else
+      eval DOT$i=$emptyCanvas;
+    fi
   else
     eval DIGIT$i=$emptyCanvas;
-    eval DF$i=$emptyCanvas;
+    eval DOT$i=$emptyCanvas;
   fi
 done
 
-fname="$IMAGE_DIR/$MAIN@$value@.png"
+fname="$IMAGE_DIR/$MAIN@$value@.png" 
+
+echo -e "$FNb:\t$fname"
 
 convert body.png \
-  $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[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 \
+  $DIGIT1   -geometry ${digitPos[1]}  -composite \
+  $DOT1     -geometry ${dotPos[1]}    -composite \
+  $DIGIT2   -geometry ${digitPos[2]}  -composite \
+  $DOT2     -geometry ${dotPos[2]}    -composite \
+  $DIGIT3   -geometry ${digitPos[3]}  -composite \
+  $DOT3     -geometry ${dotPos[3]}    -composite \
+  $DIGIT4   -geometry ${digitPos[4]}  -composite \
+  $DOT4     -geometry ${dotPos[4]}    -composite \
+  $DIGIT5   -geometry ${digitPos[5]}  -composite \
+  $DOT5     -geometry ${dotPos[5]}    -composite \
+  $DIGIT6   -geometry ${digitPos[6]}  -composite \
+  $DOT6     -geometry ${dotPos[6]}    -composite \
+  $DIGIT7   -geometry ${digitPos[7]}  -composite \
+  $DOT7     -geometry ${dotPos[7]}    -composite \
   $fname
-
+  
 exiv2 -M"set Exif.Image.ImageDescription value=$value" $fname
 
-echo -e "$FNb:\t$fname"
-
 done # MAX_FILES
 
 exit
-  
+
 -----------------------------------------------------------------------
 
 Auslesen der Exif-Daten:
-exiv2 -g Exif.Image.ImageDescription -P v ./images/151.108@GERAET_X.png
---> value=151.108
-
-echo 1:  $DIGIT1  -geometry ${digitPos[7]} -composite 
-echo 2:  $DF1                  -geometry ${dotPos[7]}     -composite 
-echo 3:  $DIGIT2  -geometry ${digitPos[6]}  -composite 
-echo 4:  $DF2                   -geometry ${dotPos[6]}    -composite
-echo 5:  $DIGIT3  -geometry ${digitPos[5]}  -composite 
-echo 6:  $DF3                   -geometry ${dotPos[5]}    -composite 
-echo 7:  $DIGIT4  -geometry ${digitPos[4]}  -composite 
-echo 8:  $DF4                   -geometry ${dotPos[4]}    -composite 
-echo 9:  $DIGIT5  -geometry ${digitPos[3]}  -composite 
-echo 10:  $DF5                   -geometry ${dotPos[3]}    -composite
-echo 11:  $DIGIT6  -geometry ${digitPos[2]}  -composite
-echo 12:  $DF6                   -geometry ${dotPos[2]}    -composite 
-echo 13:  $DIGIT7  -geometry ${digitPos[1]}  -composite
-echo 14:  $DF7                   -geometry ${dotPos[1]}    -composite 
-echo 15:  $fname
+exiv2 -g Exif.Image.ImageDescription -P v ./images/ADIXEN@???@.png
+--> value=???
 
-exit
 
-- 
GitLab