Показать сообщение отдельно
Старый 14.06.2011, 18:23   #12
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: Несколько вопросов

Сообщение от Hagrael Посмотреть сообщение
Спасибо, Костян.

Так значит x1 устанавливается равным x2 после выполнения функции. Ну а если ты вызвал функцию в первый раз? Или подождав очень долгое время в третий раз? Тогда откуда берется x1? Я так понимаю, что скорость мыши - это количество пикселей, на которое она успела сместиться за секунду. Так что наверное хранится 1000 x-ов мыши, которые были за 0, 1, 2, 3, ... 999, 1000 мс ранее. По прохождению еще одной мс, добавляется новая координата, а самая последняя удаляется. Когда же вызывается функция MouseXSpeed, то все все координаты стираются, и в конец (0 мс) добавляется текущая координата. Действительно все делается так?
Пфффф... Скорость - 1ая производная координаты по времени. Сколько нам надо хранить координат чтобы (зная текущее состояние точки) рассчитать мгновенную сокрость? - ОДНУ.
Если ты не знал, есть ещё MouseXSpeed,MouseZSpeed

А вообще, в блитце (смотрим хелп) эти комнады возвращают не скорость, а расстояние*, пройденное курсором с момента последнего вызова.
Global mouse1%=MouseX()
MouseXSpeed()
Global mouse2%
Global ErrMax%=0
While Not KeyHit(1)
	mouse2=MouseX()
	Local v%=(mouse2-mouse1)
	Local v2%=MouseXSpeed()
	mouse1=mouse2
	If Abs(v-v2)>ErrMax
		ErrMax=Abs(v-v2)
	EndIf
	AppTitle Int(v)+" "+v2+"  er="+ErrMax
Wend
End
*- учитывая что система дискретная, и предполагая её истинную реалтаймовость (вызов функции в строго фискированное время вне зависимости от общей загруженности системы) можно сказать, что это и есть скорость: т.к. делить на 1 сек** (шаг дискретизации), тоже что и не делить.

**- секунда выбрана, как единица времени по системе СИ; шаг дискретизации подбирается программистом исходя из нужд.

***- в общем случае, аппроксимация скорости не всегда может носить такой тривальный характер (на основе определения производной).
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо impersonalis за это полезное сообщение:
Hagrael (14.06.2011), SBJoker (15.06.2011)