Научные статьиM.H.Sayidova, S.U.Pulatova2025
ИНТЕРАКТИВНОЕ ОПРЕДЕЛЕНИЕ КООРДИНАТ ТОЧЕК НА ГРАФИЧЕСКОМ ИЗОБРАЖЕНИИ С ИСПОЛЬЗОВАНИЕМ C++
Машуров Шерзод Туйчибоевич
Образование наука и инновационные идеи в мире · 2025
Аннотация
В статье представлено программное средство, разработанное для определения координат точек на графических изображениях (например, вручную нарисованных или отсканированных графиках). Программа позволяет пользователю открыть изображение, сопоставить его с осями координат, выбрать нужные точки на графике с помощью мыши и автоматически сохранить их координаты (x, y) в текстовом виде. Приложение разработано в среде Microsoft Visual Studio с использованием языка программирования C++ и технологии Windows Forms. В статье подробно описан интерфейс программы, её основные функции и порядок использования. Программа может быть полезна для оцифровки научно-технических графиков, анализа лабораторных работ и получения данных с графиков при инженерных расчётах. Программные возможности Разработанная программа представляет собой простое и удобное средство для определения координат точек на изображении. Пользователь может загрузить любой график или рисунок, после чего выбрать интересующие точки https://scientific-jl.org/obr 4 2 7 Выпуск журнала №-70 Часть–8_ июня –2025 ОБРАЗОВАНИЕ НАУКА И ИННОВАЦИОННЫЕ ИДЕИ В МИРЕ 2181-3187 с помощью мыши. Программа автоматически вычисляет координаты этих точек относительно центра изображения и выводит их в виде списка. При необходимости координаты можно сохранить в текстовый файл. Разработанная программа обладает следующими функциями: • Загрузка изображения: пользователь выбирает файл изображения на компьютере и загружает его через компонент PictureBox. • Сохранение исходных размеров изображения: программа сохраняет оригинальные размеры изображения. • Выбор точек с помощью мыши: при нажатии мыши на изображении определяется соответствующая координата на изображении. • Относительные координаты от центра: точка (0;0) принимается за центр изображения, и выбранные координаты рассчитываются относительно этого центра. • Отображение координат в TextBox: координаты каждой выбранной точки отображаются на экране. • Масштабирование изображения: пользователь может увеличивать или уменьшать масштаб изображения по желанию. • Возврат к исходному состоянию: с помощью кнопки "Нормальное состояние" изображение возвращается к оригинальным размерам. • Отображение осей координат и центра: с помощью события Paint на изображении отображаются оси X и Y, а также центральная точка. Загрузка изображения Загрузка изображения — это начальный этап работы программы, при котором пользователь выбирает графический файл, и он отображается в компоненте PictureBox. Пример реализации на C++/CLI (Windows Forms): https://scientific-jl.org/obr 4 2 8 Выпуск журнала №-70 Часть–8_ июня –2025 ОБРАЗОВАНИЕ НАУКА И ИННОВАЦИОННЫЕ ИДЕИ В МИРЕ 2181-3187 // Диалог для выбора изображения OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog(); openFileDialog1->Filter = "Изображения (*.bmp; *.jpg; *.png)|*.bmp;*.jpg;*.png"; if (openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK) { // Загрузка изображения System::Drawing::Image^ img = System::Drawing::Image::FromFile(openFileDialog1->FileName); pictureBox1->Image = img; // Сохранение оригинальных размеров originalWidth = img->Width; originalHeight = img->Height; // Масштаб по умолчанию scaleX = 1.0; scaleY = 1.0; https://scientific-jl.org/obr 4 2 9 Выпуск журнала №-70 Часть–8_ июня –2025 ОБРАЗОВАНИЕ НАУКА И ИННОВАЦИОННЫЕ ИДЕИ В МИРЕ 2181-3187 Эти строки кода загружают изображение и размещают его в PictureBox, сохраняя его оригинальные размеры. Определение координат при щелчке мыши Определение координат при щелчке мыши — это ключевая функция программы, которая позволяет вычислить положение точки, выбранной пользователем на изображении, и отразить её координаты. Когда пользователь нажимает на изображение (внутри PictureBox), срабатывает событие MouseClick или MouseDown, и координаты курсора преобразуются в координаты изображения с учётом масштаба и ориентации. Пример кода: // Получение реальных координат с учётом масштаба int realX = static_cast (e->X * scaleX); int realY = static_cast ((pictureBox1->ClientSize.Height - e->Y) * scaleY); Здесь: e->X и e->Y — координаты курсора мыши внутри PictureBox. scaleX и scaleY — коэффициенты масштабирования, если изображение было увеличено или уменьшено. Высота вычитается из e->Y, чтобы перевернуть ось Y и сделать координаты математически привычными (с положительным Y вверх). Затем координаты можно перевести относительно центра изображения: // Координата центра изображения https://scientific-jl.org/obr 4 3 0 Выпуск журнала №-70 Часть–8_ июня –2025 ОБРАЗОВАНИЕ НАУКА И ИННОВАЦИОННЫЕ ИДЕИ В МИРЕ 2181-3187 int centerX = imageW / 2; int centerY = imageH / 2; // Относительные координаты от центра int relativeX = realX - centerX; int relativeY = realY - centerY; Эти вычисления определяют положение выбранной точки относительно центра изображения. Отрисовка графических элементов Отрисовка графических элементов — это процесс визуального отображения вспомогательных линий и точек на изображении, таких как: • Ось X — горизонтальная линия, прох
Доказательный фрагмент
«В статье представлено программное средство, разработанное для определения координат точек на графических изображениях (например, вручную нарисованных или отсканированных графиках).»
Образец извлечения
Демо-превьюВ статье представлено программное средство, разработанное для определения координат точек на графических изображениях (например, вручную нарисованных или отсканированных графиках). Полный текст публикации CiteX не хранит — доступ к первоисточнику открывается по DOI согласно лицензии издателя и выбранному плану.
- Цитирований
- 0
- Просмотров
- 0
- Тип
- Журнал
- Страна
- Узбекистан
- Ключевые слова
- https scientific-jl, scientific-jl org, org obr, obr выпуск, выпуск журнала, журнала часть, часть июня
Смежные источники
Общество и инновацииKhosiyat MAMATKULOVA2024
Академические исследования в современной наукеKhudaiberdiyeva Arafat Israilovna, Ph.D Professor hudayberdiyevaarofat@gmail.com +12026
Научные статьиI.B.Yangiboyev, E.X.Berdanov +22025