Процедура SetGraphBufSize

Модуль GRAPH

Изменяет заданный по умолчанию размер графического буфера, используемого для
сканирования и заливки.

Объявление:

Procedure SetGraphBufSize(BufSize : Word);

Режим:

Protected,  Real

Замечание:

Размер внутреннего буфера устанавливается на BufSize, и буфер распределяется в куче при обращении к InitGraph.

Пример:

Uses Graph, Crt;
 
 Const Min = 0;
       Max = 1256;
 
 Var Gd, Gm  : Integer;
       I, R  : Integer;
     X0, Y0  : Integer;
     BigPoly : Array [Min..Max] Of PointType;
 
 Begin
  Randomize;
  { Распределяем 8Кб буфер в куче, чтобы закрасить
    полигон с 1256-ю вершинами }
  SetGraphBufSize(8*1024);
  Gd:=Detect;
  InitGraph(Gd, Gm, 'C:\BP\BGI');
  If GraphResult<>grOk Then Halt(1);
  X0:=GetMaxX;
  Y0:=GetMaxY;
  R:=Y0 Div 2;
  { Определяем в массиве координаты точек для
    построения полигона в виде окружности
    с 1256-ю вершинами и радиусом R }
  For I:=Min To Max Do
  With BigPoly[I] Do
   Begin
    X:=X0 Div 2 + Round(R * Sin(I/200));
    Y:=Y0 Div 2 + Round(R * Cos(I/200));
   End;
  { Закрашиваем полигон }
  FillPoly(SizeOf(BigPoly) Div SizeOf(PointType), BigPoly);
  { Ждем нажатия на клавишу }
  Repeat
  Until KeyPressed;
 End.