Здравствуйте мастера autoit.
Помогите новичку разобраться в непростом деле.
Есть скрипт - формирующий числовую матрицу по картинке 1.jpg.
Красный цвет - означает 1, синий цвет - означает 2, зеленый цвет - означает 3.
По отдельности они работают хорошо.
А вот когда я их пытаюсь объединить в один файл - работать вместе не хотят.
Подскажите - как же эти три кода - объединить в один работоспособный код ?
Помогите новичку разобраться в непростом деле.
Есть скрипт - формирующий числовую матрицу по картинке 1.jpg.
Красный цвет - означает 1, синий цвет - означает 2, зеленый цвет - означает 3.
По отдельности они работают хорошо.
А вот когда я их пытаюсь объединить в один файл - работать вместе не хотят.
#include <GDIPlus.au3>
$sImage = @ScriptDir & "\1.jpg"
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile($sImage)
$iWidth = _GDIPlus_ImageGetWidth($hImage)
$iHeight = _GDIPlus_ImageGetHeight($hImage)
$hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)
_GDIPlus_ImageDispose($hImage)
_GDIPlus_Shutdown()
Global $iIndex, $iSize = $iWidth * $iHeight, $aPixels[$iHeight][$iWidth]
$tBits = DllStructCreate("dword[" & $iSize & "]")
_WinAPI_GetBitmapBits($hBitmap, 4 * $iSize, DllStructGetPtr($tBits))
For $i = 0 To $iHeight - 1
For $j = 0 To $iWidth - 1
$iIndex += 1
$iColor = DllStructGetData($tBits, 1, $iIndex)
$iRed = BitAND(BitShift($iColor, 16), 0xFF)
$iGreen = BitAND(BitShift($iColor, 8), 0xFF)
$iBlue = BitAND($iColor, 0xFF)
If $iRed > 105 And $iGreen < 70 And $iBlue < 70 Then
$aPixels[$i][$j] = 1
If $iRed < 70 And $iGreen > 115 And $iBlue < 70 Then
$aPixels[$i][$j] = 3
If $iRed < 70 And $iGreen < 70 And $iBlue > 150 Then
$aPixels[$i][$j] = 2
Else
$aPixels[$i][$j] = 0
EndIf
Next
Next
_WinAPI_DeleteObject($hBitmap)
#include <Array.au3>
_ArrayDisplay($aPixels)
$sImage = @ScriptDir & "\1.jpg"
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile($sImage)
$iWidth = _GDIPlus_ImageGetWidth($hImage)
$iHeight = _GDIPlus_ImageGetHeight($hImage)
$hBitmap = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)
_GDIPlus_ImageDispose($hImage)
_GDIPlus_Shutdown()
Global $iIndex, $iSize = $iWidth * $iHeight, $aPixels[$iHeight][$iWidth]
$tBits = DllStructCreate("dword[" & $iSize & "]")
_WinAPI_GetBitmapBits($hBitmap, 4 * $iSize, DllStructGetPtr($tBits))
For $i = 0 To $iHeight - 1
For $j = 0 To $iWidth - 1
$iIndex += 1
$iColor = DllStructGetData($tBits, 1, $iIndex)
$iRed = BitAND(BitShift($iColor, 16), 0xFF)
$iGreen = BitAND(BitShift($iColor, 8), 0xFF)
$iBlue = BitAND($iColor, 0xFF)
If $iRed > 105 And $iGreen < 70 And $iBlue < 70 Then
$aPixels[$i][$j] = 1
If $iRed < 70 And $iGreen > 115 And $iBlue < 70 Then
$aPixels[$i][$j] = 3
If $iRed < 70 And $iGreen < 70 And $iBlue > 150 Then
$aPixels[$i][$j] = 2
Else
$aPixels[$i][$j] = 0
EndIf
Next
Next
_WinAPI_DeleteObject($hBitmap)
#include <Array.au3>
_ArrayDisplay($aPixels)
Подскажите - как же эти три кода - объединить в один работоспособный код ?