Changeset 206 for trunk/Packages/CevoComponents
- Timestamp:
- May 8, 2020, 6:12:35 PM (5 years ago)
- Location:
- trunk/Packages/CevoComponents
- Files:
-
- 3 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/Packages/CevoComponents/CevoComponents.lpk
r170 r206 99 99 </Item13> 100 100 <Item14> 101 <Filename Value=" PixelPointer.pas"/>102 <UnitName Value=" PixelPointer"/>101 <Filename Value="UPixelPointer.pas"/> 102 <UnitName Value="UPixelPointer"/> 103 103 </Item14> 104 104 </Files> -
trunk/Packages/CevoComponents/CevoComponents.pas
r170 r206 10 10 uses 11 11 Area, ButtonA, ButtonB, ButtonC, ButtonN, EOTButton, ButtonBase, DrawDlg, 12 Sound, BaseWin, PixelPointer, LazarusPackageIntf;12 Sound, BaseWin, UPixelPointer, LazarusPackageIntf; 13 13 14 14 implementation -
trunk/Packages/CevoComponents/ScreenTools.pas
r205 r206 208 208 209 209 uses 210 Directories, Sound, PixelPointer;210 Directories, Sound, UPixelPointer; 211 211 212 212 var … … 360 360 begin 361 361 Bitmap.BeginUpdate; 362 PixelPtr .Init(Bitmap);362 PixelPtr := PixelPointer(Bitmap); 363 363 for Y := 0 to Bitmap.Height - 1 do begin 364 364 for X := 0 to Bitmap.Width - 1 do begin … … 377 377 begin 378 378 //Dst.SetSize(Src.Width, Src.Height); 379 SrcPtr .Init(Src);380 DstPtr .Init(Dst);379 SrcPtr := PixelPointer(Src); 380 DstPtr := PixelPointer(Dst); 381 381 for Y := 0 to Src.Height - 1 do begin 382 382 for X := 0 to Src.Width - 1 do begin … … 501 501 GrExt[nGrExt].Data.BeginUpdate; 502 502 GrExt[nGrExt].Mask.BeginUpdate; 503 DataPixel .Init(GrExt[nGrExt].Data);504 MaskPixel .Init(GrExt[nGrExt].Mask);503 DataPixel := PixelPointer(GrExt[nGrExt].Data); 504 MaskPixel := PixelPointer(GrExt[nGrExt].Mask); 505 505 for y := 0 to Source.Height - 1 do begin 506 506 for x := 0 to xmax - 1 do begin … … 542 542 begin 543 543 Dst.BeginUpdate; 544 PixelPtr .Init(Dst, X, Y);544 PixelPtr := PixelPointer(Dst, X, Y); 545 545 for yy := 0 to Height - 1 do begin 546 546 for xx := 0 to Width - 1 do begin … … 585 585 dst.BeginUpdate; 586 586 Src.BeginUpdate; 587 PixelDst .Init(Dst, xDst, yDst);588 PixelSrc .Init(Src, xSrc, ySrc);587 PixelDst := PixelPointer(Dst, xDst, yDst); 588 PixelSrc := PixelPointer(Src, xSrc, ySrc); 589 589 for Y := 0 to h - 1 do begin 590 590 for X := 0 to w - 1 do begin … … 644 644 Src.BeginUpdate; 645 645 dst.BeginUpdate; 646 SrcPixel .Init(Src, xSrc, ySrc);647 DstPixel .Init(Dst, xDst, yDst);646 SrcPixel := PixelPointer(Src, xSrc, ySrc); 647 DstPixel := PixelPointer(Dst, xDst, yDst); 648 648 for iy := 0 to Height - 1 do begin 649 649 for ix := 0 to Width - 1 do begin … … 687 687 assert(bmp.PixelFormat = pf24bit); 688 688 h := y + h; 689 PixelPtr .Init(Bmp, x, y);689 PixelPtr := PixelPointer(Bmp, x, y); 690 690 while y < h do begin 691 691 for i := 0 to w - 1 do begin … … 837 837 begin 838 838 dst.BeginUpdate; 839 DstPtr .Init(dst, x0, y0);839 DstPtr := PixelPointer(dst, x0, y0); 840 840 for y := -GlowRange + 1 to Height - 1 + GlowRange - 1 do begin 841 841 for x := -GlowRange + 1 to Width - 1 + GlowRange - 1 do begin … … 1433 1433 TexWidth := Texture.Width; 1434 1434 TexHeight := Texture.Height; 1435 DstPixel .Init(Dest);1436 SrcPixel .Init(Texture);1435 DstPixel := PixelPointer(Dest); 1436 SrcPixel := PixelPointer(Texture); 1437 1437 for Y := 0 to Dest.Height - 1 do begin 1438 1438 for X := 0 to Dest.Width - 1 do begin … … 1456 1456 begin 1457 1457 Bitmap.BeginUpdate; 1458 PicturePixel .Init(Bitmap);1458 PicturePixel := PixelPointer(Bitmap); 1459 1459 for y := 0 to Bitmap.Height - 1 do begin 1460 1460 for x := 0 to Bitmap.Width - 1 do begin -
trunk/Packages/CevoComponents/UPixelPointer.pas
r205 r206 1 unit PixelPointer;1 unit UPixelPointer; 2 2 3 3 interface … … 31 31 procedure SetXY(X, Y: Integer); inline; // Set pixel position relative to base 32 32 procedure SetX(X: Integer); inline; // Set horizontal pixel position relative to base 33 procedure Init(Bitmap: TRasterImage; BaseX: Integer = 0; BaseY: Integer = 0); inline;34 33 end; 35 34 PPixelPointer = ^TPixelPointer; 35 36 function PixelPointer(Bitmap: TRasterImage; BaseX: Integer = 0; BaseY: Integer = 0): TPixelPointer; inline; 36 37 37 38 … … 62 63 end; 63 64 64 procedure TPixelPointer.Init(Bitmap: TRasterImage; BaseX: Integer = 0;65 BaseY: Integer = 0); inline;65 function PixelPointer(Bitmap: TRasterImage; BaseX: Integer; 66 BaseY: Integer): TPixelPointer; 66 67 begin 67 BytesPerLine := Bitmap.RawImage.Description.BytesPerLine; 68 BytesPerPixel := Bitmap.RawImage.Description.BitsPerPixel shr 3; 69 Base := PPixel32(Bitmap.RawImage.Data + BaseX * BytesPerPixel + BaseY * BytesPerLine); 70 SetXY(0, 0); 68 Result.BytesPerLine := Bitmap.RawImage.Description.BytesPerLine; 69 Result.BytesPerPixel := Bitmap.RawImage.Description.BitsPerPixel shr 3; 70 Result.Base := PPixel32(Bitmap.RawImage.Data + BaseX * Result.BytesPerPixel + 71 BaseY * Result.BytesPerLine); 72 Result.SetXY(0, 0); 71 73 end; 72 74
Note:
See TracChangeset
for help on using the changeset viewer.