Графика в РАВС Модуль crt, graphabc
Графические примитивы SetPixel(x,y,color); Закрашивает один пиксел с координатами (x,y) цветом color. GetPixel(x,y); Возвращает текущее значение цвета для пиксела с координатами (x,y). MoveTo(x,y); Передвигает невидимое перо к точке с координатами (x,y); эта функция работает в паре с функцией LineTo(x,y). LineTo(x,y); Рисует отрезок от текущего положения пера до точки (x,y); координаты пера при этом также становятся равными (x,y).
Line(x1,y1,x2,y2); Рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2). Circle(x,y,r); Рисует окружность с центром в точке (x,y) и радиусом r. Ellipse(x1,y1,x2,y2); Рисует эллипс, заданный своим описанным прямоугольником с координатами противоположных вершин (x1,y1) и (x2,y2). Rectangle(x1,y1,x2,y2); Рисует прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2).
RoundRect(x1,y1,x2,y2,w,h); Рисует прямоугольник со скругленными краями; (x1,y1) и (x2,y2) задают пару противоположных вершин, а w и h – ширину и высоту эллипса, используемого для скругления краев. Arc(x,y,r,a1,a2); Рисует дугу окружности с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки). Pie(x,y,r,a1,a2); Рисует сектор окружности, ограниченный дугой (параметры процедуры имеют тот же смысл, что и в процедуре Arc).
TextOut(x,y,текст); Выводит строку текст в позицию (x,y) FloodFill(x,y,color); Заливает область одного цвета цветом color, начиная с точки (x,y). FillRect(x1,y1,x2,y2); Заливает прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2), цветом текущей кисти.
Стандартные цвета задаются символическими константами: clBlack – черный clPurple – фиолетовый clWhite – белый clRed – красный clGreen – зеленый clBrown – коричневый clBlue – синий clSkyBlue – голубой clYellow – желтый clCream – кремовый clAqua – бирюзовый clOlive – оливковый clFuchsia – сиреневый clGray – серый clLime – ярко-зеленый clDkGray – темно-серый clSilver – серебряный
Действия с пером SetPenColor(color); Устанавливает цвет пера, задаваемый параметром color. SetPenWidth(w); Устанавливает ширину пера, равную w пикселам. SetPenStyle(ps); Устанавливает стиль пера, задаваемый параметром ps. Действия с кистью SetBrushColor(color); Устанавливает цвет кисти, задаваемый параметром color.
SetBrushStyle(bs); Устанавливает стиль кисти, задаваемый параметром bs. bsSolid –один тон bsCross -в клеточку bsDiagCross -наклонная клеточка bsHorizontal-горизонтальные полоски bsBDiagonal диагональ справа налево bsVertical вертикальные полоски bsFDiagonal диагональ слева направо
Пример программы uses GraphABC; begin SetPenColor(clGreen); MoveTo(180,30); LineTo(100,100); LineTo(260,100); LineTo(180,30); SetBrushColor(clRed); FloodFill(180,32,clGreen); {SetBrushColor(clBrown );} {SetBrushStyle(bsDiagCross);} Rectangle(100,100,260,290); end.
Олимпийский флаг
uses graphabc; begin SetPenWidth(1); SetpenColor(clBlack); SetBrushColor(clCream); Rectangle(30,30,150,115); SetPenWidth(5); setBrushStyle(bsClear); setPenColor(clBlue); Ellipse(40,40,80,80); setPenColor(clBlack); Ellipse(70,40,110,80); setPenColor(clRed); Ellipse(100,40,140,80); setPenColor(clYellow); Ellipse(55,65,95,105); setPenColor(clGreen); Ellipse(85,65,125,105); end.