Приложение, улучшающее производительность сенсорных событий

В принципе, у меня есть приложение размером 8000 пикселей на 8000 пикселей. Мы можем увеличить масштаб, чтобы просмотреть конкретную часть, например, по радио, или уменьшить масштаб, чтобы просмотреть все.

Каждая часть автомобиля - это элемент управления, которым мы можем управлять пальцами на мониторе Dual Touch или Multitouch.

Моя проблема: для управления элементом управления, например кнопкой громкости, пользователю необходимо перемещать мышь точно так же, как в реальной жизни, то есть круговыми движениями. С мышкой все идеально, реагирует моментально, без задержек. Я использую OnMouseLeftButtonDown, OnMouseMove и т. Д. При касании компьютеру кажется очень сложно определить положение касания, и возникает огромная задержка, особенно когда пользователь перемещает 2 разные кнопки двумя пальцами одновременно. Я использую OnTouchDown, OnTouchMove и т. Д.

Единственная разница между мышью и сенсорным экраном заключается в том, когда нам нужно получить позицию с помощью используемой мной мыши: (e - MouseButtonEventArgs)

Point currentPosition = e.GetPosition(this);

С помощью сенсорного ввода Я использую: (e - TouchEventArgs)

Point currentPosition = e.GetTouchPoint(this).Position;

После этого все то же самое.

Я не знаю, потому ли это потому, что у меня слишком много элементов управления в моем приложении (более 5000, которыми мы можем манипулировать, но когда мы увеличиваем только 2 элемента управления, это то же самое) или потому, что это действительно сложно для компьютер, чтобы получить позицию по сенсорному событию ....

Кто-нибудь может мне с этим помочь? Мне нужно найти решение, чтобы устранить отставание.

Я использую Visual Studio 2010, Blend 4, .NET 4.0. 64-разрядная версия Windows 7 7 Гб оперативной памяти Xeon 2,13 ГГц, 2 ядра, 8 потоков Экран: технология ELO, в экране NEC 2490WUXi2

13
задан mlemay 10 July 2012 в 11:16
поделиться