Мое приложение представляет (растровую) движущуюся карту.
Мне нужно уметь показывать поворотную базу карты под любым заданным углом.
Программа в настоящее время на VC ++ / MFC, но проблема является общей.
У меня есть исходное растровое изображение (CBitmap или HBITMAP) и я рисую его в контексте устройства (CDC), используя StretchBlt.
Хотя это работает быстро и плавно для угла = 0 (и пользователь может плавно захватить карту с помощью мыши), это не тот случай, если я пытаюсь повернуть растровое изображение и затем представить его (вращение растрового изображения с помощью SetWorldTransform () или около того занимает сотни миллисекунд, и это слишком медленно).
Я думаю, что решение состоит в том, чтобы иметь возможность связывать только те пиксели, которые в данный момент находятся на экране, а не вращать исходное растровое изображение - и это ключ.
Если у кого-то есть опыт с подобной реализацией, это может сэкономить мне массу проб и ошибок.
Спасибо!
Avi.