Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Преобразование координат


Автор: Rapalex 19.2.2007, 15:55
В GDI+ есть 3 системы координат.

У меня такая пролема: рисую я изображение и масштабирую его(матрицу меняю), тогда ужно установить размеры скролов, а как мне узнать размер отмасштабированого рисунка???

Или щёлчёк мыши на окне и по точке мыши определить куда ткнули на изображении?

Иными словами аноалог DPtoLP и LPtoDP в GDI, такое вообще есть? и что мне делать?

Автор: mr.DUDA 19.2.2007, 17:27
Цитата(Rapalex @  19.2.2007,  14:55 Найти цитируемый пост)
 а как мне узнать размер отмасштабированого рисунка???

Умножить на scale, а как ещё.

Цитата(Rapalex @  19.2.2007,  14:55 Найти цитируемый пост)
Или щёлчёк мыши на окне и по точке мыши определить куда ткнули на изображении?

Это PointToClient делает у любого контрола.

Цитата(Rapalex @  19.2.2007,  14:55 Найти цитируемый пост)
Иными словами аноалог DPtoLP и LPtoDP в GDI, такое вообще есть? и что мне делать?

В GDI+ эта фигня реализована в свойствах Graphics: PageUnit, DpiX, DpiY.



Автор: Rapalex 21.2.2007, 14:09
mr.DUDA, ты сказал
Цитата(mr.DUDA @  19.2.2007,  17:27 Найти цитируемый пост)
 реализована в свойствах Graphics


При отрисовке окна графикс мне даётся, а вот в событии обработчика например на опускание кнопки мыши класа график у меня уже нет, и что мне делать? Что самому создавать готовить его матрицу и т.д.?

Автор: Tror 21.2.2007, 14:48
"Любой контрол наследник Control".CreateGraphics();

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)