Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Вниз

использоание BitBlt и CreateBitmap   Найти похожие ветки 

 
Winnie!   (2001-11-01 19:50) [0]

2001 DOS->GDI->DrectDraw->OpenGL
На дворе 2001, а я все под ДОС графику программирую. Нужно переходить

под Win32. Решил разобраться сначала с GDI, прежде чем переходить к

DrectDraw,OpenGL.

1.Мне нужно завести в памяти буфер, куда я буду рисовать свое

изображение, и откуда я его буду копировать на экран(в окно).НО,

насколько я знаю:

Еcли создавать буфер функцией CreateDibBitmap, то он будет иметь

простую структуру(3 байта RGB на пиксел, кажется?), поэтому туда легко

рисовать своими алгоритмами. Но ведь BitBlt требует что бы битовые

карты в SrcDC и DestDc имели совместимый формат, а вдруг DIB не

совместим с DC моего окна?

Если же создать буфер функцией CreateComptibleBitmap, то непонятно,

как он устроен и как туда рисовать (своими алгоритмами)?

2.BitBlt копирует карту бит из одного DC в другой. Получается, что

после создания DC своего окна я должен создать другой DC (SrcDC). От

какого HWND я его спрашивается, буду создавать и почему его не будет

видно на экране(т.е. как так сделать)?

Как связаны связаны DC и BitMap?
3.Что нужно делать с полученным идентификатором БитМэпа после вызова

Create[...]Bitmap?

Можно какой-нибудь простейший примерчик с Create[...]Bitmap и BitBlt,

вроде банального вывода движущегося квадрата в окошко (сначала

попиксельно в буфер, затем на экран)
(на любом языке, желательно под TASM32)

эти вопросы уже читал:
Отображение на форме графики из памяти (Ewgeniy [Анкета] [Отправить письмо] 31.10.01 09:39)
что является источником для функции API BITBLT (MIFI [Отправить письмо] 28.10.01 15:17)


 
Иван Шихалев   (2001-11-01 20:09) [1]

MemDC := CreateComatibleDC (...);
Bitmap := CreateDIBitmap (...);
OldBitmap := SelectObject (MemDC, Bitmap);
...................
BitBlt (...)
...................
Bitamp := SelectObject (MemDC, OldBitmap);
DeleteDC (MemDC);



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.008 c
3-21902
Andrey Pogorelov
2001-12-02 10:49
2002.01.08
Проблема с составлением запроса и выводом его в QReport


1-22204
Dmitriy(new)
2001-12-13 19:37
2002.01.08
код не создает более `273 files in win2000


6-22275
Moscower
2001-10-08 12:43
2002.01.08
Как можно через TNMFTP послать команду chmod на Linux-сервер?


1-22159
Phisio
2001-12-19 22:56
2002.01.08
Как создавать новую структуру


4-22489
Skiv
2001-11-05 09:55
2002.01.08
Вывод версии *.exe





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский