
Cats
Пример страницы со сценарием
!doctype>?xml>
пятница, 9 октября 2009 г.
пятница, 2 октября 2009 г.
ЛАБОРАТОРНАЯ РАБОТА № 3.
Цель: Разработать алгоритм и программу решения прикладной задачи – построение графика заданной функции. Научиться переводить декартовые координаты в экранные.
Задача : Построить график функции y = Ax2 + Bx + C в диапазоне ( x min , y min ) – ( x max , y max ). Постоянные А, В, С, x min , y min , x max , y max вводятся через пользовательский интерфейс.

var
Form1: TForm1;
a,b,c,N,Xmin,Ymin,Xmax,Ymax,i,xe1,ye1:integer;
dx,y,xe,ye,ky,kx,x:real;
implementation
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
begin
a:=StrToInt(Edit6.Text);
b:=Strtoint(Edit7.Text);
c:=Strtoint(Edit8.Text);
Xmin:=Strtoint(Edit1.Text);
Ymin:=Strtoint(Edit2.Text);
Xmax:=Strtoint(Edit4.Text);
Ymax:=Strtoint(Edit3.Text);
N:=Strtoint(Edit5.Text);
dx:=(Xmax-Xmin)/N;
kx:=Width/(Xmax-Xmin);
ky:=Height/(Ymax-Ymin);
x:=Xmin;
while x<=xmax do begin y:=a*x*x+b*x+c; xe:=(x-Xmin)*kx; ye:=(y-Ymin)*ky; xe1:=Trunc(xe); ye1:=Trunc(ye); Image1.Canvas.Rectangle(0,0,Image1.Width,Image1.Height); Image1.Canvas.Ellipse(xe1,ye1,5,5); x:=x+dx; end; end;


ЛАБОРАТОРНАЯ РАБОТА 2
Работа с графикой в среде Lazarus.
Задача 2: Создать программу рисующую треугольник, координаты вершин которого можно изменять через пользовательский интерфейс.

procedure TForm1.Button1Click(Sender: TObject);
var x1,y1,x2,y2,x3,y3:integer;
begin
Image1.Canvas.Rectangle(0,0,Image1.Width,Image1.Height);
x1:=StrToInt(Edit1.Text);
y1:=StrToInt(Edit2.Text);
x2:=StrToInt(Edit3.Text);
y2:=StrToInt(Edit4.Text);
x3:=StrToInt(Edit5.Text);
y3:=StrToInt(Edit6.Text);
Image1.Canvas.Pen.Color:= clBlue ;
Image1.Canvas.MoveTo(x1,y1);
Image1.Canvas.LineTo(x2,y2);
Image1.Canvas.Pen.Color:= clred ;
Image1.Canvas.LineTo(x3,y3);
Image1.Canvas.Pen.Color:= clGreen ;
Image1.Canvas.LineTo(x1,y1);
end;
Задача 2: Создать программу рисующую треугольник, координаты вершин которого можно изменять через пользовательский интерфейс.
Задача 1: Нарисовать в объекте TImage треугольник, одна сторона которого черная, другая красная и третья - синяя.

procedure TForm1.Button1Click(Sender: TObject);
var x1,y1,x2,y2,x3,y3:integer;
begin
Image1.Canvas.Rectangle(0,0,Image1.Width,Image1.Height);
x1:=StrToInt(Edit1.Text);
y1:=StrToInt(Edit2.Text);
x2:=StrToInt(Edit3.Text);
y2:=StrToInt(Edit4.Text);
x3:=StrToInt(Edit5.Text);
y3:=StrToInt(Edit6.Text);
Image1.Canvas.Pen.Color:= clBlue ;
Image1.Canvas.MoveTo(x1,y1);
Image1.Canvas.LineTo(x2,y2);
Image1.Canvas.Pen.Color:= clred ;
Image1.Canvas.LineTo(x3,y3);
Image1.Canvas.Pen.Color:= clGreen ;
Image1.Canvas.LineTo(x1,y1);
end;
Подписаться на:
Сообщения (Atom)