Рассчитать расстояние между двумя пальцами в Windows Phone 8

Как мы знаем, мы можем рассчитать расстояние между двумя пальцами в Windows Phone 7 с помощью набора инструментов gesteuresevices. Это было бы так:

ManipulationStartedEventArgs.GetPosition(UIElment, fingerIndex);

Есть ли аналогичный метод в Windows Phone для достижения этого без набора инструментов?


person HamGuy    schedule 21.06.2013    source источник
comment
Точно могу сказать, что не больше 7-8см :)   -  person Poni    schedule 21.06.2013


Ответы (2)


Итак, вам нужно фактическое расстояние между пальцами пользователя в реальном мире, то есть в сантиметрах? Это должно быть легко: вам нужно знать расстояние в пикселях, затем вам нужно знать физический размер одного пикселя, а затем вы умножаете.

Теперь, чтобы получить физический размер одного пикселя, вам нужно знать размер экрана телефона. Для этого вам нужно знать модель телефона, которую вы можете получить по адресу DeviceStatus. Тогда вам понадобится база данных размеров экрана телефона, которую вам нужно будет создать самостоятельно. Для телефонов Nokia вы можете проверить официальный сайт (вот пример). Так, для Lumia 920 размер одного пикселя составляет 0,07578125 x 0,075520833 мм.

Затем вам нужно получить событие мультитач. Для этого вы должны использовать события ManipulatienStarted, ManipulationDelta и ManiputalionComplete. См. эту статью MSDN для получения дополнительной информации.

Надеюсь, я правильно понял вас, и это сработает для вас. Если вам нужна дополнительная информация или пояснения, просто дайте мне знать в комментариях.

person Haspemulator    schedule 21.06.2013

я не думаю, что вы можете использовать службы жестов без набора инструментов ....

для этого есть набор инструментов

Microsoft.Phone.Controls.Toolkit

это будет хорошо работать для вас ....

person Sandeep Chauhan    schedule 21.06.2013
comment
На самом деле я хотел реализовать аналогичную службу жестов с исходными аргументами события манипуляции. - person HamGuy; 24.06.2013