![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Форумчанин
Регистрация: 28.05.2011
Сообщений: 309
|
![]()
Только у меня трабл с таймером.
Написал в событии "tick", чтобы(пример) повторило отрезок, каждую секунду прибаляя 1 к Х и У. А по нажатию на кнопку ничего не рисует..
Спеши медленно.
|
![]() |
![]() |
![]() |
#12 |
Форумчанин
Регистрация: 28.05.2011
Сообщений: 309
|
![]() Код:
Спеши медленно.
|
![]() |
![]() |
![]() |
#13 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,883
|
![]()
Объявить переменную, например
Код:
Код:
Делать нужно не рассчитывая это в момент рисования, а рассчитывать отдельно, рисовать отдельно. Далее, прибавлять 1 по х и у даст результат - перемещение только вправо вниз строго по диагонали 45 градусов. А надо во все стороны (т.е. приращения и с + и с минусом) и с учётом дробных смещений для диагоналей под любым углом. Тут обычно в простом виде берут вещественные координаты и рассчитывают в них, а при рисовке просто округляют. Ну а по-нормальному это делается на векторах, оно проще. Рассчитать в обоих вариантах так - координаты(вектор) одной точки вычитаются из другой и делятся на длину полученного вектора (корень из суммы квадратов разностей координат, теорема Пифагора, иными словами), получаем минимальную скорость (она тоже вектор может быть), она уже с учетом знаков, её можно умножить на число и варьировать итоговую скорость. Последний раз редактировалось phomm; 21.03.2013 в 22:05. |
![]() |
![]() |
![]() |
#14 |
Форумчанин
Регистрация: 28.05.2011
Сообщений: 309
|
![]()
phomm, у меня с математикой плоховато..
то-то совсем не могу понять как с помощью векторов и теоремы Пифагора это сделать и откуда скорость взять. Не могли бы Вы, объяснить на пальцах как это с векторами? Мне кажется это намного сложней.
Спеши медленно.
|
![]() |
![]() |
![]() |
#15 |
Форумчанин
Регистрация: 28.05.2011
Сообщений: 309
|
![]()
Прочитал статью на хабре про вектора, вроед и не так сложно и удобно очень, но не пойму как применить сюда?
Спеши медленно.
|
![]() |
![]() |
![]() |
#16 |
Форумчанин
Регистрация: 28.05.2011
Сообщений: 309
|
![]()
Придумал так: будет пикчербокс, внизу у него будет точка начало координат(0,0), от нее и будем двигаться, высчитывать скорость..
Теперь проблема в том, что как заставить машинку ровно передвинуться из одной точки в другую, если первая точка, к примеру (0,0), а другая (1,5). Если бы было первая (0,0), а вторая (3,3) - просто прибавлять Х и У.
Спеши медленно.
|
![]() |
![]() |
![]() |
#17 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,883
|
![]()
Давайте код (архив проекта) по максимуму наполненный тем что Вам надо и со всеми Вашими попытками, запилю Вам часть, что отвечает а это.
|
![]() |
![]() |
![]() |
#18 |
Форумчанин
Регистрация: 28.05.2011
Сообщений: 309
|
![]()
phomm, спасибо большое! Но, выходит, это Вы сделаете, а не я.
Давайте я сам попробую, а если уже совсем не выйдет - напишу Вам, хорошо ? Спасибо еще раз. Сейчас никак не могу понять как перемещение сделать..
Спеши медленно.
|
![]() |
![]() |
![]() |
#19 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
Процедура на Таймере: стираем объект по координатам X,Y изменяем (наращиваем координаты X,Y) на заданное приращение рисуем объект по полученным координатам X,Y и всё. ![]() |
|
![]() |
![]() |
![]() |
#20 |
Форумчанин
Регистрация: 28.05.2011
Сообщений: 309
|
![]()
Serge_Bliznykov, это конечно да, но как найти "заданное приращение"? Легко, когда надо вперелназадвлевовправо двигать, а когда надо на 10 клеточек по Х и 27 по У ?
Спеши медленно.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Управление игрушечной машинкой с компьютера | 8Observer8 | C# (си шарп) | 11 | 26.10.2012 17:27 |
Управление 2 экранами | Alexandr555 | Компьютерное железо | 13 | 06.07.2011 22:30 |
Управление | Костян 98 | Общие вопросы Delphi | 21 | 30.05.2011 16:31 |
Управление памятью | ilham | Операционные системы общие вопросы | 2 | 17.12.2008 18:29 |