![]() |
Модераторы: gambit, Kefir, Partizan |
![]() ![]() ![]() |
|
Leviafan |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 19.2.2006 Где: г. Екатеринбург Репутация: нет Всего: нет |
Attention! Следующая постановка не основывается на реальной задаче и является лишь примером для обсуждения.
Возьмём ветряную мельницу. Поворот оси на 3,6 градуса создаёт прерывание, которое порождает цепочку событий в системе реального времени. Есть приложение, которое использует технологию WPF для описание пользовательского интерфейса оператора. Приложение взаимодействует с системой реального времени по сети. Требуется отображать оператору, который, возможно, сидит в самой дальней от мельницы точке деревенской окрестности, как можно более точную картинку текущего положения её крыльев. Система реального времени всегда вежливо отвечает на запрос о текущем угле поворота оси мельницы. Однако, при определённой скорости вращения крыльев изображение на экране начинает мерцать и становится скачкообразным (слишком быстрые перемещения, частота которых выше половины частоты развёртки монитора). Как организовать наиболее корректный процесс визуализации в WPF? Использовать OnPaint как в GDI или как-то напрямую работать с DirectX + включить двойную буфферизацию? |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
Leviafan, есть возможность выложить проект, демонстрирующий поведение выложить?
-------------------- СУВ, Partizan. |
|||
|
||||
nikitao |
|
|||
![]() Кот-программист ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1206 Регистрация: 30.8.2005 Где: Спб Репутация: нет Всего: 26 |
Leviafan, тут просто недостаточно быстрый алгоритм....без самого алгоритма сложно сказать как помочь. Можно конечно сделать шаг конем и поставить более мощную машину оператору , но это наверно нечестно
![]() -------------------- Жизнь - печальная штука. |
|||
|
||||
Leviafan |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 19.2.2006 Где: г. Екатеринбург Репутация: нет Всего: нет |
Меня интересуют следующие вопросы:
- Как в WPF отображается процесс? Вот получил я по сети некоторые значения, вычислил угол поворота, а дальше нужно это данное привязать к отображению, чтоб на тот же угол был повёрнут, грубо говоря, эллипс. Это делается через привязку к CLR или через какую-то хитрую анимацию? ![]() - Насколько быстро выбранные процессы будут работать? При какой частоте исполняющая система не сможет корректно отобразить эллипс, вообще такое возможно? И здесь ответ зависит от первого блока. Добавлено @ 20:24 Partizan, могу накатать конкретный примерчик, хотя суть - в текущем ответе. Это сообщение отредактировал(а) Leviafan - 5.7.2009, 20:25 |
|||
|
||||
Partizan |
|
|||
![]() Let's do some .NET ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 2828 Регистрация: 19.12.2005 Где: Санкт-Петербург Репутация: 9 Всего: 67 |
Leviafan, ага, примерчик был бы не плох
-------------------- СУВ, Partizan. |
|||
|
||||
AndZho |
|
|||
Новичок Профиль Группа: Участник Сообщений: 30 Регистрация: 21.10.2006 Репутация: нет Всего: нет |
Я не вникал в суть, но может это будет интересно?
|
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | WPF и Silverlight | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |