Russian Qt Forum

Программирование => Общий => Тема начата: Igors от Январь 05, 2018, 08:14



Название: Кто видел редактор скоростей ?
Отправлено: Igors от Январь 05, 2018, 08:14
Добрый день

Есть путь в пр-ве заданный контрольными точками, для каждой задано время t и координата p. Путь может всяко искривляться сплайнами, но всегда проходит через все контрольные точки и расстояние от точки до следующей всегда точно известно (по любой кривой/прямой).  Т.е. для любых 2 точек за время t2 - t1 должен быть пройден путь length(p1, p2).

Однако делать это можно всяко-разно. Напр есть всего 2 точки, можно тупенько идти с постоянной скоростью, а можно и с ускорением. Для 3 точек появляются еще варианты - напр в средней точке скорость может измениться скачком. Актуальна и обратная задача, напр пересчитать время точек так чтобы на участке пути (или на всем) скорость менялась по заданному закону. В общем заниматься тут есть чем.

Ну, как положено, начал с поиска "готовых проверенных решений". Вот только.. ни одного пока не нашел :) Плиз ткните, ткните носиком! И Вам будет приятно, и мне польза

Спасибо


Название: Re: Кто видел редактор скоростей ?
Отправлено: Old от Январь 05, 2018, 08:24
Традиционно не понятно. :)
Так нужен редактор, в котором пользователь может это все задавать или библиотека, которая сможет это выполнять?


Название: Re: Кто видел редактор скоростей ?
Отправлено: Igors от Январь 10, 2018, 13:58
Так, дубль-пусто (впрочем я и не питал особых надежд). Подыскал математику, инфы негусто, но кое-что есть. Смысл такой: для пары точек задаем время (от и до) + расстояние + начальную и конечную скорости и ускорения. В рез-те для каждого момента времени (в интервале от и до) имеем текущую скорость.

Левый пример в аттаче: объект проходит 100 метров за время 1 сек, обе скорости 100 - ну ничего интересного, горизонтальная линия, скорость постоянна.

А вот правый пример хитрее. Заданы разные начальная и конечные скорости, но в то же время остается требование пройти 100 метров за 1 сек. Ну вот скорость и виляет всяко чтобы это тоже выполнялось. Просто "соединить точки прямой" (на графике скорости) не удается именно из-за этого требования.

Проблема в том что для интерактивного редактирования это большой невдобняк. На 2 точках еще как-то можно добиться движения с постоянным ускорением (наклонная линия на графике), но уже на 3 - завал. Напрашивается назначить каким-то точкам "авто-подстройку", но не соображу как. 

Поэтому пример редактора с подобным ф-ционалом был бы очень желателен. Но увы  :'( И вот я всегда удивляюсь как люди попадают на задачи которые можно спокойно списать?  И почему мне так фатально с этим не везет? Ну здесь хотя бы. Ничего супер-сложного, в основном школьные знания: путь, скорость и ускорение. Так где же готовые решения?? Ведь "все уже давно написано", а современные технологии достигли огромного прогресса! Я не хочу велосипедить!!! (ребята, я свой!) Но.. разве у меня  есть др выбор? Ну это уже так, толку все равно нет, так хоть покалякаем  :)