Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Ломаная линия

Читайте также:
  1. Банковское кредитование юридических лиц. Виды кредитов, цели и методы (способы) кредитования клиентов банка. Овердрафт, кредитная линия, срочная ссуда.
  2. БИЛЕТ №54. Бюджетная линия. Кривые безразличия. Оптимум потребителя.
  3. Борьба империи и папства как ключевая линия развития международных отношений Средневековья.
  4. Бюджетная линия. Равновесие потребителя
  5. Вопрос 14. Бюджетная линия.
  6. Вопрос. Бюджетная линия и её анализ
  7. Как называется линия пересечения поверхности ВНК с кровлей
  8. Линия бюджетных ограничений сместится __________ при росте реального дохода потребителя.
  9. Перемещение товаров трубопроводным транспортом и линиями электропередачи

Метод polyline вычерчивает ломаную линию. В качестве параметра метод получает массив типа TPoint. Каждый элемент массива представляет собой запись, поля х и у которой содержат координаты точки перегиба ломаной. Метод Polyline вычерчивает ломаную линию, последовательно соединяя прямыми точки, координаты которых находятся в массиве: первую со второй, вторую с третьей, третью с четвертой и т. д.

В качестве примера использования метода Polyline в листинге 10.3 приведена процедура, которая выводит график изменения некоторой величины. Предполагается, что исходные данные находятся в доступном процедуре массиве Data (тип Integer).

Листинг 10.3. График функции (использование метода Polyline)

procedure TForm1.Button1Click(Sender: TObject);

Var

gr: array[1..50] of TPoint; // график — ломаная линия

x0,y0: integer; // координаты точки начала координат

dx,dy: integer; // шаг координатной сетки по осям X и Y

i: integer;

Begin

х0:= 10; у0:= 200; dx := 5; dy:= 5;

// заполним массив gr

for i:=l to 50 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 для вычерчивания замкнутого контура в листинге 10.4 приведена программа, которая на поверхности диалогового окна, в точке нажатия кнопки мыши, вычерчивает контур пятиконечной звезды (рис. 10.5). Цвет, которым вычерчивается звезда, зависит от того, какая из кнопок мыши была нажата. Процедура обработки нажатия кнопки мыши (событие MouseDown) вызывает процедуру рисования звезды StarLine и передает ей в качестве параметра координаты точки, в которой была нажата кнопка. Звезду вычерчивает процедура StarLine, которая в качестве параметров получает координаты центра звезды и холст, на котором звезда должна быть выведена. Сначала вычисляются координаты концов и впадин звезды, которые записываются в массив р. Затем этот массив передается в качестве параметра методу Polyline. При вычислении координат лучей и впадин звезды используются функции sin и cos. Так как аргумент этих функций должен быть выражен в радианах, то значение угла в градусах домножается на величину pi/180, где pi — это стандартная именованная константа равная числу p.

Листинг 10.4. Вычерчивание замкнутого контура (звезды) в точке нажатия кнопки мыши

unit Stars_;




Дата добавления: 2015-02-16; просмотров: 43 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав