From 6dda6cac8c9e46cd9a234bab5cd64f0d6c1c3b2c Mon Sep 17 00:00:00 2001
From: niepra01 <rolf.niepraschk@ptb.de>
Date: Fri, 7 Apr 2017 14:04:46 +0200
Subject: [PATCH] Code vereinfacht; mehr Variationen

---
 UNKNOWN/createImages | 77 +++++++++++++++++++++-----------------------
 1 file changed, 37 insertions(+), 40 deletions(-)

diff --git a/UNKNOWN/createImages b/UNKNOWN/createImages
index 84d03de..82737a9 100755
--- a/UNKNOWN/createImages
+++ b/UNKNOWN/createImages
@@ -1,9 +1,9 @@
 #!/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 mit zufälliger Anzeige
+# neue Messgeräte-Bilder 
 #
 # Parameter1 = Anzahl der erzeugten Bilddateien
 #
@@ -15,22 +15,26 @@ MAX_DIGITS=3 # do not edit!
 MAX_FILES=10 # do not edit!
 NUMBER_OF_DIGITS=$MAX_DIGITS
 
+SHOW_EXP=true
+
 if [ -n "$1" ]; then
   MAX_FILES=$1
   if [ -n "$2" ]; then
+    SHOW_EXP=false
     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"
+mkdir -p "$IMAGE_DIR" 
 
 dotFile='dot.png'
 minusFile='minus.png'
@@ -46,8 +50,7 @@ digitFile[6]='digit-6.png'
 digitFile[7]='digit-7.png'
 digitFile[8]='digit-8.png'
 digitFile[9]='digit-9.png'
-digitFile[E]='digit-E.png'
-digitFile[99]=$emptyCanvas # empty canvas
+digitFile[10]='digit-E.png'
 
 digitPos[1]='+273+190'
 digitPos[2]='+319+190'
@@ -71,54 +74,48 @@ NUM2CHAR[10]='E'
 
 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]=${NUM2CHAR[$((RANDOM % 10 + 1))]} # random digit number (0..10)
-  if [ $DPR == $i ]; then
-    dotFile[$i]="$dotFile"
-    DOT[$i]="." # dot character
-  else
-    dotFile[$i]=$emptyCanvas
-    DOT[$i]=""
-  fi  
-done 
-
 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=${dotFile[i]}
-    value+="${DNR[i]}${DOT[i]}" 
+    R=$((RANDOM % 11)) # random digit number (0..10='0'..'E')
+    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 \
+  $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 \
   $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
+exiv2 -g Exif.Image.ImageDescription -P v ./images/ADIXEN@???@.png
+--> value=???
 
-exit
 
-- 
GitLab