Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.05;
Скачать: CL | DM;

Вниз

DoubleBuffer...   Найти похожие ветки 

 
X-RayMan   (2003-06-12 15:02) [0]

Рисую на канве панели. Когда рисую куб, т.е. 8 вершин и 12 граней, то все нормально. А когда рисую сферу 482 вершины и 960 граней заметно некоторое мограние. Насколько я знаю для устранения этого надо использовать двойную буферизацию. Может кто в двух словах об этом расскажет? Заранее благодарен.


 
Asteroid ©   (2003-06-12 15:52) [1]

Panel1.DoubleBuffered := true;

В два слова никак не умещается, только в три.


 
X-RayMan   (2003-06-14 12:29) [2]

Это конечно хорошо, но если я использую функции низкого уровня?
Типа:
var
DC: hDC;
( Panel1.Handle,Image) [2] Это конечно хорошо, но если я использую функции низкого уровня?
Типа:
var
DC: hDC;
Image: TPaintStruct;
...
DC:=BeginPaint(Panel1.Handle,Image);
...
MoveToEx(DC,0,0,nil);
LineTo(DC,300,300);
...


 
Anatoly Podgoretsky ©   (2003-06-14 12:37) [3]

Ну так рисуй его сначала на битмапе, а потом копируй на канву


 
Asteroid ©   (2003-06-14 12:41) [4]

Тогда:

DC := GetDC( Panel1.Handle );
MemDC := CreateCompatibleDC( DC );
MemBM := CreateCompatibleBitmap( DC, Panel1.Width, Panel1.Height );
SelectObject( MemDC, MemBM );
.
. // (операции с MemDC);
.
BitBlt( DC, 0, 0, Panel1.Width, Panel1.Height, MemDC, 0, 0, SRCCOPY );


 
Asteroid ©   (2003-06-14 12:42) [5]

> Anatoly Podgoretsky © (14.06.03 12:37)
Я так понял очень хочется использовать "функции низкого уровня".


 
Anatoly Podgoretsky ©   (2003-06-14 12:48) [6]

Да какие возражения, это одно и тоже, битмап и копирование.


 
Anatoly Podgoretsky ©   (2003-06-14 12:49) [7]

А вот чего смущает, так это зачем рисовать невидимые линии.



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

Текущий архив: 2004.01.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.084 c
6-12018
killer
2003-11-03 16:22
2004.01.05
Как посмотреть HTML-код?


1-11965
CrazyHacKeRs
2003-12-19 15:37
2004.01.05
Функция удаления символов


1-11881
frost
2003-12-21 12:35
2004.01.05
Странный такой OnDeletion у TListView ?


1-11880
TsvIlya
2003-12-12 12:25
2004.01.05
Обновление показателя времени


3-11784
Allex
2003-12-09 16:28
2004.01.05
DecisionCube