рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Алгоритмы построения графиков на экране

Алгоритмы построения графиков на экране - раздел Информатика, Информатика Лабораторный практикум По программированию На Турбо-Паскале Графический Режим Может Использоваться Как Для Произвольного Рисования (Когда...

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

Под функцией мы далее будем понимать зависимость вида Y=f(x), а под аналитически заданной кривой – кривую, координаты каждой точки которой выражаются через независимый параметр (угол, время и т.д.): X=f1(t), Y=f2(t).

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

Первым делом нужно определить, в каком виде график будет размещаться на экране. При этом решают, одинаковыми ли будут масштабы по обеим осям, какую часть экрана должен занять сам график и где будут подписи, будут ли изображаться оси координат и будут ли они отображать нулевые значения величин X и Y и т.д. По некоторым из этих вопросов решение можно принять только после того, как будут найдены диапазоны изменения значений X и Y участка строящейся кривой.

Для удобства последующих описаний обозначим именами X и Y (или именами, начинающимися с этих символов) величины, относящиеся к уравнениям кривой. Все экранные координаты и зависящие от них величины будем именовать, начиная с символа J для горизонтальных направлений и I – для вертикальных направлений.

В общем случае алгоритм построения графика включает следующие блоки:

  1. Для заданных требований к строящейся кривой определить диапазон изменения X (Xmin и Xmax). При построении графика функции этот диапазон обычно задается.
  2. Исходя из тех же требований, определить диапазон изменения Y (Ymin и Ymax). Для функции иногда предельные значения очевидны, как, например, для Sin(x) или Cos(x) или легко находятся для монотонных функций при граничных значениях аргументов (Exp(x), Ln(x) и т.д.). Если строится параметрически заданная кривая или сложная функция, поиск диапазонов проще выполнить после вычисления массива координат точек кривой (Xi[1..N] и Yi[1..N], которые в дальнейшем будут использоваться при построении самого графика). Из массивов максимумы и минимумы находятся простым перебором значений.
  3. Принимается решение, будут ли изображаться оси координат (X=0 и Y=0) на рисунке кривой, и если нулевые значения не входят в найденные диапазоны, последние корректируются с учетом этих нулевых значений.
  4. Если заранее известно, какой видеоадаптер будет использоваться, EGA или VGA, то максимальные размеры экрана в пикселях являются константами. Для EGA это 640 точек по Х и 350 точек по Y, для VGA размер по Y равен 480 точкам. Тогда можно провести все дальнейшие расчеты экранных координат графика и только после этого переходить в графический режим для проведения самих построений на экране. Мы будем исходить из универсального подхода, строя алгоритм для размеров экрана, определяемых после открытия графического режима
  5. Инициализация графики производится процедурой InitGraph. В качестве первого параметра задается целочисленная переменная, имеющая нулевое значение, тем самым выбирается наилучший возможный графический режим.
  6. С помощью функций GetMaxX и GetMaxY определяются размеры экрана в пикселях.
  7. Принимается решение о размерах и положении графика на экране. Если планируется поместить один рисунок (график), то на поля по краям экрана можно оставить до 20% размера экрана. Таким образом, можно задать:

Jmin=(0..0.2)GetMaxX Jmax=(0.8..1.0)GetMaxX

Imin=(0.8..1.0)GetMaxY Imax=(0..0.2)GetMaxY

  1. Вычисляются коэффициенты перехода к экранным координатам. Из рис. 8 видно, что

Mx=(Jmax-Jmin)/(Xmax-Xmin); My=(Imax-Imin)/(Ymax-Ymin),

Отметим, что (My<0).

  1. Все дальнейшие построения на экране выполняются с использованием формул перехода от декартовых координат X и Y к экранным координатам J и I:

 
 

J=Jmin+(X-Xmin)*Mx, I=Imin+(Y-Ymin)*My

Xminm ( uest1,13,M) in
 
 

Ymax
Jmax
J
Ymin
Y
   
Imax
 
 

Используя приведенные формулы, рассчитывается положение осей координат на экране. Перед их построением задаются параметры линий процедурами SetColor и SetLineStyle (см. список процедур ниже).

  1. На координатных осях проводятся риски длиной 5–10 пикселей или строится координатная сетка (те же риски, но длиной от Imin до Imax и от Jminдо Jmax). Как и для осей, предварительно устанавливается стиль линий (линии более тонкие). Следует иметь ввиду, что строительство сетки или рисок необходимо выполнять от начала координат во всех четырех направлениях. Если начинать от края, риски, как правило, не пройдут через начало координат.
  2. После задания характеристик кривой графика, указатель переводится в начальную точку кривой (не обязательно совпадающей с Xmin,Ymin).
  3. В цикле по массиву точек (Xi,Yi) пересчитываются координаты (J,I) и проводятся отрезки процедурой LineTo.
  4. После настройки параметров надписи процедурами SetTextStyle и SetTextJustify, указатель переводится в точку, относительно которой ориентируется текст и процедурой OutTextXY выводится надпись.
  5. В конце программы, после всех задержек и, возможно, вывода графика на принтер, необходимо закрыть графический режим процедурой CloseGraph.

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

PROGRAM ...

USES Graph;

. . .

В данной работе рассмотрено два контрольных варианта – для функции (вариант №31) и параметрически заданной кривой (вариант №32).

– Конец работы –

Эта тема принадлежит разделу:

Информатика Лабораторный практикум По программированию На Турбо-Паскале

РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ ГИДРОМЕТЕОРОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ... В А БОЛЬШАКОВ Г И ВОРОНОВ Л А САВВАТЕЕВА...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Алгоритмы построения графиков на экране

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

На Турбо-Паскале
    Санкт-Петербург УДК 681.3.06

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

Общие пояснения
Данная работа, как и все последующие, предполагает написание программы на языке Паскаль. Поскольку это первая работа по составлению программы, ниже приводится общая структура и правила написания пр

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

Общие пояснения
    1.Алгори

Формирование таблицы идентификаторов
В задании упоминаются: двумерный массив вещественного типа, количество строк (М<=7), количество столбцов (N<=7), входной текстовый файл, номер столбца с мини

Алгоритм
Должен содержать следующие шаги: Открытие входного и выходного файлов. Текстовый входной файл связывается с набором данных с вещественными числами 'D:LAB1DATF.TXT' и

Текст программы.
PROGRAM SortNum; { Программа Лабораторной работы N 5 Вариант N 31. А.Я.Умненькая, ст. гр. Я-007 } VAR M,N,Jmin,i,j,i1,ki : integer; Amin,Pr : r

Содержимое файла результатов UMNIK5.RES
  Исходный массив из 7x7 элементов -2.20 -6.93 0.20 8.97 8.09 5.38 7.82 5.43 15.33 13.60 9.32 17.38 17.70 16.26 13.13 13.78 20.59 17.91 15.16 19.02 21.66

Вопросы, изучаемые в работе
· Изучение понятия рекуррентных соотношений. · Применение алгоритмов вычисления элементарных функций как сумм бесконечного числа слагаемых. · Продолжение изучения организации итер

Требования к программе
Программа должна содержать комментарий с указанием названия работы, № варианта, фамилии студента и № группы. Значения, отмеченные в таблице вариантов символом "*" в програм

Общие пояснения
Для приближенных вычислений значений некоторых функций используется метод представления этих функций в виде ряда бесконечного числа слагаемых. Если неизвестная функция разложена в ряд

Рассмотрение метода решения
Расчет суммы будем проводить по рекуррентной формуле: S=S+C, т.е. новое значение суммы S есть старое значение суммы S + очередное слагаемое

Алгоритм
Должен содержать следующие шаги: 1. Задание исходных данных в разделе констант (для A и B); 2. Ввод исходных данных (Dx и

Текст программы.
  program Tabl_Of_Fx; { Программа Лабораторной работы N 6 Вариант N 31. Использование рекуррентных формул в итеративных циклах. А.Я.Умненькая, ст.

Результаты расчета
Файл UMNIK6.RES будет в этом случае содержать: Исходные данные Интервал X: [-0.05 0.04], Шаг X:0.010, шагов: 9, точность: 1.0E-0006 Результаты р

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

Механизм параметров
В список параметров включаются исходные данные для работы процедуры/функции (входные параметры) и, если надо, указания, куда поместить результаты работы процедуры (выходные параметры). Сущ

Текст программы.
  PROGRAM KorrMas; { Лабораторная работа N 7 Вариант N 31 Обработка массива А.Я.Умненькая, ст. гр. Я-007 } TYPE Massiv = array[1..13,1..10

Вопросы, изучаемые в работе
Изучение строения и использование процедур, функций, раздела Graph, используемого при выводе на экран информации в графической форме. Работа с цветом. Прое

Графический режим экрана
Чтобы использовать графику в программах на Турбо-Паскале необходимо научиться планировать размещение на экране выводимой информации (т.е. разобраться в алгоритме вывода графических объектов на экра

Стандартный модуль работы с графическим экраном Graph
1) назначение модуля Подключаются процедуры и функции по работе с экраном в графическом режиме, т.е. когда доступной становится любая точка (пиксель) экрана. Для их использования необходим

Алгоритм
1.Задание констант, стандартных значений; 2.Ввод исходных данных; 3.Печать исходных данных; 4.Расчет характеристик функций; 5.Открытие графики с проверкой правил

Текст программы
Program Graph_work; { Программа Лабораторной работы N 8. Вариант N 31. Построение графика функции. А.Я.Умненькая, ст. гр. Я-007 } Uses Graph,Crt,Print;

Вопросы, изучаемые в работе
Разработка программы с динамическим выделением памяти. Работа с переменными комбинированного типа - записями. Работа с переменными ссылочного типа - указателями. Пр

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

Общие пояснения
Переменные, которые описываются в разделе описаний (VAR), называются статическими. Память для них выделяется перед началом выполнения программы, и во время выполнения программы не

Односвязные списки
Пример организации односвязного списка приведен ниже. Type Z=Record {комбинированный тип для данных} a: String; {строковое поле} b, c: Integer; {поле целых чисел

Двусвязные списки
В двусвязных списках базовый комбинированный тип S для указателей типа P будет иметь два адресных поля: поле ls ссылки на следующую запись списка

Нульсвязные списки
К таким спискам относятся стек, очередь и дек. В отличие от прочих типов списков, по которым можно перемещаться, используя находящиеся в звеньях указ

Описание файлов с данными
В данной работе предлагается использовать два типа файлов с исходными данными. Оба файла содержат одну и ту же информацию, но хранят ее в разной форме. Файл с именем Dan.dat предст

Алгоритм
Укрупненные шаги алгоритма основной программы приведены под заголовком "содержание программы" (при оформлении отчета, алгоритмы следует включить в блок-схему программы). Рассмотрим строен

Текст программы
Program Lab_9; { Программа Лабораторной работы N 9 Динамические переменные. Списки. Вариант N 31. А.Я.Умненькая, ст. гр. Я-007} TYPE data = record {опис

Главное меню
При входе в интегрированную среду системы программирования Турбо-Паскаль (для этого достаточно вызвать модуль turbo.exe), сразу становится доступным главное меню, которое расположено в самой верхне

Команды опции File.
Open: выбор и открытие файла с исходным текстом для редактирования. После активизации опции Open на экране появляется диалоговое окно, в котором находится список файлов те

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

Команды опции Search.
Команды этого режима предназначены для поиска любой последовательности символов в редактируемых текстах. Find – (поиск) – при выборе этой опции на экране появляется диалог

Команды опции Run.
Команды опции Run позволяют проводить компиляцию, компоновку и выполнение программы, а также осуществлять прогоны программы в различных отладочных режимах. Run – ко

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

Команды опции Debug.
В режиме Debug можно пользоваться большими возможностями отладчика, встроенного в среду программирования Турбо-Паскаль 6.0. К ним в первую очередь относятся средства работы с окнами наблюден

Команды опции Options.
Меню Options предназначено для управления режимами компиляции и компоновки программ, написанных на Турбо-Паскале, для определения параметров интегрированной среды и, в частности, встроенного

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

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

Меню окна редактирования
В состав этого меню входят четыре опции меню Edit – Cut, Copy, Paste и Clear; опция меню Help –Topic search; опция меню Run

Меню окна наблюдений
В состав этого меню входят шесть опций: Add, Modify, Remove, Clear all, Enable и Disable. Add служит для добавления выражения в окно наблюдений. Любое выражение, пр

Основные команды встроенного редактора текста
Таблица 35. Список горячих клавиш Горячая клавиша Функция Опция меню F1 Открытие окна с подсказками

Сообщения об ошибках на шаге выполнения
Сообщения об ошибках на шаге выполнения имеют следующий формат: Run-time error < номер > at < сегмент >:< смещенне >, где < номер > – номе

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги