Язык программирования MetaPost

Автор работы: Пользователь скрыл имя, 17 Сентября 2013 в 00:54, курсовая работа

Описание работы

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

Содержание работы

ВВЕДЕНИЕ …………………………………………………………………………..….5
1. ЯЗЫК ПРОГРАММИРОВАНИЯ METAPOST…………………………………...6
1.1 MetaPost- конвейер…………………………………………………..6
1.2 Язык META………………………………………………………………….8
1.3 Базовые команды для рисования………………………..…..10
1.4 Интеграция текста………………………………………………......14
1.5 Заливка и цвета……………………………………………………..…16
2. АВТОМАТІЗАЦІЯ В METAPOST………………………………………………….18
2.1 Объекты picture, трансформация……………………………18
2.2 Циклы и условные операторы…………………………..……..19
3. Управление выводом MetaPost…………………………………………21
3.1 Предварительный просмотр графики MetaPost………21
3.2 Использование графики MetaPost в TEX, LATEX....…….22
4. пРАКТИЧЕСКАЯ ЧАСТЬ………………………………………………………....24
5. зАКЛЮЧЕНИЕ……………………………………………………………………....26
6. СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ…

Файлы: 1 файл

Курсовая работа.docx

— 243.47 Кб (Скачать файл)

 

 

 

3.2 Использование  графики MetaPost в TEX, LATEX

То как рисунки MetaPost могут быть интегрированы с документами, подготовленными в TEXи родственных TEX программах, зависит от формата документов и драйвера вывода. Рис. 6 показывает процесс работы для plain TEX, LATEX и свободно доступной программы dvips. Схожая процедура работает с trof: процессор вывода grops включает рисунки на PostScript, когда они запрашиваются через команду trof  \X.


 

 

 

 

 

 

 

 

 

Рис.6 Диаграмма обработки для LATEX-документа с рисунками в MetaPost

 Пользователи TEX могут  импортировать графику, загрузив  сначала пакет  epsf через \input epsf и затем введя команду

\epsfЬох{(имя файла}}

для загрузки EPS-файла, например, \epsfbox{fig.1}.

Для документов LATEX процедура похожая: первый пакет graphicx должен быть загружен размещением \usepackage{graphicx} в преамбулу документа и затем EPS-файлы могут быть загружены через

\includegraphics{(имя файла}},

например, \includegraphics{fig.1}.

Как видно на рис. 6 графические файлы никогда не включаются при исполнении ТЕХ или LATEХ. Вместо этого ТЕХ и LATEX только читают информацию об охватывающих рамках из PostScript-файла, резервируя столько места на странице, сколько занимает графика и записывая ссылку на соответствующий файл в dvi-выводе. Графический файл включается только при последующем исполнении драйвера вывода, который может обрабатывать PostScript-файлы, например, dvips.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4 ПРАКТИЧЕСКАЯ ЧАСТЬ

Рассмотрим несколько  примеров создания картинок с использованием прямых и кривых линий.

Создадим текстовый файл conv.mp со следующим содержимым:

% Для просмотра

prologues:=1;

%  Нарисуем простой  конверт

beginfig(1);

% Объявляем переменные

 pair A, B, C, D;

% Указываем координаты  точек

  A:=(0, 0);

  B:=(3cm, 0);

  C:=( 3cm,  6cm);

  D:=(0,  6cm);

% Соединяем точки линиями

  draw A--B--C--D--cycle;

  draw A--C;

  draw B--D;

endfig;

% Объявляем конец обработки

end.

Далее скомпилируем этот код и результат преобразуем в pdf:

> mpost conv.mp 

В результате полум файл с именем: conv.1

> pstopdf conv.1

В результате получим рисунок конверта со сторонами 3 и 6 см. (Рис.7)


 

 

 

 

Рис.7

По анологии с предыдущим примером четере точки А,В,С,D соединим кривой линией и получим окружность (файл circle.mp). (Рис.8)

 

prologues:=2;


beginfig(2)

  pair A, B, C, D;

  A:=(0,0); B:=(3cm,0);

  C:=(3cm,3cm); D:=(0,3cm);

  draw A..B..C..D..cycle;

endfig;

end.

  Рис.8

Тот же результат можно  получить другим способом (файл cir.mp):

beginfig(3)

  draw (0,0) .. (3cm,3cm) .. cycle;

endfig;

end.

 

Нарисуем несколько скрещивающихся колец со смещением (файл ring.mp). (Рис.9)

prologues:=4;

beginfig (4)

  path p;


   p := fullcircle scaled 5mm;

   draw p;

   draw p shifted  (1mm,2mm);

   draw p shifted 2(1mm,2mm);

   draw p shifted 3(1mm,2mm);

   draw p shifted 4(1mm,2mm);

   draw p shifted 5(1mm,2mm);

endfig;

end.         Рис.9

 

 

 

 

 

 

 

 

 

5 ЗАКЛЮЧЕНИЕ

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6. СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. John D. Hobby  и команда разработки MetaPost. METAPOST. Руководство пользователя. Версия документа: 1.004 ;

2. Е.М.Балдин. Создание иллюстраций в MetaPost. (Версия 1.01);

3. Сайт  http://ru.wikipedia.org/wiki/MetaPost;

4. Сайт  http://ru-metapost.livejournal.com;

5. Сайт  http://zoonek.free.fr/LaTeX/Metapost/metapost.html.

 


Информация о работе Язык программирования MetaPost