Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lazarus_графика.ppt
Скачиваний:
41
Добавлен:
27.04.2021
Размер:
496.13 Кб
Скачать

Прямоугольник со скругленными углами

Метод RoundRec тоже вычерчивает прямоугольник, но со скругленными углами.

Объект.Canvas.RoundRec(x1,y1,х2, у2, х3, у3)

где:

x1, y1, х2, у2 -- параметры, определяющие положение углов прямоугольника, в который вписывается прямоугольник со скругленными углами; х3 и у3 — размер эллипса, одна четверть которого

используется для вычерчивания скругленного угла.

Окружность и эллипс

Метод Ellipse вычерчивает эллипс или окружность, в зависимости от значений параметров. Инструкция вызова метода в общем виде выглядит следующим образом:

Объект.Canvas.Ellipse(x1,y1, х2,у2);

где:

объект — имя объекта (компонента), на поверхности которого выполняется вычерчивание; x1, y1, х2, у2 — координаты прямоугольника, внутри которого вычерчивается эллипс или, если прямоугольник является квадратом, окружность

Дуга

Вычерчивание дуги выполняет метод Arc:

Объект.Canvas.Arc(x1,y1,х2,у2,х3,у3,х4,у4), где:

x1, y1, х2, у2 — параметры, определяющие эллипс (окружность), частью которого является вычерчиваемая дуга; х3, у3 — параметры, определяющие начальную точку дуги; х4, у4 — параметры, определяющие конечную точку дуги. Начальная (конечная) точка — это точка пересечения границы эллипса и прямой, проведенной из центра эллипса в точку с координатами (х3,у3) и (х4, у4). Дуга вычерчивается против часовой стрелки от начальной точки к конечной

Сектор

Метод Pie вычерчивает сектор эллипса или круга.

Объект. Canvas.Pie(x1,y1,x2,y2,х3,у3,х4,у4) где:

x1, y1, х2, у2 — параметры, определяющие эллипс (окружность), частью которого является сектор; х3, у3, х4, у4 — параметры, определяющие координаты конечных

точек прямых, являющихся границами сектора.

Начальные точки прямых совпадают с центром эллипса (окружности). Сектор вырезается против часовой стрелки от прямой, заданной точкой с координатами (х3, у3), к прямой, заданной точкой с координатами (х4,

у4)

Нормальный

график

{$R *.dfm} const n=10000;

type realtype=extended;

procedure TForm1.Button2Click(Sender: TObject); begin

close;

end;

procedure TForm1.Button1Click(Sender: TObject); var a,b,step,min,max:realtype;

I ,w,h:integer;

x,y:array[0..n] of realtype; //x,y:array of real;

function fun(x:realtype):realtype; begin

if x<>0 then fun:=sin(x)/x else fun:=1; end;

Begin

a:=StrToFloat(edit1.Text);

b:=StrToFloat(edit2.Text);; step:=(b-a)/n; y[0]:=fun(a); min:=y[0];max:=y[0];

w:=paintbox1.Width;

h:=paintbox1.Height;

for i:=0 to n do

begin x[i]:=a+i*step; y[i]:=fun(x[i]);

if y[i]<min then min:=y[i];if y[i]>max then max:=y[i];

end;

with paintbox1.canvas do begin

FillRect(Rect(0,0,Width,Height)); Pen.Style:=psDot; Pen.width:=1;

moveto(1,1);lineto(w-1,1); //рамка lineto(w-1,h-1);lineto(1,h-1);lineto(1,1);

for i:=0 to n do pixels[round(W*(x[i]-a)/(b-a)),H-5-round((H-10)*(y[i]-min)/ (max-min))]:=clred;

end; end;

procedure TForm1.FormCreate(Sender: TObject); begin

edit1.Text:='-50';edit2.Text:='50'; end;

end.

Соседние файлы в предмете Информатика