ри видалені з зображення. br/>В
Рис. 3 Приклад результату роботи програми. p align="justify"> трикутник програма перетворення
2. Керівництво програміста
2.1 Читання даних з файлу
Спочатку перетворимо графічний файл у текстовий, використовуючи утиліту txt2bmp. В результаті отримує текстовий файл В«out.txtВ» заповнений нулями і одиницями. 0 - колір пікселя зображення білий, 1 - колір пікселя чорний. p align="justify"> Текстовий файл зчитуємо до списку. Кожен елемент списку - рядок нулів і одиниць лічена з текстового файлу. br/>В
Рис.1. Зберігання зображення в пам'яті. br/>
.2 Ідентифікація фігури
.2.1 Пошук першої точки фігури
Для того щоб виявити фігуру, для початку потрібно знайти його першу точку. Обходимо матрицю зображення зверху вниз і зліва направо, поки не виявимо першу одиничну клітинку. br/>В
Рис.2. Обхід матриці зображення. Пошук першої точки. br/>
Як тільки перша точка знайдена, запускаємо рекурсивну функцію захоплення фігури. br/>
.2.2 Захоплення фігури
Координати першої одиничної точки передаємо у функцію захоплення фігури.
Принцип роботи функції захоплення фігури:
. отримуємо список координат сусідніх ненульових точок для даної точки.
. Зберігаємо координати знайденої точки в списку точок фігури і замінюємо його значення на 0.
. Повторюємо пункти 1 і 2 для всіх точок зі списку, отриманого у пункті 1
. Фігура вважається виявленою, якщо всі сусідні точки дорівнюють нулю.
В
Рис. 3. Порядок обходу сусідніх точок точки. br/>В
Рис.4. Початок захоплення фігури. br/>В
Рис. 5. Завершення захоплення фігури
Списки координат точок фігур зберігаємо в списку фігур. Пошук фігур закінчується, коли доходимо до нижньої правої точки. br/>
2.2.3 Пошук трикутників
Трикутники на зображенні можуть розташовуватися будь-яким чином, але можна виділити шість загальних положень трикутників.
В
Рис. 6. Загальні положення трикутників на зображенні. br/>
.2.4 Алгоритм пошуку трикутника
1. Перевіряємо замкнутість фігури. Якщо фігура не замкнута, то це не трикутник, інакше - переходимо до пункту 2.
. Виділяємо чотири крайні точки, переходимо до пункту 3.
. Вважаємо, що нижня точка фігури не визн...