Главная страница
Навигация по странице:

  • Процедуры модуля Graph Процедура

  • Функции модуля Graph

  • Методичка. Полный обучающий курс по Turbo Pascal. Полный обучающий курс Turbo Pascal


    Скачать 0.56 Mb.
    НазваниеПолный обучающий курс Turbo Pascal
    АнкорМетодичка. Полный обучающий курс по Turbo Pascal.doc
    Дата27.12.2017
    Размер0.56 Mb.
    Формат файлаdoc
    Имя файлаМетодичка. Полный обучающий курс по Turbo Pascal.doc
    ТипДокументы
    #13154
    КатегорияИнформатика. Вычислительная техника
    страница11 из 15
    1   ...   7   8   9   10   11   12   13   14   15

    Глава 6. Графика в системе Турбо Паскаль

    Графика в Турбо Паскале


    Экран дисплея ПК представляет собой прямоугольное поле, состоящее из большого количества точек. Дисплей может работать в текстовом и графическом режимах. Но в отличие от текстового режима в графическом режиме имеется возможность изменять цвет каждой точки.

    Чтобы сделать процесс графического программирования более эффективным, фирма Borland International разработала специализированную библиотеку Graph (в этом библиотечном модуле содержится 79 графических процедур, функций, различных стандартных констант и типов данных), набор драйверов, позволяющих работать с разными типами мониторов, и набор шрифтов для вывода на графический экран текстов разной величины и формы.

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

    Запуск и завершение работы в графической системе осуществляется следующим образом:

    1.      Подключить модуль Graph (библиотеку графических процедур): normal">uses Graph;

    2.      Установить графический режим:

    - описываем переменные, которые определяют графический драйвер и монитор:

    var gd, gm: integer;

    - задаем команду ПК для самовыбора значений переменных:

    gd:=Detect;(значение gm после команды gd:=detect; определяется автоматически)

    - инициализируем графический режим:

    InitGraph( gd, gm,’ указывается путь к драйверу, чем подробнее, тем лучше’)

    С этого момента все графические средства доступны пользователю.

    3.      Завершить работу в графической системе: CloseGraph;  

    Глава 6. Графика в системе Турбо Паскаль

    Базовые процедуры и функции


    Для построения изображений на экране используется система координат. Отсчет начинается от верхнего левого угла экрана, который имеет координаты (0,0). Значение Х (столбец) увеличивается слева направо, значение Y (строка) увеличивается сверху вниз. Чтобы строить изображения, необходимо указывать точку начала вывода. В текстовых режимах эту точку указывает курсор, который присутствует на экране. В графических режимах видимого курсора нет, но есть невидимый текущий указатель CP (Current Pointer). Фактически это тот же курсор, но он невидим.

       

    Процедуры модуля Graph

    Процедура

    Формат

    Действие

    SetColor

    SetColor (a: word);

    Устанавливает цвет, которым будет осуществляться рисование

    SetBkColor

    SetBkColor (a: word);

    Устанавливает цвет фона

    SetFillStyle

    SetFillStyle (a,b: word);

    a – стиль закраски, b – цвет

    Устанавливает стиль и цвет закраски

    SetLineStyle

    SetLineStyle (a,b,c: word);

    а – стиль линии, b- образец построения линии (может устанавливаться пользователем), с-толщина линии

    Устанавливает стиль и толщину линии

    SetTextStyle

    SetTextStyle (a,b,c: word);

    Устанавливает шрифт, стиль и размер текста

    SetFillPattern

    SetFillPattern (Pattern: FillpatternType; Color:word); Pattern- маска

    Выбирает шаблон заполнения, определенный пользователем

    ClearDivice

    ClearDivice

    Очищает экран и устанавливает текущий указатель в начало

    SetViewPort

    SetViewPort (x1, y1 , x2, y2 : integer, Clip:boolean);

    Устанавливает текущее окно для графического вывода

    ClearViewPort

    ClearViewPort

    Очищает окно

    PutPixel

    PutPixel (a,b,c :integer);

    Рисует точку цветом с в (x,y)

    Line

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

    Рисует линию от (x1, y1) к (x2,y2)

    Rectangle

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

    Рисует прямоугольник с диагональю от (x1, y1) к (x2, y2)

    Bar

    Bar (x1, y1 , x2, y2:integer);

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

    Bar3D

    Bar3D (x1, y1 , x2,y2, d:integer, a:boolean);

    Рисует трехмерную полосу (параллелепипед)

    Circle

    Circle (x,y,r: word);

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

    Arc

    Arc(x, y, a, b, R:integer);

    a, b- начальный и конечный углы в градусах

    Рисует дугу из начального угла к конечному, используя (x,y) как центр

    Ellipse

    Ellipse (x, y, a, b, Rx, Ry: integer);

    a, b- начальный и конечный углы в градусах

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

    FillEllipse

    FillEllipse (x, y, Rx, Ry:integer);

    Rx, Ry – вертикальная и горизонтальная оси

    Рисует закрашенный эллипс

    MoveTo

    MoveTo (x, y:integer);

    Передвигает текущий указатель в (x, y)

    MoveRel

    MoveRel(x, y : integer);

    Передвигает текущий указатель на заданное расстояние от текущей позиции на x по горизонтали и на y по вертикали

    OutText

    OutText (text: string);

    Выводит текст от текущего указателя

    OutTextxy

    OutTextxy(x, y: integer, text: string);

    Выводит текст из (x, y)

    Sector

    Sector(x, y, a, b, Rx, Ry: integer);

    a, b- начальный и конечный углы в градусах

    Рисует и заполняет сектор эллипса

      Функции модуля Graph

    GetBkColor

    Возвращает текущий фоновый цвет

    GetColor

    Возвращает текущий цвет

    GetX

    Возвращает координату X текущей позиции

    GetY

    Возвращает координату Y текущей позиции

    GetPixel

    Возвращает цвет точки в (x, y)
    1   ...   7   8   9   10   11   12   13   14   15


    написать администратору сайта