Алгоритмические языки и программирование. Часть 3. Модули в Турбо Паскале. Игошина Л.В. - 43 стр.

UptoLike

Составители: 

43
43
Line(30, Color * 12, 430, color * 12);
end; readkey;
Можно заменить один (любой) цвет в палитре на новый цвет с помощью
процедуры: SetPalette(N, Color);
N - номер цвета в палитре, переменная типа Word (от 0 до 15);
Color - номер вновь устанавливаемого цвета, переменная типа ShortInt, т.е.
она не может быть больше 127.
Для замены нескольких цветов в текущей палитре можно использовать
процедуру SetAllPalette(Palette), где
параметр Palette можно описать следующим
образом:
Var Palette: Array[0..MaxColors] of ShortInt;
По нулевому адресу в этот массив должно быть записано значение, равное
количеству цветов в вновь устанавливаемой палитре. Остальные элементы
массива - это вновь устанавливаемые цвета. Кроме того, можно вместо номера
цвета заносить -1, что будет означать, что цвет, записанный на данном месте, не
меняется.
Uses graph;
Var Mpalette:array[0..maxcolors]of shortint;
s:string[4]; Palette:Palettetype; K, color, Nmax : word;
begin
{ Инициализация графического режима}
. . . GetPalette(Palette);
for Color := 0 to Palette.Size-1 do
begin
SetColor(palette.colors[Color]);
Line(30, Color * 12, 430, color * 12);
end;
readkey; cleardevice;
{Действие процедуры SetAllPalette}
Nmax:=GetPaletteSize;
Mpalette[0]:=Nmax;
for k:=1 to Nmax do
Mpalette[k]:=random(127);
SetAllPalette(Mpalette);
for Color := 0 to Palette.Size-1 do
begin
SetColor(palette.colors[Color]);
Line(30, Color * 12, 430, color * 12);
end;
readkey;
closegraph;
end.
Процедура SetRGBPalette(Color, RedVal, GreenVal, BlueVal) позволяет
установить цветовую гамму, но только при работе с дисплеем IBM 8514 и
адаптером VGA, использующим видеопамять объемом 256 Кбайт.
                                                                                43




       Line(30, Color * 12, 430, color * 12);
          end;           readkey;
       Можно заменить один (любой) цвет в палитре на новый цвет с помощью
процедуры: SetPalette(N, Color);
       N - номер цвета в палитре, переменная типа Word (от 0 до 15);
       Color - номер вновь устанавливаемого цвета, переменная типа ShortInt, т.е.
она не может быть больше 127.
       Для замены нескольких цветов в текущей палитре можно использовать
процедуру SetAllPalette(Palette), где параметр Palette можно описать следующим
образом:
       Var Palette: Array[0..MaxColors] of ShortInt;
        По нулевому адресу в этот массив должно быть записано значение, равное
количеству цветов в вновь устанавливаемой палитре. Остальные элементы
массива - это вновь устанавливаемые цвета. Кроме того, можно вместо номера
цвета заносить -1, что будет означать, что цвет, записанный на данном месте, не
меняется.
    Uses graph;
       Var           Mpalette:array[0..maxcolors]of shortint;
        s:string[4];     Palette:Palettetype; K, color, Nmax : word;
     begin
        { Инициализация графического режима}
        ...            GetPalette(Palette);
    for Color := 0 to Palette.Size-1 do
     begin
       SetColor(palette.colors[Color]);
       Line(30, Color * 12, 430, color * 12);
     end;
   readkey; cleardevice;
          {Действие процедуры SetAllPalette}
      Nmax:=GetPaletteSize;
      Mpalette[0]:=Nmax;
      for k:=1 to Nmax do
      Mpalette[k]:=random(127);
      SetAllPalette(Mpalette);
       for Color := 0 to Palette.Size-1 do
     begin
       SetColor(palette.colors[Color]);
       Line(30, Color * 12, 430, color * 12);
     end;
   readkey;
   closegraph;
   end.
       Процедура SetRGBPalette(Color, RedVal, GreenVal, BlueVal) позволяет
установить цветовую гамму, но только при работе с дисплеем IBM 8514 и
адаптером VGA, использующим видеопамять объемом 256 Кбайт.
                                                                                43