|
Векторное движение шейпа (объекта)
|
|||
---|---|---|---|
#18+
Здравствуйте. Вчера задался такой целью: У меня на форме есть 2 шейпа (А и Б), и шейп (А) должен двигаться (или достичь координат) шейпа (Б). ( см. пункт 1 на рис. ) Движение должно быть не скачком, а плавным. Собственно проблема и стоит в том, КАК описать код движения. Код: plaintext 1. 2.
А что делать, если он стоит как показано в пункте 2 (см. рис.)? Шейп (А) просто улетит в никуда. Я знаю, что можно как-то использовать вектор...но в голову ни 1 реализация не приходит. Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2011, 14:05 |
|
Векторное движение шейпа (объекта)
|
|||
---|---|---|---|
#18+
jabers, а в чем проблема использовать разное заранее вычисленное приращение? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2011, 14:55 |
|
Векторное движение шейпа (объекта)
|
|||
---|---|---|---|
#18+
Проблемы то нет, только каким образом оно высчитывается. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2011, 15:05 |
|
Векторное движение шейпа (объекта)
|
|||
---|---|---|---|
#18+
jabers, jabers, исходя из чистой математики, а не программирования, вертикальный вектор у тебя будет (конечная позиция).y - (начальная позиция).y горизонтальная соответственно (конечная позиция).х - (начальная позиция).х например, тебе нужно, чтобы объект двигался с определённой скоростью(10), то длина ветора, направленного к конечной точке, будет 10. отсюда находишь коэффициэнт k=(((конечная позиция).х - (начальная позиция).х) 2 +((конечная позиция).y - (начальная позиция).y) 2 ):10 тогда A.x = А.х + (конечная позиция).х - (начальная позиция).х*k A.y = A.y + (конечная позиция).y - (начальная позиция).у*K ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2011, 15:45 |
|
Векторное движение шейпа (объекта)
|
|||
---|---|---|---|
#18+
k=(((конечная позиция).х - (начальная позиция).х)2+((конечная позиция).y - (начальная позиция).y)2):10 2 A.x = (А.х + (конечная позиция).х - (начальная позиция).х):k A.y = (A.y + (конечная позиция).y - (начальная позиция).у):K ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2011, 15:49 |
|
Векторное движение шейпа (объекта)
|
|||
---|---|---|---|
#18+
А можете переписать это в код? Если есть Точка А и B Я не совсем понимаю формулы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2011, 17:28 |
|
Векторное движение шейпа (объекта)
|
|||
---|---|---|---|
#18+
jabers, что-то типа того Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2011, 18:00 |
|
Векторное движение шейпа (объекта)
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.11.2011, 18:12 |
|
|
start [/forum/topic.php?fid=60&fpage=92&tid=2158321]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 386ms |
total: | 512ms |
0 / 0 |