ВУЗ:
Составители:
Приложение 4
Процедуры получения и установки цвета пиксела на изображении в Delphi.
type TRGB = record
Red,Blue,Green : integer;
end;
const MaxColor=255;
var SvP : TRGB;
procedure GetPixelRGB(AnyRis:TImage;x,y:integer;var GetRBG:TRGB);
var SvP,W1,W2 : integer;
begin
SvP:=AnyRis.Canvas.Pixels[x,y];
W1:=SvP shr 16;
W2:=SvP - (W1*$10000);
GetRBG.Blue:=Lo(W1); // Blue
GetRBG.Green:=Hi(W2); // Green
GetRBG.Red:=Lo(W2); // Red
end;
procedure SetPixelRBG(AnyRis : TImage;x,y:integer;SetRGB:TRGB);
begin
if SetRGB.Blue<0 THEN SetRGB.Blue:=0;
if SetRGB.Blue>MaxColor THEN SetRGB.Blue:=MaxColor;
if SetRGB.Green<0 THEN SetRGB.Green:=0;
if SetRGB.Green>MaxColor THEN SetRGB.Green:=MaxColor;
if SetRGB.Red<0 THEN SetRGB.Red:=0;
if SetRGB.Red>MaxColor THEN SetRGB.Red:=MaxColor;
AnyRis.Canvas.Pixels[x,y]:=
SetRGB.Blue*$10000+SetRGB.Green*$100+SetRGB.Red;
end;
Инициализация графического режима с поддержкой 256 цветов в
Borland Pascal.
Gd:=InstallUserDriver('SVGA256',nil);
InitGraph(GD,Gr,'C:\BP\BGI');
i:=GraphResult;
if i <> 0 then begin WriteLn('Графика не инециализировалась : ',i); Halt; end;
Установка палитры градаций серого цвета в Borland Pascal.
for i:=0 to 255 do
SetRGBPalette(i,i div 4,i div 4,i div 4);
Приложение 4 Процедуры получения и установки цвета пиксела на изображении в Delphi. type TRGB = record Red,Blue,Green : integer; end; const MaxColor=255; var SvP : TRGB; procedure GetPixelRGB(AnyRis:TImage;x,y:integer;var GetRBG:TRGB); var SvP,W1,W2 : integer; begin SvP:=AnyRis.Canvas.Pixels[x,y]; W1:=SvP shr 16; W2:=SvP - (W1*$10000); GetRBG.Blue:=Lo(W1); // Blue GetRBG.Green:=Hi(W2); // Green GetRBG.Red:=Lo(W2); // Red end; procedure SetPixelRBG(AnyRis : TImage;x,y:integer;SetRGB:TRGB); begin if SetRGB.Blue<0 THEN SetRGB.Blue:=0; if SetRGB.Blue>MaxColor THEN SetRGB.Blue:=MaxColor; if SetRGB.Green<0 THEN SetRGB.Green:=0; if SetRGB.Green>MaxColor THEN SetRGB.Green:=MaxColor; if SetRGB.Red<0 THEN SetRGB.Red:=0; if SetRGB.Red>MaxColor THEN SetRGB.Red:=MaxColor; AnyRis.Canvas.Pixels[x,y]:= SetRGB.Blue*$10000+SetRGB.Green*$100+SetRGB.Red; end; Инициализация графического режима с поддержкой 256 цветов в Borland Pascal. Gd:=InstallUserDriver('SVGA256',nil); InitGraph(GD,Gr,'C:\BP\BGI'); i:=GraphResult; if i <> 0 then begin WriteLn('Графика не инециализировалась : ',i); Halt; end; Установка палитры градаций серого цвета в Borland Pascal. for i:=0 to 255 do SetRGBPalette(i,i div 4,i div 4,i div 4);