Программирование в кибор можно сравнить со сборкой готового бота с отдельных модулей (функций).
Прежде всего надо знать, что язык программирования совсем не важен. Важно иметь четкое логическое представления о порядке действий которые надо предпринять для достижения цели. Например у нас будет цель запустить калькулятор и нажать на нем цифрру 5 левой кнопкой.
Выбранный язык - всего лишь средство с помощью которого можно это реализовать. Один более удобный, другой менее для конкретной задачи. Кибор заточен для анализа изображений, идентификации на нем определенных нужных нам объектов, программное управление клавиатурой и мышью. Поэтому он является более удобным для программирования автоматизации действий на компьютере по "человеческому алгоритму", то есть запустил калькулятор, увидел на нем кнопку с цифрой 5, нажал на нее мышкой.
Немного о синтаксисе, переменных и функциях...
Переменные - участки компьютерной памяти, в которые можно записать и с которой можно считать необходимые нам данные.
Для того что бы мы могли в программе использовать эту память, надо объявить переменную, то есть выделить для своей программы участок памяти в которой будем хранить свои данные.
По аналогии с начальной математикой, есть детский пример:
a=5
b=7
c=a+b
Когда мы смотрим на этот пример, у нас в мозгу выделилась память под a - мы знаем что a это 5, под b - знаем что это 7. Теперь когда мы видим c=a+b, мы понимаем что это означает c=5+7. теперь если нас спросить чему равно c, мы ответим 12.
Если не углубляясь и не путая, то данные могут быть числовыми и строковыми. Числовые, это целые и дробные числа. Строковые - отдельные символы и целые строки текста.
Для хранения чисел предназначены переменные int и double. int - предназначена для хранения целых чисел. double - для дробных. Для строк и символов string и char. string для строк, char для символов.
По той же самой аналогии с примером что выше запишем это на языке Кибор:
int a=5; - объявили переменную a(присвоили участку памяти имя a) и записали в этот участок число 5
int b=7;
int c=a+b; - теперь вместо чисел мы указываем на память в которых записаны эти числа.
В ходе выполнения программы по одному и тому же имени переменной (в один и тот же участок памяти) можно перезаписывать сколько угодно разных значений. Важно только одно, что бы они были все того одного типа, который указан при объявление переменной. По поводу int и double... Конечно в участок памяти выделенной для дробных чисел можно записать целое. Просто в памяти оно будет выглядить как пример 5.00000000... Если в int записать
например дробное 5.087, то в памяти окажется только 5. Так же в string можно записать строку или же один символ как в char.
Указанный пример был простой. теперь немного усложним его и представим что нам надо хранить в памяти не 3 значения (a, b, c), а 1000. Тут на помощь придут массивы переменных. Что такое массив? Наверное слышали понятие "лесной массив"? это где в одном месте много много деревьев. Вот так и массив переменных это место (переменная) в которой много много участков памяти для хранения значений определенного типа. Вот пример выделения памяти под одно целое число:
int a;
А вот пример для выделения памяти под 1000 целых чисел:
int a[1000];
Теперь для обращения к любому из выделенных участков памяти нам надо обращаться к ней по имени и индексу переменной в массиве:
a[0]=5;
a[1]=6;
a[25]=125;
a[78]=12;
Таким же образом можно и считывать:
int c=a[25];
Вместо числового значения для указания индекса можно использовать другую переменную целочисленного значения int:
int u=25;
int c=a[u];
Это пример одномерного массива. Его можно сравнить с лентой разделенной на ящики в которых лежат хранимые значения. Вот пример двухмерного массива:
int a[100][50];
Его можно сравнить для ясности с шахматной доской, где вместо клеток так же ящики. Думаю объяснять не надо...
Пример трехмерного:
int a[100][50][25];
Сравниваем с кубиком рубика...
Допускается до 6 мерных массивов.
Функции - это специально разработанные подпрограммы для решения определенных целей.
Разберем на примере запуска калькулятора... Если нам надо написать скрипт для запуска калькулятора в Windows и мы не знаем каким образом это можно сделать в Кибор, нажимаем правую кнопку мыши в редакторе программы Кибор, находим меню "Функции" и ищем описание, которое нам поможет с запуском другой программы с помощью скрипта. находим "Запуск программ и открытие файлов". Открываем меню, видим функцию start(...). Нажимаем на нее. она вставится в редактор. Три точки
в функции означает что там должны быть дополнительные параметры. В данном случае это путь к файлу на диске. Для того что бы получить подробную справку о принимаемых параметрах воспользуемся интерактивной справкой, руководство тут...
Находим в справке описание функции start и в виде параметра указываем путь к файлу Калькулятор, к примеру: C:\Windows\System32\calc.exe
Путь к файлу является строкой, поэтому ее можно записать в строковую переменную string:
string pyt="C:\Windows\System32\calc.exe";
Затем эту строку по имени переменной указать в start:
start(pyt);
Или сразу указать строку в функции:
start("C:\Windows\System32\calc.exe");
Выполнение такого скрипта запустит калькулятор.
Теперь думаем какие действия мы должны предпринять для нажатия кнопки 5... Это можно сделать не одним способом в Кибор, но мы рассмотрим именно "человеческий способ", то есть поиск кнопки на экране и щелчок на ней мыши.
Нажимаем правую кнопку в Кибор и ищем в функциях что то что может нам помочь идентифицировать зрительно кнопку 5 на экране... Это будет "Поиск 2D изображений на экране". Видим что это функция findimage. Вставляем ее в редактор и с помощью поиска в справке или на форуме, так же как и с функцией start, ознакамливаемся с ее параметрами. В ходе ознакомления видим что нам надо вызвать функцию loadimage. Так же читаем справку и ознакамливаемся с графическим редактором. Смотрим примеры и учимся. И тут.
После того как мы поняли как найти кнопку на экране, с помощью меню в Кибор "функции" ищем как нам кликнуть на ней. это будет "Управление мышью". дальше по аналогии.
С синтаксисом все просто. Точка с запятой означает конец команды. Очень много примеров, которые показывают синтаксис. Почитать так же можно тут.
Основные темы которые надо прочитать перед созданием скриптов.
Полный список функций Кибор с ссылками и описанием
Видео гайд основ использования Кибор
Работа с графическим интерфейсом в играх и программах. Подготовка графического материала для использования в скриптах при поиске и анализе изображений.
Гайд как правильно пользоваться графическим редактором Кибор
Загрузка и работа с картинками.
Сканирование экрана и поиск изображений.
Использование переменных в "кибор".
Работа с мышью в "Кибор".
Работа с клавиатурой в "Кибор".
Логические операции и переходы.
Создание функций.
Проектирование программы. Оптимальная структура.
В справке нет описаний функций которые появились в процессе выхода новых версий.
Узнать весь список функций можно нажав правую кнопку в редакторе.
Описание новых функций смотрите в Обновление Кибор
|