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

Вниз

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

 
XeN ©   (2001-12-26 17:59) [0]

Народ! Как на DelphiX можно рисовать на TDXDraw картинку, которая постепенно пропадает. DrawAlpha не катит, слишком уж тормозит.


 
XeN ©   (2001-12-27 09:39) [1]

Неужели никто не знает?


 
ZEE ©   (2001-12-27 10:54) [2]

На счет TDXDraw не знаю, но вот тебе небольшая процедура, которая постепенно "гасит" (затемняет) изображение (ее надо выполнять несколько раз)
bmResult - витмап для затемнения
iAlpha - величина "незатемнения" (т.е. чем она больше - тем большее кол-во раз надо вызывать процедуру до полного затемнения)


procedure DropShadow24(iX,iY,iWidth,iHeight:integer;var bmResult:TBitmap;iAlpha:integer);
var
pBits:pointer;
i,j,k,iSize:integer;
begin
if not (bmResult.PixelFormat=pf24bit) then Exit;
iSize:=bmResult.Width*bmResult.Height*3;
GetMem(pBits,iSize);
GetBitmapBits(bmResult.Handle,iSize,pBits);
for j:=iY to iY+iHeight-1 do
for i:=iX to iX+iWidth-1 do
begin
k:=j*bmResult.Width*3+i*3;
asm
PUSHAD
MOV ECX,pBits
ADD ECX,k
MOV EBX,iAlpha
MOV AL,[ECX]
MUL BL
MOV [ECX],AH
INC ECX
MOV AL,[ECX]
MUL BL
MOV [ECX],AH
INC ECX
MOV AL,[ECX]
MUL BL
MOV [ECX],AH
POPAD
end
end;
SetBitmapBits(bmResult.Handle,iSize,pBits);
FreeMem(pBits)
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
1-52599
greenrul
2001-12-29 14:42
2002.01.17
Почему random(4) всегда возвращает 0???


1-52531
Трынкин Сергей
2001-12-27 16:24
2002.01.17
Снова по поводу курсора мыши


6-52630
z0ne
2001-10-19 02:18
2002.01.17
server sharedirname --->>> d: dir subdirwhatshared


1-52580
Andrey Sharapow
2001-12-27 11:13
2002.01.17
Нужна идея !!!


1-52539
Yuri Btr
2001-12-27 17:13
2002.01.17
Размер файла