Remkomplekty.ru

IT Новости из мира ПК
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Графические примитивы паскаль

Работа с графикой в PascalABC

После запуска PascalABC, по умолчанию, запускается текстовый режим. Для работы с графикой служит отдельное графическое окно.

Чтобы его открыть, необходимо подключить модуль GraphABC. В этом модуле содержится набор процедур и функций, предназначенных для работы с графическим экраном, а также некоторые встроенные константы и переменные, которые могут быть использованы в программах с графикой.

С их помощью можно создавать разнообразные графические изображения и сопровождать их текстовыми надписями.

Подключение осуществляется в разделе описаний.
Формат подключения модуля GraphABC:Uses GraphABC;

Графический экран PascalABC (по умолчанию) содержит 640 точек по горизонтали и 400 точек по вертикали. Начало отсчета – левый верхний угол экрана. Ось x направлена вправо, а ось y –вниз. Координаты исчисляются в пикселях.

Все команды библиотеки GraphABC являются подпрограммами и описаны в виде процедур и функций. Для того, что бы команда выполнилась необходимо указать команду и задать значения параметров.

Управление графическим окном

Процедуры рисования графических примитивов

Процедуры, используемые для работы с цветом

Процедуры для работы с текстом

Цвета в PascalABC

Пример графической программы, рисующей изображение дома:

Рисунок в PascalABC

Программа, рисующая фигурку:

Практическая работа за компьютером

Задание 1. Определите координаты и составьте программу, выводящую на экран рисунк дома и дерева.


Программа будет иметь вид:

Задание 2. Используя оператор цикла и введя переменную для пересчета координат по оси x, постройте «поселок», состоящий из 5 домов. Внесите соответствующие дополнения и изменения в предыдущую программу.

Весь наш «поселок» выстроился вдоль горизонтальной оси экрана — оси X. Построение рисунка начинается с левого верхнего угла стены первого дома — точки с координатами (100, 50). Координата Y не изменяется. Чтобы начать рисовать второй домик, нужно координату X увеличить на 150 (50 точек — ширина первого дома и 100 точек — расстояние между домиками).

Выберем в качестве параметра цикла целочисленную переменную X.
Для всех элементов нашего рисунка абсолютное значение координаты X заменим на относительное. Например, для стены дома процедура для рисования запишется следующим образом:

Сформулируем условие выполнения цыклических действий для нашей задачи.Какие координаты имеет левый верхний угол пятого дома? Конечное значение выбранного нами параметра цикла x = 700. Тогда условие выполнения цикла записывается так: x Да

Графические примитивы

Графические примитивы представляют собой процедуры, осуществляющие рисование в графическом окне. Рисование осуществляется текущим пером (линии), текущей кистью (заливка замкнутых областей) и текущим шрифтом (вывод строк).

procedure SetPixel(x,y: integer; c: Color);

Закрашивает пиксел с координатами (x,y) цветом c

procedure PutPixel(x,y: integer; c: Color);

Закрашивает пиксел с координатами (x,y) цветом c

function GetPixel(x,y: integer): Color;

Возвращает цвет пиксела с координатами (x,y)

procedure MoveTo(x,y: integer);

Устанавливает текущую позицию рисования в точку (x,y)

procedure LineTo(x,y: integer);

Рисует отрезок от текущей позиции до точки (x,y). Текущая позиция переносится в точку (x,y)

procedure LineTo(x,y: integer; c: Color);

Рисует отрезок от текущей позиции до точки (x,y) цветом c. Текущая позиция переносится в точку (x,y)

procedure Line(x1,y1,x2,y2: integer);

Рисует отрезок от точки (x1,y1) до точки (x2,y2)

procedure Line(x1,y1,x2,y2: integer; c: Color);

Рисует отрезок от точки (x1,y1) до точки (x2,y2) цветом c

procedure FillCircle(x,y,r: integer);

Заполняет внутренность окружности с центром (x,y) и радиусом r

procedure DrawCircle(x,y,r: integer);

Рисует окружность с центром (x,y) и радиусом r

procedure FillEllipse(x1,y1,x2,y2: integer);

Заполняет внутренность эллипса, ограниченного прямоугольником, заданным координатами противоположных вершин (x1,y1) и (x2,y2)

procedure DrawEllipse(x1,y1,x2,y2: integer);

Рисует границу эллипса, ограниченного прямоугольником, заданным координатами противоположных вершин (x1,y1) и (x2,y2)

procedure FillRectangle(x1,y1,x2,y2: integer);

Заполняет внутренность прямоугольника, заданного координатами противоположных вершин (x1,y1) и (x2,y2)

procedure FillRect(x1,y1,x2,y2: integer);

Заполняет внутренность прямоугольника, заданного координатами противоположных вершин (x1,y1) и (x2,y2)

procedure DrawRectangle(x1,y1,x2,y2: integer);

Рисует границу прямоугольника, заданного координатами противоположных вершин (x1,y1) и (x2,y2)

procedure FillRoundRect(x1,y1,x2,y2,w,h: integer);

Заполняет внутренность прямоугольника со скругленными краями; (x1,y1) и (x2,y2) задают пару противоположных вершин, а w и h – ширину и высоту эллипса, используемого для скругления краев

procedure DrawRoundRect(x1,y1,x2,y2,w,h: integer);

Рисует границу прямоугольника со скругленными краями; (x1,y1) и (x2,y2) задают пару противоположных вершин, а w и h – ширину и высоту эллипса, используемого для скругления краев

procedure Circle(x,y,r: integer);

Рисует заполненную окружность с центром (x,y) и радиусом r

procedure Ellipse(x1,y1,x2,y2: integer);

Рисует заполненный эллипс, ограниченный прямоугольником, заданным координатами противоположных вершин (x1,y1) и (x2,y2)

procedure Rectangle(x1,y1,x2,y2: integer);

Рисует заполненный прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2)

procedure RoundRect(x1,y1,x2,y2,w,h: integer);

Рисует заполненный прямоугольник со скругленными краями; (x1,y1) и (x2,y2) задают пару противоположных вершин, а w и h – ширину и высоту эллипса, используемого для скругления краев

procedure Arc(x,y,r,a1,a2: integer);

Рисует дугу окружности с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки)

procedure FillPie(x,y,r,a1,a2: integer);

Заполняет внутренность сектора окружности, ограниченного дугой с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки)

procedure DrawPie(x,y,r,a1,a2: integer);

Рисует сектор окружности, ограниченный дугой с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки)

Читать еще:  Примеры обеспечения безопасности жизнедеятельности в россии

procedure Pie(x,y,r,a1,a2: integer);

Рисует заполненный сектор окружности, ограниченный дугой с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки)

procedure DrawPolygon(points: array of Point);

Рисует замкнутую ломаную по точкам, координаты которых заданы в массиве points

procedure FillPolygon(points: array of Point);

Заполняет многоугольник, координаты вершин которого заданы в массиве points

procedure Polygon(points: array of Point);

Рисует заполненный многоугольник, координаты вершин которого заданы в массиве points

procedure Polyline(points: array of Point);

Рисует ломаную по точкам, координаты которых заданы в массиве points

procedure Curve(points: array of Point);

Рисует кривую по точкам, координаты которых заданы в массиве points

procedure DrawClosedCurve(points: array of Point);

Рисует замкнутую кривую по точкам, координаты которых заданы в массиве points

procedure FillClosedCurve(points: array of Point);

Заполняет замкнутую кривую по точкам, координаты которых заданы в массиве points

procedure ClosedCurve(points: array of Point);

Рисует заполненную замкнутую кривую по точкам, координаты которых заданы в массиве points

procedure TextOut(x,y: integer; s: string);

Выводит строку s в прямоугольник к координатами левого верхнего угла (x,y)

procedure TextOut(x,y: integer; n: integer);

Выводит целое n в прямоугольник к координатами левого верхнего угла (x,y)

procedure TextOut(x,y: integer; r: real);

Выводит вещественное r в прямоугольник к координатами левого верхнего угла (x,y)

procedure DrawTextCentered(x,y,x1,y1: integer; s: string);

Выводит строку s, отцентрированную в прямоугольнике с координатами (x,y,x1,y1)

procedure DrawTextCentered(x,y,x1,y1: integer; n: integer);

Выводит целое значение n, отцентрированное в прямоугольнике с координатами (x,y,x1,y1)

procedure DrawTextCentered(x,y,x1,y1: integer; r: real);

Выводит вещественное значение r, отцентрированное в прямоугольнике с координатами (x,y,x1,y1)

procedure FloodFill(x,y: integer; c: Color);

Заливает область одного цвета цветом c, начиная с точки (x,y).

Похожие главы из других книг:

4. Примитивы синхронизации

4. Примитивы синхронизации ОС QNX Neutrino предоставляет широкий набор элементов синхронизации выполнения потоков, как в рамках одного процесса, так и разных. Это практически полный спектр примитивов, описываемых как базовым стандартом POSIX, так и всеми его расширениями

10.4. Примитивы процессов

10.4. Примитивы процессов Несмотря на относительно длинную дискуссию, необходимую для описания процесса, создание и уничтожение процессов в Linux достаточно

Примитивы DLPI

Примитивы DLPI Как и в случае предоставления транспортных услуг, обмен данными между пользователем и поставщиком происходит в виде сообщений, несущих примитивы DLPI. Ниже рассмотрены некоторые из этих примитивов, относящиеся к режиму передачи без предварительного

Вершины и примитивы

Вершины и примитивы Определение атрибутов вершины Под вершиной понимается точка в трехмерном пространстве, координаты которой можно задавать следующим образом:void glVertex[2 3 4][s i f d](type coords)void glVertex[2 3 4][s i f d]v(type *coords)Координаты точки задаются максимум четырьмя значениями: x, y,

Стандартные геометрические примитивы

Стандартные геометрические примитивы Рассмотрим стандартные команды построения примитивов, которые реализованы в библиотеках GLU и GLUT.Как уже было сказано, чтобы построить примитив из библиотеки GLU, надо сначала создать указатель на quadric- объект с помощью команды

Графические файлы

Графические файлы Форматы графических файлов не менее разнообразны, чем форматы архивов. Чаще всего в Интернете встречаются следующие форматы графики: JPEG, GIF, TIF, PNG, BMP и др. Для работы с графическими файлами, как и с файлами видео и аудио, можно обойтись стандартными

Графические утилиты

Графические утилиты При помощи APT в репозитарии Ubuntu можно найти несколько утилит с графическим интерфейсом для копирования Audio CD.В файловый менеджер Konqueror встроена возможность автоматического перекодирования Audio CD. Первоначально это был только Ogg Vorbis, в последних версиях

Поверхностные примитивы

Поверхностные примитивы Стандартные трехмерные примитивы в программе AutoCAD можно создать несколькими способами. Первый способ – использование команды 3D. После ее запуска в командной строке появится запрос:Enter an option[Box/Cone/DIsh/DOme/Mesh/Pyramid/Sphere/Torus/Wedge]:Выбрав один из параметров

Примитивы, определённые в библиотеке

Примитивы, определённые в библиотеке Чтобы упростить задачу определения iterator_category, value_type и distance_type для определяемых пользователем итераторов, библиотека обеспечивает следующие предопределённые классы и функции:// iterator tags (теги итераторов)struct input_iterator_tag <>;struct output_iterator_tag

Примитивы управления памятью (Memory Handling Primitives)

Примитивы управления памятью (Memory Handling Primitives) Чтобы получать типичный указатель на неинициализированный буфер памяти данного размера, определена следующая функция:template ‹class T›inline T* allocate(ptrdiff_t n, Т*); // n ›= 0Размер (в байтах) распределённого буфера — не меньше n*sizeof(T).Для

Поверхностные примитивы

Поверхностные примитивы Стандартные трехмерные примитивы в программе AutoCAD можно создать несколькими способами. Первый способ – использование команды 3D. После ее запуска в командной строке появится запрос: Enter an option [Box/Cone/DIsh/DOme/Mesh/Pyramid/Sphere/Torus/Wedge]: Выбрав один из параметров

1.2. Создание изображений. Графические примитивы

1.2. Создание изображений. Графические примитивы Команды создания графических примитивов позволяют строить единые и неделимые объекты различными типами линий и разными цветами.Точка, как правило, является вспомогательным средством для маркировки и последующего

Графические соглашения

Графические соглашения Для разминки начнем с небольшой проблемы, связанной с нотацией. Это конечно деталь, но из деталей складывается общая картина. Речь идет о наборе соглашений, используемых для графического представления классов и объектов. В предшествующей лекции

Графические планшеты

Графические планшеты Кроме основных существует много других вспомогательных устройств, одними из наиболее часто встречающихся среди них являются графические планшеты (рис. 8.16). Рис. 8.16. Графический планшет.Данные устройства представляют собой небольшую площадку, по

5.1.11. Графические объекты

5.1.11. Графические объекты Растровые изображенияК растровым (точечным) изображениям относятся: рисунки, созданные в растровом графическом редакторе, цифровые фотографии, отсканированные схемы, открытки, обложки, фрагменты документов и т. п. Для Pages растровые изображения

Читать еще:  Процедура сортировки массива паскаль

Работа с точками и графическими примитивами Паскаль

Модуль Graph обладает достаточно большим количеством функций и процедур, благодаря которым осуществляется работа с точками и графическими примитивами Паскаль.

Остановимся подробнее на некоторых из них:

Процедуры и функции для работы с точками и графическими примитивами Паскаль:

1) Процедура

осуществляет вывод на дисплей точки, имеющей цвет c и координаты x1 и y1.

2) Процедура

обеспечивает рисование отрезка текущего цвета и типа, имеющего концы в точках с координатами (x1,y1) и (x2,y2).

3) Процедура

устанавливает тип линии.

4) Процедура

обеспечивает рисование отрезка текущего цвета и типа, начиная с исходной позиции курсора и заканчивая точкой с координатами (x1,y1).

5) Функции

позволяют получить информацию об исходном размещении графического курсора.

6) Чтобы расположить графический курсор в точку с желаемыми координатами, пользуются процедурой

7) Процедура

изображает прямоугольник линией текущего цвета и типа, начиная с верхней левой точки с координатами (x1,y1) и заканчивая нижней левой точкой с координатами (x2,y2);

8) Процедура

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

9) Процедура

обеспечивает установку типа и цвет узора.

10) Процедура

осуществляет построение параллелепипеда текущего цвета с окрашенной передней гранью. Здесь под параметромz понимается глубина параллелепипеда, а логический параметр t проверяет, рисовать ли (значение true) или нет (значение false) переднюю грань.

11) Процедура

изображает окружность с текущим цветом с центром в точке, имеющей координаты (x1,y1), и радиусом r.

12) Процедура

рисует эллипс, либо его дугу с центром в точке, имеющей координаты (x1,y1). Параметры a и b устанавливают значения в радианах соответственного начального и конечного углов, которые ограничивают дугу, а параметры xr иyr являются большим и малым радиусом.

13) Процедура

обеспечивает отрисовку дуги окружности с радиусом r, центр которой находится в точке, имеющей координаты (x1,y1), из угла a, выраженного в радианах, в угол b.

14) Процедура

осуществляет рисование заполненного текущим узором эллипса текущего цвета.

15) Процедура

изображает набитый текущим узором сектор круга с текущим цветом.

16) Процедура

рисует сектор эллипса с текущим цветом, заполняя его текущим узором.

17) Процедура

производит заполнение произвольной замкнутой фигуры текущим стилем и цветом заполнения. Координаты точки (x1,y1) показывают, с какой именно точки осуществиться заливка. Если данная точка располагается в замкнутой фигуре, то окрашивается ее внутренняя область. В случае незамкнутой фигуры произойдет казус, и заливка будет произведена по всему дисплею. За параметром bord закреплено определение цвета граничной линии.

Графические примитивы паскаль

Язык:
Русский
English

В модуле Graph (GRAPH.TPU) находится библиотека, состоящая из более чем 50 графических подпрограмм от побитовых до подпрограмм высокого уровня.

Инициализация графики происходит вызовом InitGraph . Разрешение экрана обычно 640×480, количество цветов — 16. Стандартную палитру из 16 цветов можно посмотреть здесь . В режимах с 256 цветами первые 16 цветов обычно те же самые. Более высокие разрешения и количество цветов (например, 800×600, 256 цветов) можно получить, используя SVGA BGI драйверы. В School Pak для этого есть модуль ScpGraph . Он содержит процедуру InitScpGraph вместо InitGraph , а также некоторые вспомогательные функции для режимов High Color и True Color.

Большинство графических примитивов либо рисуются линией , либо закрашивают площадь . Когда графика инициализирована, в любой момент существуют текущий цвет линии и текущий цвет закраски, которые могут быть разными и меняются отдельно. Сразу после InitGraph обычно и линия, и закраска белые (цвет с максимальным номером в палитре). Цвет линии меняется вызовом SetColor , цвет закраски меняется вызовом SetFillStyle . Линия и закраска могут быть не сплошными, а по шаблону, который меняется SetLineStyle и SetFillStyle , соответственно. При помощи SetLineStyle можно ещё сделать линию толще в 3 раза.

Самые популярные графические процедуры:

  • Line (линия), Rectangle (прямоугольник), Circle (окружность) — рисуют линиями
  • Bar (закрашенный прямоугольник), FillEllipse (круг или закрашенный эллипс), FloodFill (заливка всего, что вокруг одной точки) — закрашивают площадь
  • PutPixel и GetPixel — запись и чтение по пикселам
  • OutTextXY — пишет текст либо пикселами, либо рисует линиями . DefaultFont — растровый шрифт, рисуется пикселами, все остальные шрифты векторные, рисуются линиями . Цвет задаётся SetColor

Кроме этого, некоторые процедуры имеют версии, работающие относительно текущей позиции. Текущая позиция меняется MoveTo , и относительно неё, например, работают LineTo и OutText .

Если нужно, чтобы изображение не пропадало до нажатия любой клавиши, можно использовать ReadKey или ReadLn . После завершения работы с графикой желательно вызывать CloseGraph .

Подробности

Компилирование

Для компилирования программы, использующей модуль Graph, нужно указать путь к файлу GRAPH.TPU (в строке ввода Options|Directories|Unit Directories) и иметь доступ к стандартным модулям в файле TURBO.TPL

Выполнение

Для запуска программы, использующей модуль Graph, вам будет нужен один (или несколько) графических драйверов (BGI файлов). Если ваша программа использует векторные шрифты, то в дополнение к драйверам, вам будут нужны ещё и файлы шрифтов (CHR).

Известные проблемы

Скачать

См. также

ScpGraph — для работы с нестандартными режимам, в том числе SVGA

Программирование графики Pascal ABC;

Структура RAM DAC

Информация в видеобуфере хранится в байтах. Каждый байт может определять цвет одного или несколько пикселов.

Читать еще:  Метод прямого выбора паскаль

Для видеобуфера, где хранятся атрибуты изображения, применяются специальные микросхемы, которые имеют 2 входных канала:

1. Для регенерации изображения (адаптер только считывает информацию);

2. Для записи изображения.

Оба канала действуют параллельно и независимо.

Функции видеоконтроллера: (формирование сигналов горизонтальной и вертикальной синхронизации, счетчик адресов видеобуфера, формирует форму и позицию курсора).

Некоторые универсальные языки программирования могут иметь стандартную поддержку графики. Например, язык Pascal имеет возможность создавать несложные графические приложения. Для программирования графики на языке Pascal существует модуль Graph, при помощи процедур которого можно рисовать изображения.

var GraphDriver,GraphMode: integer;

Это было удобно при MS DOS, где основным режимом был текстовый. С появлением Windows основным режимом стал графический.

При программировании графических приложения под Windows, используя обработчик события WM_PAINT или OnPaint (последнее — если используется какой-нибудь объектный каркас для Windows-приложения), нельзя рисовать долго, поскольку программа на время его работы блокируется. А если рисовать в других обработчиках, то нарисованное стирается при следующей перерисовке окна.

С появлением языка Pascal ABC, в котором графическая библиотека подключается крайне просто, многие проблемы были решены. В этом языке графическое приложение похоже на обычную программу, в которой подключается графический модуль GraphABC и в блоке операторов после begin end можно писать графические команды.

По умолчанию графический экран PasсalABC содержит 640 точек по горизонтали и 400 точек по вертикали. Начало отсчета – левый верхний угол. При запуске такой программы возникает специальное графическое окно, и все рисование происходит именно на нем. Изображение на нем не пропадает при перерисовке, программа не окажется заблокированной на время рисования и можно рисовать сколь угодно долго и не сложно осуществлять анимацию.

Например, программа для рисования узора:

for x:=0 to WindowWidth-1 do

for y:=0 to WindowHeight-1 do

Например, программа цифровых часов :

x0 := (WindowWidth — TextWidth(’00 : 00 : 00 ‘)) div 2;

y0 := (WindowHeight — TextHeight(’00 : 00 : 00 ‘)) div 2;

TextOut(x0,y0,s1+’ : ‘+s2+’ : ‘+s3+’ ‘);

Возможности модуля растровой графики GraphABC практически совпадают с графическими возможностями Borland Delphi. Процедуры и функции рисования и установки параметров рисования аналогичны методам и свойствам класса TCanvas в Delphi. Например, вместо свойства Canvas.Brush.Color используется пара: процедура SetBrushColor(color) и функция BrushColor.

Модуль GraphABC представляет собой простую графическую библиотеку и предназначен для создания несобытийных графических и анимационных программ в процедурном и частично в объектном стиле. Рисование осуществляется в специальном графическом окне, возможность рисования в нескольких окнах отсутствует. Кроме этого, в модуле GraphABC определены простейшие события мыши и клавиатуры, позволяющие создавать элементарные событийные приложения. Основная сфера использования модуля GraphABC — обучение.

Модуль GraphABC основан на графической библиотеке GDI+, но запоминает текущие перо, кисть и шрифт, что позволяет не передавать их в качестве параметров при вызове графических примитивов. К свойствам пера, кисти и шрифта можно получать доступ как в процедурном, так и в объектном стиле. Например, для доступа к цвету текущего пера используется процедура SetPenColor(c) и функция PenColor, а также свойство Pen.Color.

В модуле GraphABC можно управлять самим графическим окном и компонентом GraphABCControl, на котором осуществляется рисование. По умолчанию компонент GraphABCControl занимает всю клиентскую часть графического окна, однако, на графическое окно можно добавить элементы управления, уменьшив область, занимаемую графическим компонентом (например, так сделано в модулях Robot и Drawman).

Для работы с рисунками используется класс Picture, позволяющий рисовать на себе те же графические примитивы, что и на экране.

Режим блокировки рисования на экране (LockDrawing) позволяет осуществлять прорисовку лишь во внеэкранном буфере, после чего с помощью метода Redraw восстанавливать все графическое окно. Данный метод используется для ускорения анимации и создания анимации без мерцания.

Модуль GraphABC содержит константы, типы, процедуры, функции и классы для рисования в графическом окне. Они подразделяются на следующие группы:

1. Графические примитивы.

2. Действия с цветом.

3. Действия с пером.

4. Действия с кистью.

5. Действия со шрифтом.

6. Действия с рисунками.

7. Действия с графическим окном.

8. Задание режимов вывода

Наиболее используемые графические процедуры и функции.

1. Управление экраном.

SetWindowWidth(w). Устанавливает ширину графическогоокна;

SetWindowHeight(h) -Устанавливает высоту графическогоокна;

2. Графические примитивы.

Точка SetPixel(x,y,color). Закрашиваетодин пиксел с координатами (x,y) цветом color. Например, SetPixel(300,200,clred).

Линии Line(x1,y1,x2,y2). Рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2). Например, line(100,50,500,250).

Процедура MoveTo(x,y). Передвигает невидимое перо к точке с координатами (x,y). Эта процедура обычно работает в паре с процедурой LineTo(x,y).

Процедура LineTo(x,y). Рисует отрезок от текущего положения пера до точки (x,y). Координаты пера при этом также становятся равными (x,y).

Прямоугольник Rectangle(x1,y1,x2,y2). Рисует прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2). Например, Rectangle(50,50,200,200).

Процедура Polygon(А, n) строит ломаную линию по n точкам, координаты которых заданы в массиве А элементов типа Point.

Процедура Polyline(А, n) строит замкнутую ломаную линию по n точкам, координаты которых заданы в массиве А элементов типа Point.

Окружность Circle(x,y,r). Рисует окружность с центром в точке (x,y) и радиусом r. Например, Circle(500,200,100).

Дуга окружности Arc(x,y,r,a1,a2). Рисует дугу окружности с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки). Например, Arc(300,250,150,45,135);

Ссылка на основную публикацию
Adblock
detector