Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Новые рефераты » Модуль Graph в програмі Turbo Pascal

Реферат Модуль Graph в програмі Turbo Pascal





> Y 2: Integer ), яка зобразить на екрані прямокутник з діагоналлю (X1, Y1) - (X2, Y2). Для малювання квадрата треба вибрати висоту прямокутника так, щоб вона дорівнювала добутку ширини на коефіцієнт стиснення зображення. p> Щоб побудувати фігури з великою кількістю вершин (у тому числі і незамкнуті), можна скористатися процедурою

DrawPoly (NumPoints: Word; VAR PolyPoints)

Вона дозволяє малювати на екрані дисплея будь-яку ламану, задану набором координат деякої безлічі точок. Це може бути як складна геометрична фігура, так і таблична математична функція. Параметр NumPoints - це кількість точок ламаної (зауважимо, що якщо необхідно намалювати замкнутий багатокутник з N вершинами, то значення NumPoints повинно бути на одиницю більше числа N, а координата (N +1)-й точки повинна бути такий же, як координата першої). Під безтиповою параметром PolyPoints розуміється будь-яка змінна, що складається з наборів двокомпонентних записів. Поля кожного запису повинні містити координати X-і Y чергової точки. У модулі Graph введено такий тип:

TYPE

PointType = RECORD

X , Y : Integer ; {координати точки }

END ;

Зазвичай набір точок організується як масив із записів типу PointType (і саме до такої структурі наводиться значень параметра PolyPoint при роботі процедури DrawPoly). Приклад побудови графіка функції за допомогою процедури DrawPoly наведено далі.


USES Graph;

{підключений модуль Graph}

{$ I initgraf.pas}

{процедура ініціалізації}

CONST


Pi * 3.14151828;

{константа Pi (заміщає функцію)}

Pi2 = 2 * Pi;

{різні похідні від Pi ...}

Pi001 = 0.01 * Pi;


VAR


angle: Real;


sine_func: Array [1.201] of PointType;

{масив точок}

maxy, i: Integer;


BEGIN

В 

Grlnit;

{ініціалізація графіки}

maxy: = GetMaxY div 2;

{середина екрану по осі Y}

angle: = 0.0;

{завдання стартових значень}

i: = 0;

{лічильник точок у sine_func}

repeat

{цикл заповнення sine_func}

Inc (i);


sine_func [i]. x: = Round (100 * angle) + 10;

sine_func [i]. y: = Round (100 * Sin (angle)) + maxy;

angle: = angle + Pi001;


until angle> Pi2;


DrawPoly (i, sine_func) ; /Td>

{малювання графіка синуса}

ReadLn;

{пауза до натискання введення}

CloseGraph

{закриття графіки}

END.



За допомогою DrawPoly можна вивести графік частини функції. Для цього достатньо вказати при переданому масиві номер n першого розглянутого елемента (тобто точки), а в першому параметрі - кількість розглянутих точок, починаючи з n-й, наприклад

DrawPoly (20, sine _ func [100 ]);

Такий виклик виведе ламану лінію по точках з номерами 100, 101, ..., 119. p> При виведенні кількості точок, порівнянного зі значенням GetMaxX, і при несплошном стилі лінії може виявитися, що крок між сусідніми точками відповідає ширині пропусків між пунктиром. У підсумку лінія може взагалі не проявитися на екрані. Треба або зменшити кількість точок, або обрати суцільний тип лінії. p> Управління квітами і шаблонами заливки (заповнення)


Розглянемо процедури, керуючі кольоровою гамою зображення...


Назад | сторінка 11 з 19 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Програма обробки масивів координат точок на мові Сі
  • Реферат на тему: Розробка алгоритму розрахунку визначення координат точок кінематичної схеми ...
  • Реферат на тему: Перенесення точок на місцевість
  • Реферат на тему: Технологія одержании квантова точок
  • Реферат на тему: Методи отримання та застосування квантових точок