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

Вниз

Люди! Совсем запутался.   Найти похожие ветки 

 
tovSuhov ©   (2001-12-27 16:04) [0]

Какая нужна последовательность режимов Canvas.Pen.Mode, когда я отрисовываю перемещение линии? Т.е. на старом месте надо восстановить затертое ею изображение и отрисовать ее на новом...


 
McSimm ©   (2001-12-27 16:23) [1]

Проще всего, рисовать, а затем восстанавливать с режимом pmXor


 
avr555 ©   (2001-12-27 16:32) [2]

А где об этом можно поподробнее почитать?


 
tovSuhov ©   (2001-12-27 16:32) [3]

Вот как делаю я:
screen - TBitMap;
void DrawTo(int OldX,int OldY,int X, int Y,TPoint * P,int Count)
{
// Восстанавливаем затертое изображение
screen->Canvas->Brush->Style = bsClear;
screen->Canvas->Pen->Mode = pmXor;
TPoint * buf = new TPoint[Count];
buf[0].x = OldX;
buf[0].y = OldY;

for (int i=1;i<Count;i++)
{
buf[i].x = P[i].x+buf[0].x;
buf[i].y = P[i].y+buf[0].y;
}
screen->Canvas->Polygon(buf,Count-1);
// Рисуем новое
buf[0].x = X;
buf[0].y = Y;
for (int i=1;i<Count;i++)
{
buf[i].x = P[i].x+buf[0].x;
buf[i].y = P[i].y+buf[0].y;
}

screen->Canvas->Pen->Color = clBlack;
screen->Canvas->Pen->Mode = pmCopy;
screen->Canvas->Polygon(buf,Count-1);
screen->Canvas->Brush->Style = bsSolid;
delete [] buf;

};

Но он что-то не восстанавливает затертое...


 
MBo ©   (2001-12-27 17:18) [4]

оба раза pmXor-ом рисуй!


 
Bar   (2001-12-27 20:16) [5]

IMHO лучшее решение pmNotXor



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

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

Наверх




Память: 0.47 MB
Время: 0.009 c
3-52502
Easy
2001-12-08 12:03
2002.01.17
Как можно исправить запись с испорченным мемо-полем в dbf-таблице?


3-52493
andey
2001-12-13 19:15
2002.01.17
Где ошиика в запросе


3-52456
ЧП
2001-12-13 15:32
2002.01.17
Мужики у кого есть FR_class.pas для FastReport 2.45 под Delphi 6


1-52620
abandon
2002-01-01 02:11
2002.01.17
объекты на форме, написание компоненты


3-52492
Dim
2001-12-14 09:26
2002.01.17
DLL & Delphi никак не поймут друг друга, или я их.