АЛГОРИТМ ТА ПРОГРАМНА РЕАЛІЗАЦІЯ ІНТЕРФЕЙСУ БЕЗПОСЕРЕДНЬОГО РЕЖИМУ ДЛЯ СИСТЕМ ВІЗУАЛІЗАЦІЇ
DOI:
https://doi.org/10.20998/2413-4295.2025.02.08Ключові слова:
графічний інтерфейс користувача, віджети, людинно-машинний інтерфейс, тренажерні комплекси, візуалізація данихАнотація
Проведено глибокий аналіз підходів до побудови графічного інтерфейсу користувача із застосуванням двох основних режимів: збереженого та безпосереднього. Особливу увагу приділено принципам функціонування та реалізації безпосереднього режиму, який характеризується динамічністю та відсутністю необхідності збереження стану функціонально повних візуальних конструкцій (віджетів). Відзначено переваги такого підходу, зокрема спрощення структури коду, зменшення витрат на пам'ять, підвищення швидкодії побудови та відображення в реальному часі (рендерінгу) та можливість динамічної перебудови інтерфейсу залежно від змін у програмі. Запропоновано алгоритм побудови графічного інтерфейсу користувача у безпосередньому режимі, який забезпечує одночасний рендерінг віджетів і обробку подій введення, мінімізуючи ресурсоємність та складність програмної реалізації. Проаналізовано ключові аспекти функціонування такого інтерфейсу, зокрема: відсутність потреби у синхронізації даних між віджетами та основною програмою, адаптивне вирівнювання елементів інтерфейсу на екрані, підтримка динамічних списків і таблиць із прокруткою, а також ефективна обробка вводу від користувача, зокрема з непозиційних пристроїв, таких як геймпади чи джойстики. Особливу увагу приділено практичним аспектам застосування безпосереднього режиму для спеціалізованих програм, що працюють у реальному часі або на обмежених обчислювальних системах, таких як мікроконтролери. Як приклад реалізації розглянуто графічний інтерфейс для програми збору даних із бездротових інерційних сенсорів WitMotion BWT901, яка використовує запропонований алгоритм для динамічного відображення поточних показників сенсорів та вибору пристроїв зі списку активних з'єднань. Окремо розглянуто проблеми відображення підказок при наведенні курсора, адаптивне центрування групи віджетів на екрані, а також механізми сортування та обробки взаємодії з маркерами в системах тривимірної візуалізації, що мають ключове значення для графічних інтерфейсів тренажерних комплексів і HUD-дисплеїв. Запропонований підхід забезпечує гнучкість у розробці інтерфейсів різної складності та ефективне використання апаратних ресурсів, включаючи графічні прискорювачі. Висновки акцентують увагу на тому, що безпосередній режим графічного інтерфейсу користувача має значні переваги над традиційним збереженим режимом у багатьох прикладних сценаріях, де важливими є швидкодія, простота реалізації та мінімальні вимоги до апаратних ресурсів. Реалізація запропонованого алгоритму може знайти застосування в наукових додатках, тренажерних комплексах, системах збору даних із сенсорів, а також у пристроях IoT і вбудованих системах, де ефективність роботи елементів графічного інтерфейсу є критичною.
Посилання
Dix A., Finlay J., Abowd G. D., Beale R. Human-Computer Interaction. Pearson: Prentice Hall, 2005. 834 p.
User Interface Design. Case study: UX/UI design for complex technical simulation software with professional users. Interface Design. Available at: https://interface-design.co.uk/case-studies/ux-ui-design-technical-software-users (accessed 26.03.2025).
Paine D., Ghoshal D. Ramakrishnan L. Experiences with a Flexible User Research Process to Build Data Change Tools. Journal of Open Research Software, 2020, Vol. 8(1), pp. 18, doi: 10.5334/jors.284.
Liedtke S., Brendel F. Exploring the immediate mode GUI concept for graphical user interfaces in mixed reality applications. GI VR/AR Workshop, Gesellschaft für Informatik e.V. 2022, doi: 10.18420/vrar2022_1678.
Essick J. The Python-Based Laboratory: A Hands-On Guide for Scientists and Engineers. Chapter 2. Graphical User Interface Using Tkinter. Oxford. Oxford Academic, 2024, pp. 14–32, doi: 10.1093/9780191998478.003.0002.
Stokke K. A., Barash M., Järvi J. A domain-specific language for structure manipulation in constraint system-based GUIs. Journal of Computer Languages, 2023, Vol. 74(3), pp. 101175, doi: 10.1016/j.cola.2022.101175.
Mondal S. K., Pei Y., Dai H. N., Dipu Kabir H. M., Sahoo J. P. Boosting UI Rendering in Android Applications. IEEE 20th International Conference on Software Quality, Reliability and Security Companion (QRS-C), Macau, China, 2020, pp. 285-286, doi: 10.1109/QRS-C51114.2020.00055.
Zuev A., Karaman D., Olshevskiy A. Wireless Sensor Synchronization Method for Monitoring Short-Term Events. Advanced Information Systems, 2023, Vol. 7(4), pp. 33–40, doi: 10.20998/2522-9052.2023.4.04.
Zuev A. O., Karaman D. G., Yevseyenko O. M. Systemy modeliuvannia ta vizualizatsii imitatsiino-trenazhernykh kompleksiv: monohrafiia. Kharkiv. Sekishova T. Ye., 2023. 223 p.
Knoblauch J., Sethuraman A., Hey J. IMGui — a desktop GUI application for isolation with migration analyses. Molecular Biology and Evolution, 2017, Vol. 34, no. 2, pp. 500–504, doi: 10.1093/molbev/msw252.
Olsson T., Ericsson M., Wingkvist A. An exploration and experiment tool suite for code to architecture mapping techniques. In Proceedings of the 13th European Conference on Software Architecture (ECSA’19), Association for Computing Machinery, New York, NY, USA, 2019, Vol. 2, pp. 26–29, doi: 10.1145/3344948.3344997.
Pokorný P., Ševčík D. An application for solving truth functions. In Intelligent Algorithms in Software Engineering (CSOC 2020). Springer International Publishing, 2020, Vol 1224, pp. 341–351, doi: 10.1007/978-3-030-51965-0_30.
Yevseienko O., Kachanov P. Optimizing Energy Management in Shopping Centers with Smart Grid and Solar Power. 2024 IEEE 5th KhPI Week on Advanced Technology (KhPIWeek), Kharkiv, Ukraine, 2024, pp. 1-6, doi: 10.1109/KhPIWeek61434.2024.10878102.
Windows App Development. About Messages and Message Queues. Article, ed. 19.08.2022 (10 contributors). Available at: https://learn.microsoft.com/en-us/windows/win32/winmsg/about-messages-and-message-queues. (accessed 26.03.2025).
Unity Technologies. MonoBehaviour.OnGUI(). Unity Documentation, Ver. 2020.1. Publ.: 2021-02-24. Available at: https://docs.unity3d.com. 2024. (accessed 26.03.2025).
##submission.downloads##
Опубліковано
Як цитувати
Номер
Розділ
Ліцензія
Авторське право (c) 2025 Андрій Зуєв , Олег Євсеєнко , Дмитро Караман

Ця робота ліцензується відповідно до Creative Commons Attribution 4.0 International License.
Журнал публікує статті згідно з ліцензією Creative Commons Attribution International CC-BY.