Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Работа с метарегионами


Автор: Kuvaldis 23.9.2007, 16:09
Доброго всем времени суток!
Не врубаюсь, как работать с отсечением при помощи метарегионов, примеров отрыть не получилось, а в MSDN слишком мало. 
Как работать с ClipRgn  понятно
Код

HRGN hClip = CreateRectRgn( 100, 100, 40, 40 );    
HDC hdc = BeginPaint( hwnd, & ps ); 
SelectClipRgn( hdc, hClip );
...  // рисование в отсеченной области
EndPaint( hwnd, &ps );
DeleteObject( hClip );


Как то же самое сделать при помощи метарегионов? Кол-во параметров и мне не ясное описание работы функций SetMetaRgn, GetMetaRgn меня смущает
Буду рад откликам

СУВ, Kuvaldis

Автор: Mihhail 23.9.2007, 23:44
Цитата(Kuvaldis @  23.9.2007,  20:09 Найти цитируемый пост)
Как то же самое сделать при помощи метарегионов?

Собственно "то же самое", с обычным рисованием, сделать метарегионами не удасться, т.к. эти функции нужны для отсечения при выводе метафайлов.

Цитата
Meta Region
This region is very similar to the Clip Region, however, it is not very well documented in MSDN. The primary purpose of this region is to set a Clip Region for meta files when they are displayed to a drawing surface while allowing the Clip Region to remain intact. This region can also be thought of as a second Clip Region.

http://64.233.183.104/search?q=cache:0g2kQJdYe_cJ:www.codeproject.com/gdi/cliprgnguide.asp+SetMetaRgn+C%2B%2B&hl=ru&ct=clnk&cd=9&client=opera

Автор: Kuvaldis 24.9.2007, 01:52
Mihhail
Дал ссылку именно на то, что нужно (причем пример был толковый)
Сиба, заслуженный плюс smile

Автор: Mihhail 24.9.2007, 06:25
Ещё хотел добавить:
   Инфа из справки:
Цитата
Quick Info:
Windows NT       Yes
Win95            Yes
Win32s           No
Platfirm Notes   Windows95: 16-bit coordinates only

Не смущает?  smile

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