Changeset 206
- Timestamp:
- May 8, 2020, 6:12:35 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 10 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/LocalPlayer/CityScreen.pas
r205 r206 90 90 91 91 uses 92 Select, Messg, MessgEx, Help, Tribes, Directories, Math, PixelPointer, Sound;92 Select, Messg, MessgEx, Help, Tribes, Directories, Math, UPixelPointer, Sound; 93 93 94 94 {$R *.lfm} … … 443 443 begin 444 444 Offscreen.BeginUpdate; 445 PixelPtr .Init(Offscreen, X, Y);445 PixelPtr := PixelPointer(Offscreen, X, Y); 446 446 for YY := 0 to H - 1 do begin 447 447 for XX := 0 to W - 1 do begin -
trunk/LocalPlayer/Help.pas
r205 r206 127 127 128 128 uses 129 Directories, ClientTools, Term, Tribes, Inp, Messg, PixelPointer, Global;129 Directories, ClientTools, Term, Tribes, Inp, Messg, UPixelPointer, Global; 130 130 131 131 {$R *.lfm} … … 459 459 for y := 0 to ySizeBig * 2 - 1 do 460 460 if ((y0 + y) >= 0) and ((y0 + y) < InnerHeight) then begin 461 PaintPtr .Init(OffScreen, 0, y0 + y);462 CoalPtr .Init(Templates, 0, yCoal + y);461 PaintPtr := PixelPointer(OffScreen, 0, y0 + y); 462 CoalPtr := PixelPointer(Templates, 0, yCoal + y); 463 463 for dy := -1 to 1 do 464 464 if ((Max(y + dy, 0) shr 1) >= 0) and ((Max(y + dy, 0) shr 1) < ySizeBig) then 465 ImpPtr[dy] .Init(BigImp, 0, ySrc + (Max(y + dy, 0) shr 1));465 ImpPtr[dy] := PixelPointer(BigImp, 0, ySrc + (Max(y + dy, 0) shr 1)); 466 466 for x := 0 to xSizeBig * 2 - 1 do begin 467 467 sum := 0; -
trunk/LocalPlayer/IsoEngine.pas
r189 r206 6 6 uses 7 7 Protocol, ClientTools, ScreenTools, Tribes, {$IFNDEF SCR}Term, {$ENDIF} 8 LCLIntf, LCLType, SysUtils, Classes, Graphics, PixelPointer;8 LCLIntf, LCLType, SysUtils, Classes, Graphics, UPixelPointer; 9 9 10 10 type … … 375 375 begin 376 376 for i := 0 to yyt * 3 - 1 do 377 MaskLine[i] .Init(Mask24, 0, 1 + ySrc * (yyt * 3 + 1) + i);377 MaskLine[i] := PixelPointer(Mask24, 0, 1 + ySrc * (yyt * 3 + 1) + i); 378 378 for xSrc := 0 to 9 - 1 do 379 379 begin … … 1017 1017 for dy := 0 to yyt * 2 - 1 do 1018 1018 begin 1019 PixelPtr .Init(Borders, 0, p1 * (yyt * 2) + dy);1019 PixelPtr := PixelPointer(Borders, 0, p1 * (yyt * 2) + dy); 1020 1020 for dx := 0 to xxt * 2 - 1 do begin 1021 1021 if PixelPtr.Pixel^.B = 99 then begin … … 1340 1340 FOutput.BeginUpdate; 1341 1341 for y := y0 to y1 - 1 do begin 1342 Line .Init(FOutput, 0, y);1342 Line := PixelPointer(FOutput, 0, y); 1343 1343 y_n := (y - ym) / yyt; 1344 1344 if abs(y_n) < rShade then begin -
trunk/LocalPlayer/MessgEx.pas
r190 r206 73 73 74 74 uses 75 ClientTools, BaseWin, Term, Help, UnitStat, Tribes, PixelPointer,75 ClientTools, BaseWin, Term, Help, UnitStat, Tribes, UPixelPointer, 76 76 IsoEngine, Diagram, Sound; 77 77 … … 246 246 for iy := 0 to 39 do begin 247 247 for ix := 0 to 55 do begin 248 SrcPtr .Init(BigImp, ix + xIcon, iy + yIcon);248 SrcPtr := PixelPointer(BigImp, ix + xIcon, iy + yIcon); 249 249 xR := ix * (37 + iy * 5 / 40) / 56; 250 250 xDst := Trunc(xR); -
trunk/LocalPlayer/Term.pas
r205 r206 481 481 uses 482 482 Directories, IsoEngine, CityScreen, Draft, MessgEx, Select, CityType, Help, 483 UnitStat, Log, Diagram, NatStat, Wonders, Enhance, Nego, PixelPointer, Sound,483 UnitStat, Log, Diagram, NatStat, Wonders, Enhance, Nego, UPixelPointer, Sound, 484 484 Battle, Rates, TechTree, Registry, Global; 485 485 … … 577 577 if ydivider > ySizeSmall then 578 578 ydivider := ySizeSmall; 579 PixelPtr .Init(BigImp, 0, cut + iy * ySizeBig + y);579 PixelPtr := PixelPointer(BigImp, 0, cut + iy * ySizeBig + y); 580 580 for x := 0 to xSizeBig - 1 do 581 581 begin … … 610 610 SmallImp.BeginUpdate; 611 611 for y := 0 to ny - 1 do begin 612 PixelPtr .Init(SmallImp, 0, y);612 PixelPtr := PixelPointer(SmallImp, 0, y); 613 613 for x := 0 to nx - 1 do 614 614 for ch := 0 to 2 do begin … … 4075 4075 end; 4076 4076 Mini.BeginUpdate; 4077 MiniPixel .Init(Mini);4078 PrevMiniPixel .Init(Mini);4077 MiniPixel := PixelPointer(Mini); 4078 PrevMiniPixel := PixelPointer(Mini); 4079 4079 for y := 0 to G.ly - 1 do 4080 4080 begin -
trunk/LocalPlayer/Wonders.pas
r188 r206 38 38 39 39 uses 40 Term, ClientTools, Help, Tribes, PixelPointer;40 Term, ClientTools, Help, Tribes, UPixelPointer; 41 41 42 42 {$R *.lfm} … … 106 106 begin 107 107 Offscreen.BeginUpdate; 108 Line[0] .Init(Offscreen);109 Line[1] .Init(Offscreen);108 Line[0] := PixelPointer(Offscreen); 109 Line[1] := PixelPointer(Offscreen); 110 110 for Y := 0 to 127 do begin 111 111 for X := 0 to 179 do begin … … 144 144 x0Src := (i mod 7) * xSizeBig; 145 145 y0Src := (i div 7 + SystemIconLines) * ySizeBig; 146 Src .Init(BigImp, x0Src, y0Src);147 Dst .Init(Offscreen, x0Dst, y0Dst);146 Src := PixelPointer(BigImp, x0Src, y0Src); 147 Dst := PixelPointer(Offscreen, x0Dst, y0Dst); 148 148 for Y := 0 to ySizeBig - 1 do begin 149 149 for X := 0 to xSizeBig - 1 do begin -
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 -
trunk/Start.pas
r198 r206 165 165 166 166 uses 167 Global, Directories, Direct, ScreenTools, Inp, Back, Locale, PixelPointer;167 Global, Directories, Direct, ScreenTools, Inp, Back, Locale, UPixelPointer; 168 168 169 169 {$R *.lfm} … … 354 354 Bitmap.SetSize(Size.X * 2, Size.Y); 355 355 Bitmap.BeginUpdate; 356 MiniPixel .Init(Bitmap);356 MiniPixel := PixelPointer(Bitmap); 357 357 for y := 0 to Size.Y - 1 do begin 358 358 for x := 0 to Size.X - 1 do begin … … 386 386 if Mode = mmPicture then begin 387 387 Bitmap.BeginUpdate; 388 MiniPixel .Init(Bitmap);389 PrevMiniPixel .Init(Bitmap, 0, -1);388 MiniPixel := PixelPointer(Bitmap); 389 PrevMiniPixel := PixelPointer(Bitmap, 0, -1); 390 390 for y := 0 to Size.Y - 1 do begin 391 391 for x := 0 to Size.X - 1 do begin
Note:
See TracChangeset
for help on using the changeset viewer.