From 85bfe53d30a8e53890f5e07c43fe911f8a4d0b27 Mon Sep 17 00:00:00 2001
From: niepra01 <rolf.niepraschk@ptb.de>
Date: Thu, 6 Apr 2017 16:21:15 +0200
Subject: [PATCH] Code vereinfacht; mehr Variationen

---
 ADIXEN/createImages                    | 226 +++++++++++++------------
 ADIXEN/{char-0.png => digit-0.png}     | Bin
 ADIXEN/{char-1.png => digit-1.png}     | Bin
 ADIXEN/{char-2.png => digit-2.png}     | Bin
 ADIXEN/{char-3.png => digit-3.png}     | Bin
 ADIXEN/{char-4.png => digit-4.png}     | Bin
 ADIXEN/{char-5.png => digit-5.png}     | Bin
 ADIXEN/{char-6.png => digit-6.png}     | Bin
 ADIXEN/{char-7.png => digit-7.png}     | Bin
 ADIXEN/{char-8.png => digit-8.png}     | Bin
 ADIXEN/{char-9.png => digit-9.png}     | Bin
 ADIXEN/{char-A.png => digit-A.png}     | Bin
 ADIXEN/{char-C.png => digit-C.png}     | Bin
 ADIXEN/{char-E.png => digit-E.png}     | Bin
 ADIXEN/{char-F.png => digit-F.png}     | Bin
 ADIXEN/{char-H.png => digit-H.png}     | Bin
 ADIXEN/{char-r.png => digit-r.png}     | Bin
 ADIXEN/{char-dot.png => dot.png}       | Bin
 ADIXEN/{char-e0.png => edigit-0.png}   | Bin
 ADIXEN/{char-e1.png => edigit-1.png}   | Bin
 ADIXEN/{char-e2.png => edigit-2.png}   | Bin
 ADIXEN/{char-e3.png => edigit-3.png}   | Bin
 ADIXEN/{char-e4.png => edigit-4.png}   | Bin
 ADIXEN/{char-e5.png => edigit-5.png}   | Bin
 ADIXEN/{char-e6.png => edigit-6.png}   | Bin
 ADIXEN/{char-e7.png => edigit-7.png}   | Bin
 ADIXEN/{char-e8.png => edigit-8.png}   | Bin
 ADIXEN/{char-e9.png => edigit-9.png}   | Bin
 ADIXEN/{char-eMinus.png => eminus.png} | Bin
 ADIXEN/{char-ePlus.png => eplus.png}   | Bin
 ADIXEN/{char-minus.png => minus.png}   | Bin
 KEITHLEY-2701/createImages             |   2 +-
 32 files changed, 120 insertions(+), 108 deletions(-)
 rename ADIXEN/{char-0.png => digit-0.png} (100%)
 rename ADIXEN/{char-1.png => digit-1.png} (100%)
 rename ADIXEN/{char-2.png => digit-2.png} (100%)
 rename ADIXEN/{char-3.png => digit-3.png} (100%)
 rename ADIXEN/{char-4.png => digit-4.png} (100%)
 rename ADIXEN/{char-5.png => digit-5.png} (100%)
 rename ADIXEN/{char-6.png => digit-6.png} (100%)
 rename ADIXEN/{char-7.png => digit-7.png} (100%)
 rename ADIXEN/{char-8.png => digit-8.png} (100%)
 rename ADIXEN/{char-9.png => digit-9.png} (100%)
 rename ADIXEN/{char-A.png => digit-A.png} (100%)
 rename ADIXEN/{char-C.png => digit-C.png} (100%)
 rename ADIXEN/{char-E.png => digit-E.png} (100%)
 rename ADIXEN/{char-F.png => digit-F.png} (100%)
 rename ADIXEN/{char-H.png => digit-H.png} (100%)
 rename ADIXEN/{char-r.png => digit-r.png} (100%)
 rename ADIXEN/{char-dot.png => dot.png} (100%)
 rename ADIXEN/{char-e0.png => edigit-0.png} (100%)
 rename ADIXEN/{char-e1.png => edigit-1.png} (100%)
 rename ADIXEN/{char-e2.png => edigit-2.png} (100%)
 rename ADIXEN/{char-e3.png => edigit-3.png} (100%)
 rename ADIXEN/{char-e4.png => edigit-4.png} (100%)
 rename ADIXEN/{char-e5.png => edigit-5.png} (100%)
 rename ADIXEN/{char-e6.png => edigit-6.png} (100%)
 rename ADIXEN/{char-e7.png => edigit-7.png} (100%)
 rename ADIXEN/{char-e8.png => edigit-8.png} (100%)
 rename ADIXEN/{char-e9.png => edigit-9.png} (100%)
 rename ADIXEN/{char-eMinus.png => eminus.png} (100%)
 rename ADIXEN/{char-ePlus.png => eplus.png} (100%)
 rename ADIXEN/{char-minus.png => minus.png} (100%)

diff --git a/ADIXEN/createImages b/ADIXEN/createImages
index d2d5bd3..28c8456 100755
--- a/ADIXEN/createImages
+++ b/ADIXEN/createImages
@@ -1,25 +1,27 @@
 #!/bin/bash
 #
-# Rolf Niepraschk <Rolf.Niepraschk@ptb.de>, 2017-04-03
+# Rolf Niepraschk <Rolf.Niepraschk@ptb.de>, 2017-04-06
 #
 # Erzeugt aus einem leeren Messgeräte-Bild und neun 7-Segment-Bildern
 # neue Messgeräte-Bilder 
 #
 # Parameter1 = Anzahl der erzeugten Bilddateien
 #
+# Parameter2 = Anzahl der Einzelziffern
 
 MAIN="ADIXEN" # device name
 IMAGE_DIR=./images
 MAX_DIGITS=6 # do not edit!
+MAX_EDIGITS=3 # 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
@@ -30,49 +32,46 @@ 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'
 emptyCanvas='xc:transparent'
 
-dotFile[0]=$emptyCanvas 
-dotFile[1]='char-dot.png'
-
-charFile[0]='char-0.png'
-charFile[1]='char-1.png'
-charFile[2]='char-2.png'
-charFile[3]='char-3.png'
-charFile[4]='char-4.png'
-charFile[5]='char-5.png'
-charFile[6]='char-6.png'
-charFile[7]='char-7.png'
-charFile[8]='char-8.png'
-charFile[9]='char-9.png'
-charFile[10]='char-A.png'
-charFile[11]='char-C.png'
-charFile[12]='char-E.png'
-charFile[13]='char-F.png' 
-charFile[14]='char-H.png'
-charFile[15]='char-r.png'
-charFile[16]='char-minus.png'
-charFile[99]=$emptyCanvas 
-
-eCharFile[0]='char-e0.png'
-eCharFile[1]='char-e1.png'
-eCharFile[2]='char-e2.png'
-eCharFile[3]='char-e3.png'
-eCharFile[4]='char-e4.png'
-eCharFile[5]='char-e5.png'
-eCharFile[6]='char-e6.png'
-eCharFile[7]='char-e7.png'
-eCharFile[8]='char-e8.png'
-eCharFile[9]='char-e9.png'
-eCharFile[99]=$emptyCanvas
-
-ePrefixFile[0]='char-eMinus.png'
-ePrefixFile[1]='char-ePlus.png'
+digitFile[0]='digit-0.png'
+digitFile[1]='digit-1.png'
+digitFile[2]='digit-2.png'
+digitFile[3]='digit-3.png'
+digitFile[4]='digit-4.png'
+digitFile[5]='digit-5.png'
+digitFile[6]='digit-6.png'
+digitFile[7]='digit-7.png'
+digitFile[8]='digit-8.png'
+digitFile[9]='digit-9.png'
+digitFile[10]='digit-A.png'
+digitFile[11]='digit-C.png'
+digitFile[12]='digit-E.png'
+digitFile[13]='digit-F.png' 
+digitFile[14]='digit-H.png'
+digitFile[15]='digit-r.png'
+digitFile[16]='minus.png'
+digitFile[99]=$emptyCanvas 
+
+edigitFile[0]='edigit-0.png'
+edigitFile[1]='edigit-1.png'
+edigitFile[2]='edigit-2.png'
+edigitFile[3]='edigit-3.png'
+edigitFile[4]='edigit-4.png'
+edigitFile[5]='edigit-5.png'
+edigitFile[6]='edigit-6.png'
+edigitFile[7]='edigit-7.png'
+edigitFile[8]='edigit-8.png'
+edigitFile[9]='edigit-9.png'
+edigitFile[10]='eminus.png'
+edigitFile[11]='eplus.png'
+edigitFile[99]=$emptyCanvas
 
 NUM2PREFIXCHAR[0]='-'
 NUM2PREFIXCHAR[1]='+'
@@ -94,81 +93,90 @@ NUM2CHAR[13]='F'
 NUM2CHAR[14]='H'
 NUM2CHAR[15]='r'
 NUM2CHAR[16]='-'
-NUM2CHAR[99]='_'
-
-NUM2DOTCHAR[0]=''
-NUM2DOTCHAR[1]='.'
-
-charPos[6]='+80+192'
-charPos[5]='+148+192'
-charPos[4]='+215+192'
-charPos[3]='+282+192'
-charPos[2]='+348+192'
-charPos[1]='+417+192'
 
-dotPos[6]='+133+191'
-dotPos[5]='+199+191' 
-dotPos[4]='+265+191'
-dotPos[3]='+331+191'
-dotPos[2]='+398+191'
-dotPos[1]='+465+191'
-
-eCharPos[3]='+483+191'
-eCharPos[2]='+512+191'
-eCharPos[1]='+532+191'
+NUM2ECHAR[0]='0'
+NUM2ECHAR[1]='1'
+NUM2ECHAR[2]='2'
+NUM2ECHAR[3]='3'
+NUM2ECHAR[4]='4'
+NUM2ECHAR[5]='5'
+NUM2ECHAR[6]='6'
+NUM2ECHAR[7]='7'
+NUM2ECHAR[8]='8'
+NUM2ECHAR[9]='9'
+NUM2ECHAR[10]='-'
+NUM2ECHAR[11]='+'
+NUM2ECHAR[99]=''
+
+digitPos[1]='+80+192'
+digitPos[2]='+148+192'
+digitPos[3]='+215+192'
+digitPos[4]='+282+192'
+digitPos[5]='+348+192'
+digitPos[6]='+417+192'
+
+dotPos[1]='+133+191'
+dotPos[2]='+199+191' 
+dotPos[3]='+265+191'
+dotPos[4]='+331+191'
+dotPos[5]='+398+191'
+dotPos[6]='+465+191'
+
+edigitPos[1]='+483+191'
+edigitPos[2]='+516+191'
+edigitPos[3]='+550+191'
 
 for ((FNb=1; FNb<=MAX_FILES; FNb++)); do
 
-dp=$((RANDOM % $MAX_DIGITS + 1)) # the place of the dot (1..6)
-
+value=""
+DPR=$((RANDOM % $NUMBER_OF_DIGITS + 1)) # random dot position (1..$NUMBER_OF_DIGITS)
 for (( i=1; i<=$MAX_DIGITS; i++ )); do
-  if [ $i == 6 ]; then 
-    CHAR[$i]=$((RANDOM % 17)) # random char number (0..16, 16=minus)
+  if (( $i <= $NUMBER_OF_DIGITS )); then
+    R=$((RANDOM % 17)) # random digit number (0..16)
+    eval DIGIT$i=${digitFile[R]}
+    value+="${NUM2CHAR[R]}"
+    if [ $DPR == $i ]; then
+      eval DOT$i="$dotFile"
+      value+="."
+    else
+      eval DOT$i=$emptyCanvas;
+    fi
   else
-    CHAR[$i]=$((RANDOM % 16)) # random char number (0..15)
+    eval DIGIT$i=$emptyCanvas;
+    eval DOT$i=$emptyCanvas;
   fi
-  if [ $i == $dp ]; then
-    DOTCHAR[$i]=1  # dot
+done
+
+for (( i=1; i<=$MAX_EDIGITS; i++ )); do
+  if $SHOW_EXP; then
+    R=$((RANDOM % 12)) # random digit number (0..11)
+    eval EDIGIT$i=${edigitFile[R]}
+    value+="${NUM2ECHAR[R]}"
   else
-    DOTCHAR[$i]=0  # empty
+    eval EDIGIT$i=$emptyCanvas;
   fi
-  EPREFIX=$((RANDOM % 2)) # 0..1 (0=minus, 1=plus)
-  ECHAR[2]=$((RANDOM % 2)) # random char number (1 or 99, 99="_")
-  if [ ${ECHAR[2]} == 0 ]; then ECHAR[2]=99; fi
-  ECHAR[1]=$((RANDOM % 10)) # random char number (0..9)
-done 
+done
 
-value=""
-value+="${NUM2CHAR[${CHAR[6]} ]}${NUM2DOTCHAR[ ${DOTCHAR[6]}]}"
-value+="${NUM2CHAR[${CHAR[5]}]}${NUM2DOTCHAR[${DOTCHAR[5]}]}"
-value+="${NUM2CHAR[${CHAR[4]}]}${NUM2DOTCHAR[${DOTCHAR[4]}]}"
-value+="${NUM2CHAR[${CHAR[3]}]}${NUM2DOTCHAR[${DOTCHAR[3]}]}"
-value+="${NUM2CHAR[${CHAR[2]}]}${NUM2DOTCHAR[${DOTCHAR[2]}]}"
-value+="${NUM2CHAR[${CHAR[1]}]}${NUM2DOTCHAR[${DOTCHAR[1]}]}"
-value+="${NUM2PREFIXCHAR[${EPREFIX}]}"
-value+="${NUM2CHAR[${ECHAR[2]}]}"
-value+="${NUM2CHAR[${ECHAR[1]}]}"
-
-fname="$IMAGE_DIR/$MAIN@$value@.png"
+fname="$IMAGE_DIR/$MAIN@$value@.png" 
 
 echo -e "$FNb:\t$fname"
 
 convert body.png \
-  ${charFile[ ${CHAR[6]} ]}    -geometry ${charPos[6]}  -composite \
-  ${dotFile[ ${DOTCHAR[6]} ]}  -geometry ${dotPos[6]}   -composite \
-  ${charFile[ ${CHAR[5]} ]}    -geometry ${charPos[5]}  -composite \
-  ${dotFile[ ${DOTCHAR[5]} ]}  -geometry ${dotPos[5]}   -composite \
-  ${charFile[ ${CHAR[4]} ]}    -geometry ${charPos[4]}  -composite \
-  ${dotFile[ ${DOTCHAR[4]} ]}  -geometry ${dotPos[4]}   -composite \
-  ${charFile[ ${CHAR[3]} ]}    -geometry ${charPos[3]}  -composite \
-  ${dotFile[ ${DOTCHAR[3]} ]}  -geometry ${dotPos[3]}   -composite \
-  ${charFile[ ${CHAR[2]} ]}    -geometry ${charPos[2]}  -composite \
-  ${dotFile[ ${DOTCHAR[2]} ]}  -geometry ${dotPos[2]}   -composite \
-  ${charFile[ ${CHAR[1]} ]}    -geometry ${charPos[1]}  -composite \
-  ${dotFile[ ${DOTCHAR[1]} ]}  -geometry ${dotPos[1]}   -composite \
-  ${ePrefixFile[ ${EPREFIX} ]} -geometry ${eCharPos[3]} -composite \
-  ${eCharFile[ ${ECHAR[2]} ]}  -geometry ${eCharPos[2]} -composite \
-  ${eCharFile[ ${ECHAR[1]} ]}  -geometry ${eCharPos[1]} -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 \
+  $EDIGIT1  -geometry ${edigitPos[1]} -composite \
+  $EDIGIT2  -geometry ${edigitPos[2]} -composite \
+  $EDIGIT3  -geometry ${edigitPos[3]} -composite \
   $fname
   
 exiv2 -M"set Exif.Image.ImageDescription value=$value" $fname
@@ -180,8 +188,12 @@ exit
 -----------------------------------------------------------------------
 
 Auslesen der Exif-Daten:
-exiv2 -g exiv2 -g Exif.Image.ImageDescription -P v \
-  ./images/adixen@2.C1F20-_8@.png
---> value=2.C1F20-_8
-
-
+exiv2 -g Exif.Image.ImageDescription -P v ./images/ADIXEN@???@.png
+--> value=???
+
+echo 1:$DIGIT1:$DOT1
+echo 2:$DIGIT2:$DOT2
+echo 3:$DIGIT3:$DOT3
+echo 4:$DIGIT4:$DOT4
+echo 5:$DIGIT5:$DOT5
+echo 6:$DIGIT6:$DOT6
diff --git a/ADIXEN/char-0.png b/ADIXEN/digit-0.png
similarity index 100%
rename from ADIXEN/char-0.png
rename to ADIXEN/digit-0.png
diff --git a/ADIXEN/char-1.png b/ADIXEN/digit-1.png
similarity index 100%
rename from ADIXEN/char-1.png
rename to ADIXEN/digit-1.png
diff --git a/ADIXEN/char-2.png b/ADIXEN/digit-2.png
similarity index 100%
rename from ADIXEN/char-2.png
rename to ADIXEN/digit-2.png
diff --git a/ADIXEN/char-3.png b/ADIXEN/digit-3.png
similarity index 100%
rename from ADIXEN/char-3.png
rename to ADIXEN/digit-3.png
diff --git a/ADIXEN/char-4.png b/ADIXEN/digit-4.png
similarity index 100%
rename from ADIXEN/char-4.png
rename to ADIXEN/digit-4.png
diff --git a/ADIXEN/char-5.png b/ADIXEN/digit-5.png
similarity index 100%
rename from ADIXEN/char-5.png
rename to ADIXEN/digit-5.png
diff --git a/ADIXEN/char-6.png b/ADIXEN/digit-6.png
similarity index 100%
rename from ADIXEN/char-6.png
rename to ADIXEN/digit-6.png
diff --git a/ADIXEN/char-7.png b/ADIXEN/digit-7.png
similarity index 100%
rename from ADIXEN/char-7.png
rename to ADIXEN/digit-7.png
diff --git a/ADIXEN/char-8.png b/ADIXEN/digit-8.png
similarity index 100%
rename from ADIXEN/char-8.png
rename to ADIXEN/digit-8.png
diff --git a/ADIXEN/char-9.png b/ADIXEN/digit-9.png
similarity index 100%
rename from ADIXEN/char-9.png
rename to ADIXEN/digit-9.png
diff --git a/ADIXEN/char-A.png b/ADIXEN/digit-A.png
similarity index 100%
rename from ADIXEN/char-A.png
rename to ADIXEN/digit-A.png
diff --git a/ADIXEN/char-C.png b/ADIXEN/digit-C.png
similarity index 100%
rename from ADIXEN/char-C.png
rename to ADIXEN/digit-C.png
diff --git a/ADIXEN/char-E.png b/ADIXEN/digit-E.png
similarity index 100%
rename from ADIXEN/char-E.png
rename to ADIXEN/digit-E.png
diff --git a/ADIXEN/char-F.png b/ADIXEN/digit-F.png
similarity index 100%
rename from ADIXEN/char-F.png
rename to ADIXEN/digit-F.png
diff --git a/ADIXEN/char-H.png b/ADIXEN/digit-H.png
similarity index 100%
rename from ADIXEN/char-H.png
rename to ADIXEN/digit-H.png
diff --git a/ADIXEN/char-r.png b/ADIXEN/digit-r.png
similarity index 100%
rename from ADIXEN/char-r.png
rename to ADIXEN/digit-r.png
diff --git a/ADIXEN/char-dot.png b/ADIXEN/dot.png
similarity index 100%
rename from ADIXEN/char-dot.png
rename to ADIXEN/dot.png
diff --git a/ADIXEN/char-e0.png b/ADIXEN/edigit-0.png
similarity index 100%
rename from ADIXEN/char-e0.png
rename to ADIXEN/edigit-0.png
diff --git a/ADIXEN/char-e1.png b/ADIXEN/edigit-1.png
similarity index 100%
rename from ADIXEN/char-e1.png
rename to ADIXEN/edigit-1.png
diff --git a/ADIXEN/char-e2.png b/ADIXEN/edigit-2.png
similarity index 100%
rename from ADIXEN/char-e2.png
rename to ADIXEN/edigit-2.png
diff --git a/ADIXEN/char-e3.png b/ADIXEN/edigit-3.png
similarity index 100%
rename from ADIXEN/char-e3.png
rename to ADIXEN/edigit-3.png
diff --git a/ADIXEN/char-e4.png b/ADIXEN/edigit-4.png
similarity index 100%
rename from ADIXEN/char-e4.png
rename to ADIXEN/edigit-4.png
diff --git a/ADIXEN/char-e5.png b/ADIXEN/edigit-5.png
similarity index 100%
rename from ADIXEN/char-e5.png
rename to ADIXEN/edigit-5.png
diff --git a/ADIXEN/char-e6.png b/ADIXEN/edigit-6.png
similarity index 100%
rename from ADIXEN/char-e6.png
rename to ADIXEN/edigit-6.png
diff --git a/ADIXEN/char-e7.png b/ADIXEN/edigit-7.png
similarity index 100%
rename from ADIXEN/char-e7.png
rename to ADIXEN/edigit-7.png
diff --git a/ADIXEN/char-e8.png b/ADIXEN/edigit-8.png
similarity index 100%
rename from ADIXEN/char-e8.png
rename to ADIXEN/edigit-8.png
diff --git a/ADIXEN/char-e9.png b/ADIXEN/edigit-9.png
similarity index 100%
rename from ADIXEN/char-e9.png
rename to ADIXEN/edigit-9.png
diff --git a/ADIXEN/char-eMinus.png b/ADIXEN/eminus.png
similarity index 100%
rename from ADIXEN/char-eMinus.png
rename to ADIXEN/eminus.png
diff --git a/ADIXEN/char-ePlus.png b/ADIXEN/eplus.png
similarity index 100%
rename from ADIXEN/char-ePlus.png
rename to ADIXEN/eplus.png
diff --git a/ADIXEN/char-minus.png b/ADIXEN/minus.png
similarity index 100%
rename from ADIXEN/char-minus.png
rename to ADIXEN/minus.png
diff --git a/KEITHLEY-2701/createImages b/KEITHLEY-2701/createImages
index 31ece16..35545cd 100755
--- a/KEITHLEY-2701/createImages
+++ b/KEITHLEY-2701/createImages
@@ -1,4 +1,4 @@
- #!/bin/bash
+#!/bin/bash
 #
 # Rolf Niepraschk <Rolf.Niepraschk@ptb.de>, 2017-04-03
 #
-- 
GitLab