Лабораторная работа 1: Резиновые объекты вариант 16S
Описание
Разработать программу поиска пары наименее различных по диаметру в любом заданном наборе кругов, которые произвольно расположены в ее графическом окне ограниченного размера без перекрытий. Требуемый набор формируется и изменяется путем построения новых или удаления существующих кругов. Для построения кругов должна использоваться техника резинового кольца, которое изображается пунктиром и управляется перемещением курсора мыши в рамке графического окна, пока ее левая кнопка удерживается в нажатом состоянии. Удаление любого круга должно производиться щелчком правой кнопки мыши, когда курсор находится внутри его изображения. Каждое изменение должны синхронно отражаться в динамическом массиве, где круги упорядочены по размерам, и сопровождаться закраской в графическом окне изображений пары наименее различных из них.
Завершение программы должно обеспечивать нажатие комбинации клавиш CTRL-О на клавиатуре. При разработке программы необходимо предусмотреть соответствующую обработку событий и изображений в ее графическом окне, используя библиотечные функции программного интерфейса Xlib из состава X Window System, а также реализовать сортировку массива кругов по размеру.