gr: array[1..50] ofTPoint; // графік — ламана лінія
x0,y0: integer; // координати точки початку координат
dx,dy: integer; // крок координатної сітки по осях X і Y
i: integer; begin
х0 := 10; у0 := 200; dx :=5;dy := 5;
// заповнимо масив gr
fori:=l to50 do begin
gr[i].x := x0 + (i-l)*dx;
gr[i].y := y0 - Data[i]*dy;
end;
// будуємо графік
withforml.Canvas do begin
MoveTo(x0,y0); LineTo(x0,10); // вісь Y
MoveTo(x0,y0); LineTo(200,y0); // вісь X
Polyline(gr); // графік
end;
end;
Метод Polyline можна використовувати для креслення замкнутих контурів. Для цього треба, щоб перший і останній елементи масиву містили координати однієї і тієї ж крапки. Як приклад використання методу Polyline для креслення замкнутого контуру в лістингу 4.4 приведена програма, що на поверхні діалогового вікна, у точці натискання кнопки миші, вичерчує контур п'ятикутної зірки (мал. 4.5). Колір, яким викреслюється зірка, залежить від того, яка з кнопок миші була натиснута. Процедура обробки натискання кнопки миші (подія MouseDown) викликає процедуру малювання зірки starLine і передає їй як параметр координати точки, у якій була натиснута кнопка. Зірку вичерчує процедура starLine, що як параметри одержує координати центра зірки і полотно, на якому зірка повинна бути виведена. Спочатку обчислюються координати кінців і западин зірки, що записуються в масив р. Потім цей масив передається як параметр методу Polyline. При обчисленні координат променів і западин зірки використовуються функції sin і cos. Тому що аргумент цих функцій повинний бути виражений у радіанах, то значення кута в градусах домножується на величину pi/180, де pi — це стандартна іменована константа рівна числу π.
Зверніть увагу, що розмір масиву р на одиницю більше, ніж кількість кінців і западин зірки, і що значення першого й останнього елементів масиву збігаються.
Окружність і еліпс
Метод Ellipse вичерчує чи еліпс окружність, у залежності від значень параметрів. Інструкція виклику методу в загальному виді виглядає в такий спосіб: