яться на другому поверсі або нижче, то будь-яка аудиторія, яка перебуває вище другого поверху, недоступна.
- Якщо початкова та кінцева аудиторії знаходяться на другому поверсі або вище, то будь-яка аудиторія, яка перебуває нижче другого поверху, недоступна.
Завдяки введеним обмеженням вдається значно скоротити час пошуку оптимального маршруту.
Крім функцій, що відповідають за пошук і формування оптимального шляху, реалізовані наступні функції:
- bool isAudi (char *) - перевірка, чи існує аудиторія з номером num ;
- Audience * getSpaudi () - отримання списку аудиторій;
- void addFriend (Audience *, char *) - додавання аудиторії «сусідки»;
- void getData () - отримання інформації про аудиторії;
- void findPath (char *, char *) - пошук оптимального шляху;
- Audience * getOptPath () - отримання посилання на початок оптимального шляху;
- Audience * findAudi (char *) - пошук аудиторії;
- void fullCBox (TComboBox *) - заповнення об'єкта типу TComboBox .
3.2.3 Компонент візуалізації
Даний компонент забезпечує:
- наочне уявлення користувачеві шляху, отриманого в ході роботи компонента пошуку оптимального маршруту;
- наочне уявлення користувачеві місця розташування запитуваної аудиторії;
- висновок схематичного плану для перегляду з можливістю переміщення і масштабування;
- висновок фотографій коридорів і аудиторій з можливістю здійснення навігації по ВУЗу.
У програмі передбачено два режими подання користувачеві запитуваної інформації: звичайний режим (режим карти) і фоторежим.
3.2.3.1 Реалізація режиму картки
Звичайний режим (режим карти) є режимом за замовчуванням. Для даного режиму компонент візуалізації містить набір графічних планів поверхів ВНЗ. План кожного з поверхів розбитий на 12 частин однакового розміру. Всі плани мають формат bmp і зберігаються в папці plan . Імена планів визначаються згідно з правилом: перша цифра номера відповідає номеру корпусу в структурному комплексі університету; другий - номеру поверху, третя і четверта - розташуванню при виведенні на екран для формування єдиного зображення.
Ця частина компонента візуалізації реалізована у вигляді класу Map .
Атрибути класу Map :
- TImage * map11, * map12, * map13, * map14, * map21, * map22, * map23, * map24, * map31, * map32, * map33 , * map34 - частини плану, номера говорять про їх розташування;
- TImage * curMap - поточна карта;
- Audience * optPath, * audi - оптимальний шлях;...