Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
1-11895
Anton.
2003-12-18 13:22
2004.01.05
Как в RichEdit запретить действие клавиш


9-11759
Madromik
2003-06-11 14:19
2004.01.05
Image move


1-11973
Марат
2003-12-19 05:59
2004.01.05
Использование F1


14-12090
Думкин
2003-12-15 06:47
2004.01.05
С днем рождения! 15 декабря.


3-11809
iWorm
2003-12-09 02:32
2004.01.05
Вставка новой записи




   Наверх