|
2 / 2 / 0
Регистрация: 31.03.2016
Сообщений: 44
|
|
Написать программу, отображающую перемещение точки11.09.2016, 13:43. Показов 2898. Ответов 18
Метки нет (Все метки)
Написать программу, отображающую перемещение точки в замкнутом прямоугольном пространстве на экране монитора. Предусмотреть отражение точки от сторон прямоугольника.
0
|
|
| 11.09.2016, 13:43 | |
|
Ответы с готовыми решениями:
18
Составить программу отображающую графики функций sin(x) cos(x) на интервале [Xmin, Xmax]
|
|
331 / 283 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
|
|
| 12.09.2016, 02:25 | |
|
Создайте picturebox и в нём перемещайте свою точку. Для отражения: либо через углы рассчитывать, либо просто инвертировать одну из координат(левая и правая стенка - x, верх и низ - y)
0
|
|
|
2 / 2 / 0
Регистрация: 31.03.2016
Сообщений: 44
|
|
| 12.09.2016, 09:34 [ТС] | |
|
0
|
|
|
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
|
|
| 12.09.2016, 10:28 | |
|
Зачем пикчурбокс? Прямо на форме рисуйте. Переопределите метод OnPaint, из аргументов которого можно получить graphics, и на нем рисуйте
0
|
|
|
331 / 283 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
|
|
| 12.09.2016, 16:06 | |
|
Форма создана для того, чтоб на ней контролы размещать, а не рисовать. Если потом понадобится сделать ввод скорости точки, то без picturebox это будет не удобно.
0
|
|
|
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
|
||
| 12.09.2016, 16:40 | ||
![]() Пичурбокс нужен для отображения картинки. Для подобных вещей он избыточен. Есть панель, на крайний случай, но тогда уже лучше юзерконтрол использовать
0
|
||
|
331 / 283 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
|
||
| 12.09.2016, 16:57 | ||
С контролами работать проще и удобнее, а для ручного рисования есть WinAPI.
0
|
||
|
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
|
||||||
| 13.09.2016, 11:58 | ||||||
|
Примитивный пример.
На практике так(при каждом кадре смешать на 1 пиксель) делать нельзя ибо частота кадров - величина переменная, а скорость должна быть постоянно всегда той, которая нужна нам. Для этого размер сдвига нужно рассчитывать по формуле расстояние = скорость * время, где скорость - какая-то константа выбранная вами, а время - время между двумя кадрами (запоминаем текущее время и в следующий раз вычитаем его из нового)
2
|
||||||
|
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
|
|
| 13.09.2016, 14:39 | |
|
zna926, куда разумнее делать анимацию движения ричтекстбокса? Серьезно!?)
1
|
|
| 13.09.2016, 15:47 | |
|
sldp, судите сами. Вот поднял я старый код. Движение шарика между стенками по горизонтали - 7 строк,
по вертикали - тоже 7. Можно, конечно, добавить регулирование скорости - еще 5 - 6 строк, а еще лучше наблюдать когда 2 шарика.
0
|
|
|
608 / 583 / 157
Регистрация: 29.06.2010
Сообщений: 1,620
|
|
| 13.09.2016, 16:39 | |
|
а потом мы расширим проект до сотни шариков по горизонтали, и до двух с половиной сотен по вертикали. И придём к выводу, что оба варианта, как собственно технология WinForms тут не подходит, т.к. здесь эта анимация отъест сотню нефти.
0
|
|
|
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
|
||
| 13.09.2016, 18:04 | ||
|
zna926, Только в моем случае мы практически одной (28й) строкой рисуем точку, а в вашем n-е количество тратим на создание, например, ричтекстбокса. И на выходе двигаем такой контрол, который создан для другого, и который, к тому же, достаточно тяжеловесный.
Просто етсь такой "учитель" по фамилии Волосатов (имени не помню). У него курсы по программированию. В частности и на C#. Есть там курс игры Сокобан(2д игра, передвигаем ящики на места), где, по его словам, мы научимся делать настоящую полноценную игру, которую отлично можно использовать в качестве портфолио. Вкратце говоря сделал он двумерный массив пикчурбоксов и меняет на них картинки. Все это глючит при ресайзе, но не суть. "Учитель" плевал на все каноны ООП, покрыл код огромным количеством костылей, как например не зная понятия события он вместо его создания запускает таймер, который постоянно читает одно поле и, елси оно отлично от -1, то что-то делает. И таким стилем все другое. И вроде бы пусть играется, все с чего-то начинали, но данный персонаж продает свои курсы за 4000р! Начинающий не знают ничего и верят ему, что пишет крутую программу согласно всем современным канонам. По этому где есть шарик отскакивающий от стенок, там скоро появляется и ракетка) И если уже начинать писать примитивную игрушку, то лучше хоть чутка грамотнее. ![]()
0
|
||
|
331 / 283 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
|
|||
| 14.09.2016, 07:00 | |||
|
Добавлено через 2 минуты
0
|
|||
|
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
|
|
| 14.09.2016, 10:34 | |
|
DevAlone, Грубо говоря событие Application.Idle вызывается всегда, когда выполнена вся очередь сообщений(клики мышью, изменение размера и т.п.)
1
|
|
|
331 / 283 / 78
Регистрация: 02.08.2016
Сообщений: 1,008
|
||
| 14.09.2016, 16:04 | ||
|
0
|
||
| 14.09.2016, 16:04 | |
|
Помогаю со студенческими работами здесь
19
Перемещение объекта из одной точки в другую и обратно Написать программу, отображающую перемещение точки в замкнутом прямоугольном пространстве на экране монитора Написать программу, отображающую графики функций
Написать программу анализирующую лог файл маршрутизатора, отображающую интенсивность сканирования портов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|