Halcon獲取當前系統時間並以時間命名圖片保存在指定目錄下


前段時間,用到這一塊,發現不是太懂就上網搜索,結果搜是搜到了,但是礙於各種權限,不能直接快速的獲得,於是自己研究了一下午,勉強寫了出來,歡迎大家指正。代碼如下:

 1 read_image (Image, 'fabrik')  2 dev_get_window (WindowHandle)  3 if(-1!=WindowHandle)  4     set_display_font (WindowHandle, 16, 'sans', 'true', 'false')  5     disp_message (WindowHandle, '請確保要定義的路徑不存在於電腦中!', 'window', 12, 12, 'red', 'false')  6 endif  7 stop ()  8 *定義FilePath字符串路徑(文件夾長度不要超過10),來確定要保存圖片路徑的上一級文件夾  9 *警告:定義的文件夾字符串必須是電腦中不存在的,否則拋異常  10 *注意:不能只定義盤符來作為路徑,例如:'E:/' 是不允許的路徑  11 FilePath:='E:/圖片測試/TestPic/圖片測試/TestPic/圖片測試/TestPic/圖片測試/TestPic/Test'
 12 *根據路徑創建根文件夾  13 file_exists (FilePath, IsExist)  14 try
 15     if(IsExist)  16     else
 17         tuple_strstr (FilePath, '/', Position)  18         if(Position==0)  19         else
 20             tuple_split (FilePath, '/', Substrings)  21  tuple_length (Substrings, Length)  22             switch (Length)  23             case 1:  24                 break
 25             case 2:  26                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'
 27  make_dir (Dirs)  28                 break
 29             case 3:  30                 Dirs2:=Substrings[0]+'/'+Substrings[1]+'/'
 31                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'
 32  make_dir (Dirs2)  33  make_dir (Dirs)  34                 break
 35             case 4:  36                 Dirs2:=Substrings[0]+'/'+Substrings[1]+'/'
 37                 Dirs3:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'
 38                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'
 39  make_dir (Dirs2)  40  make_dir (Dirs3)  41  make_dir (Dirs)  42                 break
 43             case 5:  44                 Dirs2:=Substrings[0]+'/'+Substrings[1]+'/'
 45                 Dirs3:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'
 46                 Dirs4:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'
 47                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  48                        +Substrings[4]+'/'
 49  make_dir (Dirs2)  50  make_dir (Dirs3)  51  make_dir (Dirs4)  52  make_dir (Dirs)  53                 break
 54             case 6:  55                 Dirs2:=Substrings[0]+'/'+Substrings[1]+'/'
 56                 Dirs3:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'
 57                 Dirs4:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'
 58                 Dirs5:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  59                         +Substrings[4]+'/'
 60                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  61                        +Substrings[4]+'/'+Substrings[5]+'/'
 62  make_dir (Dirs2)  63  make_dir (Dirs3)  64  make_dir (Dirs4)  65  make_dir (Dirs5)  66  make_dir (Dirs)  67                 break
 68             case 7:  69                 Dirs2:=Substrings[0]+'/'+Substrings[1]+'/'
 70                 Dirs3:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'
 71                 Dirs4:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'
 72                 Dirs5:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  73                         +Substrings[4]+'/'
 74                 Dirs6:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  75                         +Substrings[4]+'/'+Substrings[5]+'/'
 76                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  77                        +Substrings[4]+'/'+Substrings[5]+'/'+Substrings[6]+'/'
 78  make_dir (Dirs2)  79  make_dir (Dirs3)  80  make_dir (Dirs4)  81  make_dir (Dirs5)  82  make_dir (Dirs6)  83  make_dir (Dirs)  84                 break
 85             case 8:  86                 Dirs2:=Substrings[0]+'/'+Substrings[1]+'/'
 87                 Dirs3:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'
 88                 Dirs4:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'
 89                 Dirs5:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  90                         +Substrings[4]+'/'
 91                 Dirs6:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  92                         +Substrings[4]+'/'+Substrings[5]+'/'
 93                 Dirs7:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  94                         +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'
 95                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\  96                        +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'+'/'\  97                        +Substrings[7]+'/'
 98  make_dir (Dirs2)  99  make_dir (Dirs3) 100  make_dir (Dirs4) 101  make_dir (Dirs5) 102  make_dir (Dirs6) 103  make_dir (Dirs7) 104  make_dir (Dirs) 105                 break
106             case 9: 107                 Dirs2:=Substrings[0]+'/'+Substrings[1]+'/'
108                 Dirs3:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'
109                 Dirs4:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'
110                 Dirs5:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 111                         +Substrings[4]+'/'
112                 Dirs6:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 113                         +Substrings[4]+'/'+Substrings[5]+'/'
114                 Dirs7:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 115                         +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'
116                 Dirs8:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 117                         +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'+'/'\ 118                         +Substrings[7]+'/'
119                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 120                        +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'+'/'\ 121                        +Substrings[7]+'/'+Substrings[8]+'/'
122  make_dir (Dirs2) 123  make_dir (Dirs3) 124  make_dir (Dirs4) 125  make_dir (Dirs5) 126  make_dir (Dirs6) 127  make_dir (Dirs7) 128  make_dir (Dirs8) 129  make_dir (Dirs) 130                 break
131             case 10: 132                 Dirs2:=Substrings[0]+'/'+Substrings[1]+'/'
133                 Dirs3:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'
134                 Dirs4:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'
135                 Dirs5:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 136                         +Substrings[4]+'/'
137                 Dirs6:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 138                         +Substrings[4]+'/'+Substrings[5]+'/'
139                 Dirs7:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 140                         +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'
141                 Dirs8:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 142                         +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'+'/'\ 143                         +Substrings[7]+'/'
144                 Dirs9:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 145                         +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'+'/'\ 146                         +Substrings[7]+'/'+Substrings[8]+'/'
147                 Dirs:=Substrings[0]+'/'+Substrings[1]+'/'+Substrings[2]+'/'+Substrings[3]+'/'\ 148                        +Substrings[4]+'/'+Substrings[5]+'/'+'/'+Substrings[6]+'/'+'/'\ 149                        +Substrings[7]+'/'+Substrings[8]+'/'+Substrings[9]+'/'
150  make_dir (Dirs2) 151  make_dir (Dirs3) 152  make_dir (Dirs4) 153  make_dir (Dirs5) 154  make_dir (Dirs6) 155  make_dir (Dirs7) 156  make_dir (Dirs8) 157  make_dir (Dirs9) 158  make_dir (Dirs) 159                 break
160  endswitch 161  endif 162  endif 163 catch (Exception) 164     if(-1!=WindowHandle) 165         set_display_font (WindowHandle, 16, 'sans', 'true', 'false') 166         disp_message (WindowHandle, '確保定義的路徑不存在於電腦中!', 'window', 12, 12, 'red', 'false') 167  endif 168 endtry 169 *以系統月日創建一個文件夾,並以系統時間為名稱保存圖片 170 get_system_time (MSecond, Second, Minute, Hour, Day, YDay, Month, Year) 171 Path:=Dirs+Month$'d'+'-'+Day$'d'+'/'
172 file_exists (Path, DirExist) 173 if(DirExist) 174 else
175  make_dir (Path) 176 endif 177 Filename:=Path+Hour$'d'+''+Minute$'d'+''+Second$'d'+''+'.bmp'
178 write_image (Image, 'bmp', 0, Filename)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM