Мне нужен какой-то действительно точный способ определить, когда закончится поворот поверхностного набора:
private void OnRotationChanged(RadialController sender, RadialControllerRotationChangedEventArgs args)
{
double angle = args.RotationDeltaInDegrees;
}
Я действительно теряюсь в том, как определить сверхточный способ, когда заканчивается вращение.
ЭтоМоя первая попытка, но работа супер ошибочная.
bool start = true;
private void OnRotationChanged(RadialController sender, RadialControllerRotationChangedEventArgs args)
{
if (start == true)
{
start = false;
//send mouse left down event relative to mouse position
VirtualMouse.LeftDown(0, 0);
}
if (timer != null)
{
timer.Tick -= timer_Tick;
}
timer = new DispatcherTimer { Interval = TimeSpan.FromMillisecond(10) };
timer.Tick += new EventHandler(timer_Tick);
timer.Start();
if (args.RotationDeltaInDegrees > 0)
{
//move mouse 1 pixel + Y relative to mouse postion
VirtualMouse.Move(0, 1);
}
else
{
//move mouse 1 pixel - Y relative to mouse postion
VirtualMouse.LeftDown(0, -1);
}
}
void timer_Tick(object sender, EventArgs e)
{
start = true;
//release the left mouse down relative to mouse position
VirtualMouse.LeftUp(0, 0);
}
Когда я сказал точно, я имею в виду какой-то способ обнаружения в любом сценарии.Например, если вы поворачиваете медленно, а время таймера составляет около 1 мс, каждое новое событие из набора (вращается медленно) никогда не достигает времени отцепления.Если я увеличу таймер, то все обнаружение приведет к неточному процессу, добавляя нежелательную задержку.Я знаю, что это не тот путь, просто тестирование, но я не представляю, как можно добиться правильного обнаружения в сценариях, когда я вращаю циферблат медленно или быстрее для получения реального индикатора остановки вращения или вращения.
Определить, когда начало вращения - торт, а конец вращения -
Поверхностный циферблат может обеспечить точность до 0,1 градуса, действительно точное оптическое устройство.Таким образом, один полный поворот способен предоставить отчет о 3600 событиях / углах.
...... не знаю, думая и думая.