Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.04.17;
Скачать: CL | DM;

Вниз

Перемещение объектов по дробной координате   Найти похожие ветки 

 
v_a_belousov   (2011-01-16 22:12) [0]

Здравствуйте! Вопрос немного странный, но попробую объяснить. Требуется создать движение объекта по формуле. Проблема в том, что координаты объекта по x и y получаются с дробной частью... например

Time summary: 50
x: 0
y: 0
time: 0
x: 2121.76223927187
y: 1102.5
time: 5
x: 4243.52447854375
y: 1960
time: 10
x: 6365.28671781562
y: 2572.5
time: 15
x: 8487.0489570875
y: 2940
time: 20
x: 10608.8111963594
y: 3062.5
time: 25
x: 12730.5734356312
y: 2940
time: 30
x: 14852.3356749031
y: 2572.5
time: 35
x: 16974.097914175
y: 1960
time: 40
x: 19095.8601534469
y: 1102.5
time: 45
x: 21217.6223927187
y: 3.09263725739584E-12
time: 50

Подскажите пожалуйста каким образом реализовать движение в таком случае. Если округлять round(x) -//- round(y), то при малых значениях, когда максимальные значения x и  y меньше 1 или не больше 1,5 такое округление не подходит.


 
DiamondShark ©   (2011-01-16 22:23) [1]


> Подскажите пожалуйста каким образом реализовать движение
> в таком случае.

Что значит "реализовать движение"? Нарисовать на экране? Ну так дробные пикселы пока ещё не научились производители мониторов делать.
Если "реализовать движение" -- это что-то другое, то так и реализовать, с дробной частью.

Требование целочисленности откуда вообще взялось?


 
v_a_belousov   (2011-01-16 22:34) [2]


> Что значит "реализовать движение"? Нарисовать на экране?
>  Ну так дробные пикселы пока ещё не научились производители
> мониторов делать.


Это я знаю, что не научились) не нарисовать, а показать скорее.


> Если "реализовать движение" -- это что-то другое, то так
> и реализовать, с дробной частью.


А чем показать это движение? Или в чем? Не могу никак додуматься.


> Требование целочисленности откуда вообще взялось?


Раз с дробной частью на экране пока нельзя...) значит надо как то округлить...  вот отсюда требование у меня в голове и взялось, потому что не могу никак понять как же показать движение с дробной частью...


 
Palladin ©   (2011-01-16 22:35) [3]

никак... я не понял рассказ про round, чем не устраивает?


 
DiamondShark ©   (2011-01-16 22:36) [4]


> как же показать движение с дробной частью...

Округлить.
Ты думаешь, кого-то будет волновать ошибка в полпиксела?


 
v_a_belousov   (2011-01-16 22:39) [5]


> я не понял рассказ про round, чем не устраивает?


К примеру вот такие значения у меня будут, что вполне часто будет встречатся. И если округлить их через round, то что получим...?

Time summary: 0.42256170628983
x: 0
y: 0
time: 0
x: 0.326530612244898
y: 0.0787442524695544
time: 0.042256170628983
x: 0.653061224489796
y: 0.139989782168097
time: 0.084512341257966
x: 0.979591836734694
y: 0.183736589095627
time: 0.126768511886949
x: 1.30612244897959
y: 0.209984673252145
time: 0.169024682515932
x: 1.63265306122449
y: 0.218734034637651
time: 0.211280853144915
x: 1.95918367346939
y: 0.209984673252145
time: 0.253537023773898
x: 2.28571428571429
y: 0.183736589095627
time: 0.295793194402881
x: 2.61224489795918
y: 0.139989782168097
time: 0.338049365031864
x: 2.93877551020408
y: 0.0787442524695545
time: 0.380305535660847
x: 3.26530612244898
y: 6.84131570838353E-17
time: 0.42256170628983


 
Palladin ©   (2011-01-16 22:40) [6]

ну сделай скаляцию на 1000, будет наглядно, в чем проблеммы то?


 
v_a_belousov   (2011-01-16 22:41) [7]


> ты думаешь, кого-то будет волновать ошибка в полпиксела?

честно говоря думал, что да... просто замучался уже с этим движением... вот и каша в голове...


 
Palladin ©   (2011-01-16 22:41) [8]

хотя не, на 1000 многовато будет, на 100 достаточно


 
DiamondShark ©   (2011-01-16 22:43) [9]


> вот такие значения у меня будут

такие значения надо масштабировать для визуализации.


 
v_a_belousov   (2011-01-16 22:44) [10]


> сделай скаляцию

В совокупности с

> Ты думаешь, кого-то будет волновать ошибка в полпиксела?

Спасибо вам) привели мне голову в порядок) думаю доделаю нормально теперь.



Страницы: 1 вся ветка

Текущий архив: 2011.04.17;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.006 c
2-1294441804
Студент
2011-01-08 02:10
2011.04.17
Как открыть своё окно как бы "модальным" поверх чужого?


15-1293912187
NewUserWin7
2011-01-01 23:03
2011.04.17
Win 7 - параметры папки


15-1293447297
GanibalLector
2010-12-27 13:54
2011.04.17
Распознавания рукописных символов (FlexiCapture + Delphi)


15-1293625833
dmk
2010-12-29 15:30
2011.04.17
Можно ли сделать общий загрузчик


3-1256288520
JohnLemon
2009-10-23 13:02
2011.04.17
Объединить 2 таблицы *.mdb... с помощью SQL