summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/lshort-russian/src/graphic.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/lshort-russian/src/graphic.tex')
-rw-r--r--Master/texmf-dist/doc/latex/lshort-russian/src/graphic.tex654
1 files changed, 654 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/lshort-russian/src/graphic.tex b/Master/texmf-dist/doc/latex/lshort-russian/src/graphic.tex
new file mode 100644
index 00000000000..41cfa3ba205
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/lshort-russian/src/graphic.tex
@@ -0,0 +1,654 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\setcounter{chapter}{4}
+\newcommand{\graphicscompanion}{\emph{The \LaTeX{} Graphics Companion}~\cite{graphicscompanion}}
+\newcommand{\hobby}{\emph{Руководство пользователя MetaPost}~\cite{metapost}}
+\newcommand{\hoenig}{\emph{\TeX{} Unbound}~\cite{unbound}}
+\newcommand{\graphicsinlatex}{\emph{Графика в \LaTeXe{}}~\cite{ursoswald}}
+
+\chapter{Генерация математической графики}
+
+\begin{intro}
+Большинство людей пользуются \LaTeX\ для верстки текста. Но \LaTeX{} также
+предлагает, хотя и ограниченную, возможность генерации графики по
+текстовому описанию. Более того, существует множество расширений \LaTeX{},
+обходящих эти ограничния. Эта глава расскажет о нескольких из них.
+\end{intro}
+
+\section{Обзор}
+
+Окружение \ei{picture} позволяет программировать картинки прямо в
+среде \LaTeX. Подробное описание приводится в \manual. С одной
+стороны, при этом есть довольно серьезные ограничения, поскольку как
+наклоны отрезков, так и радиусы дуг сильно ограничены в возможных
+значениях. С другой стороны, в окружении \ei{picture} существуюет
+команда \ci{qbezier}, где <<\texttt{q}>> означает
+<<квадратичный>>. Множество часто используемых кривых, таких как
+окружности, эллипсы или цепные линии, можно удовлетворительно
+аппроксимировать квадратичными кривыми Безье, хотя для этого и
+требуются некоторые математические усилия. Кроме того, когда блоки
+команд \ci{qbezier} генерируются из языка программирования, скажем,
+Java, окружение \ei{picture} становится довольно мощным.
+
+Хотя программирование картинок прямо из \LaTeX{} серьезно ограничено и
+часто довольно утомительно, оно все же бывает полезным. Полученные
+таким образом документы получаются компактными, и нет необходимости
+прилагать к документу графические файлы.
+
+Пакеты наподобие \pai{epic} и \pai{eepic} (описанные, например, в
+\companion) или \pai{pstricks} помогают снять ограничения
+оригинального окружения \ei{picture} и сильно развивают графические
+возможности \LaTeX{}.
+
+Тогда как первые два пакета просто улучшают окружение \ei{picture},
+пакет \pai{pstricks} имеет собственное окружение для рисования,
+\ei{pspicture}. Возможности \pai{pstricks} проистекают их того, что он
+широко использует функциональность \PSi{}. Кроме этого пакета,
+существует и множество других, написанных для конкретных задач. Одним
+из них является пакет \texorpdfstring{\Xy}{Xy}-pic, описанный в конце
+этой главы. Множество таких пакетов детально описано в
+\graphicscompanion{} (не путать с \companion).
+
+Возможно, самым мощным графическим инструментом, связанным с \LaTeX{},
+является \MP, программа-близнец написанной Donald E. Knuth программы
+\texttt{METAFONT}. \MP{} использует очень мощный и математически
+изощренный язык \texttt{METAFONT}. В отличие же от \texttt{METAFONT},
+генерирующего растры, \MP{} генерирует файлы \EPSi{}, которые можно
+импортировать в \LaTeX{}. Далее смотрите \hobby, или введение в
+\cite{ursoswald}.
+
+Очень подробно работа с графикой (и шрифтами) в \LaTeX{} и \TeX{}
+описана в \hoenig.
+
+\section{Окружение \texttt{picture}}
+\secby{Urs Oswald}{osurs@bluewin.ch}
+
+\subsection{Основные команды}
+
+Окружение \ei{picture} создается одной из двух команд:
+\begin{lscommand}
+\ci{begin}\verb|{picture}(|$x,y$\verb|)|\ldots\ci{end}\verb|{picture}|
+\end{lscommand}
+\noindent либо
+\begin{lscommand}
+\ci{begin}\verb|{picture}(|$x,y$\verb|)(|$x_0,y_0$\verb|)|\ldots\ci{end}\verb|{picture}|
+\end{lscommand}
+
+Числа $x,\,y,\,x_0,\,y_0$ измеряются в размерности \ci{unitlength},
+которую можно менять в любой момент (но не внутри окружения
+\ei{picture}) командами наподобие
+\begin{lscommand}
+\ci{setlength}\verb|{|\ci{unitlength}\verb|}{1.2cm}|
+\end{lscommand}
+
+Значение \ci{unitlength} по умолчанию составляет 1pt. Первая пара,
+$(x,y)$, диктует резервирование для картинки прямоугольного
+пространства внутри документа. Необязательная вторая пара,
+$(x_0,y_0)$, присваивает произвольные координаты нижнему левому углу
+зарезервированного прямоугольника.
+
+Большинство команд рисования имеют одну из двух форм:
+\begin{lscommand}
+\ci{put}\verb|(|$x,y$\verb|){|\emph{объект}\verb|}|
+\end{lscommand}
+\noindent или
+\begin{lscommand}
+\ci{multiput}\verb|(|$x,y$\verb|)(|$\Delta x,\Delta y$\verb|){|$n$\verb|}{|\emph{объект}\verb|}|\end{lscommand}
+
+Кривые Безье являются исключением. Их рисуют командой
+\begin{lscommand}
+\ci{qbezier}\verb|(|$x_1,y_1$\verb|)(|$x_2,y_2$\verb|)(|$x_3,y_3$\verb|)|
+\end{lscommand}
+
+\subsection{Отрезки}
+
+\begin{example}
+\setlength{\unitlength}{5cm}
+\begin{picture}(1,1)
+ \put(0,0){\line(0,1){1}}
+ \put(0,0){\line(1,0){1}}
+ \put(0,0){\line(1,1){1}}
+ \put(0,0){\line(1,2){.5}}
+ \put(0,0){\line(1,3){.3333}}
+ \put(0,0){\line(1,4){.25}}
+ \put(0,0){\line(1,5){.2}}
+ \put(0,0){\line(1,6){.1667}}
+ \put(0,0){\line(2,1){1}}
+ \put(0,0){\line(2,3){.6667}}
+ \put(0,0){\line(2,5){.4}}
+ \put(0,0){\line(3,1){1}}
+ \put(0,0){\line(3,2){1}}
+ \put(0,0){\line(3,4){.75}}
+ \put(0,0){\line(3,5){.6}}
+ \put(0,0){\line(4,1){1}}
+ \put(0,0){\line(4,3){1}}
+ \put(0,0){\line(4,5){.8}}
+ \put(0,0){\line(5,1){1}}
+ \put(0,0){\line(5,2){1}}
+ \put(0,0){\line(5,3){1}}
+ \put(0,0){\line(5,4){1}}
+ \put(0,0){\line(5,6){.8333}}
+ \put(0,0){\line(6,1){1}}
+ \put(0,0){\line(6,5){1}}
+\end{picture}
+\end{example}
+Отрезки рисуются командой
+\begin{lscommand}
+\ci{put}\verb|(|$x,y$\verb|){|\ci{line}\verb|(|$x_1,y_1$\verb|){|$length$\verb|}}|
+\end{lscommand}
+Команда \ci{line} имеет два аргумента:
+\begin{enumerate}
+ \item вектор направления,
+ \item длина.
+\end{enumerate}
+Компоненты вектора ограничены в своем значении набором целых чисел
+\[
+ -6,\,-5\,\ldots,\,5,\,6,
+\]
+и они обязаны быть взаимно простыми (не иметь общего делителя, кроме
+1). Иллюстрация показывает все 25 возможных значений наклона в первом
+квадранте. Длина выражается в единицах \ci{unitlength}. Аргумент длины
+задает вертикальную координату в случае вертикального отрезка и
+горизонтальную~--- во всех остальных случаях.
+
+\subsection{Векторы}
+
+\begin{example}
+\setlength{\unitlength}{1mm}
+\begin{picture}(60,40)
+ \put(30,20){\vector(1,0){30}}
+ \put(30,20){\vector(4,1){20}}
+ \put(30,20){\vector(3,1){25}}
+ \put(30,20){\vector(2,1){30}}
+ \put(30,20){\vector(1,2){10}}
+ \thicklines
+ \put(30,20){\vector(-4,1){30}}
+ \put(30,20){\vector(-1,4){5}}
+ \thinlines
+ \put(30,20){\vector(-1,-1){5}}
+ \put(30,20){\vector(-1,-4){5}}
+\end{picture}
+\end{example}
+Векторы рисуются командой
+\begin{lscommand}
+\ci{put}\verb|(|$x,y$\verb|){|\ci{vector}\verb|(|$x_1,y_1$\verb|){|$length$\verb|}}|
+\end{lscommand}
+Для векторов значения вектора направления еще более ограничены в
+значениях, чем для отрезков, а именно~--- числами
+\[
+ -4,\,-3,\,\ldots,\,3,\,4.
+\]
+Компоненты также обязаны быть взаимно простыми (не иметь общего
+делителя, кроме 1). Заметьте эффект команды \ci{thicklines} на двух
+векторах, указывающих в верхний левый угол.
+
+\subsection{Окружности}
+
+\begin{example}
+\setlength{\unitlength}{1mm}
+\begin{picture}(60, 40)
+ \put(20,30){\circle{1}}
+ \put(20,30){\circle{2}}
+ \put(20,30){\circle{4}}
+ \put(20,30){\circle{8}}
+ \put(20,30){\circle{16}}
+ \put(20,30){\circle{32}}
+
+ \put(40,30){\circle{1}}
+ \put(40,30){\circle{2}}
+ \put(40,30){\circle{3}}
+ \put(40,30){\circle{4}}
+ \put(40,30){\circle{5}}
+ \put(40,30){\circle{6}}
+ \put(40,30){\circle{7}}
+ \put(40,30){\circle{8}}
+ \put(40,30){\circle{9}}
+ \put(40,30){\circle{10}}
+ \put(40,30){\circle{11}}
+ \put(40,30){\circle{12}}
+ \put(40,30){\circle{13}}
+ \put(40,30){\circle{14}}
+
+ \put(15,10){\circle*{1}}
+ \put(20,10){\circle*{2}}
+ \put(25,10){\circle*{3}}
+ \put(30,10){\circle*{4}}
+ \put(35,10){\circle*{5}}
+\end{picture}
+\end{example}
+Команда
+\begin{lscommand}
+ \ci{put}\verb|(|$x,y$\verb|){|\ci{circle}\verb|{|\emph{диаметр}\verb|}}|
+\end{lscommand}
+\noindent рисует окружность с центром в точке $(x,y)$ и диаметром (не
+радиусом!) \emph{диаметр}. Окружение \ei{picture} позволяет рисовать
+окружности диаметром не более примерно 14\,мм, и даже в этих пределах
+допустимы не все диаметры. Команда \ci{circle*} рисует круг
+(заполненную окружность).
+
+Как и в случае отрезков, вы можете прибегать к помощи дополнительных
+пакетов, таких, как \pai{eepic} или \pai{pstricks}.
+Подробное описание этих пакетов приведено в \graphicscompanion.
+
+Существует также и выход в рамках окружения \ei{picture}. Если вы не
+боитесь выполнения необходимых вычислений (или возлагаете их на
+программу), то можно изображать произвольные окружности и эллипсы при
+помощи кривых Безье. Примеры и исходные тексты на Java приведены в
+\graphicsinlatex.
+
+\subsection{Текст и формулы}
+
+\begin{example}
+\setlength{\unitlength}{1cm}
+\begin{picture}(6,5)
+ \thicklines
+ \put(1,0.5){\line(2,1){3}}
+ \put(4,2){\line(-2,1){2}}
+ \put(2,3){\line(-2,-5){1}}
+ \put(0.7,0.3){$A$}
+ \put(4.05,1.9){$B$}
+ \put(1.7,2.95){$C$}
+ \put(3.1,2.5){$a$}
+ \put(1.3,1.7){$b$}
+ \put(2.5,1.05){$c$}
+ \put(0.3,4){$F=
+ \sqrt{s(s-a)(s-b)(s-c)}$}
+ \put(3.5,0.4){$\displaystyle
+ s:=\frac{a+b+c}{2}$}
+\end{picture}
+\end{example}
+Как показывает этот пример, текст и формулы могут размещаться в
+окружении \ei{picture} обычным способом~--- командой \ci{put}.
+
+\subsection{Команды \ci{multiput} и \ci{linethickness}}
+
+\begin{example}
+\setlength{\unitlength}{2mm}
+\begin{picture}(30,20)
+ \linethickness{0.075mm}
+ \multiput(0,0)(1,0){31}%
+ {\line(0,1){20}}
+ \multiput(0,0)(0,1){21}%
+ {\line(1,0){30}}
+ \linethickness{0.15mm}
+ \multiput(0,0)(5,0){7}%
+ {\line(0,1){20}}
+ \multiput(0,0)(0,5){5}%
+ {\line(1,0){30}}
+ \linethickness{0.3mm}
+ \multiput(5,0)(10,0){3}%
+ {\line(0,1){20}}
+ \multiput(0,5)(0,10){2}%
+ {\line(1,0){30}}
+\end{picture}
+\end{example}
+Команда
+\begin{lscommand}
+ \ci{multiput}\verb|(|$x,y$\verb|)(|$\Delta x,\Delta y$\verb|){|$n$\verb|}{|\emph{объект}\verb|}|
+\end{lscommand}
+\noindent имеет 4 аргумента: начальная точка, вектор перехода от
+одного объекта к следующему, число объектов и собственно объект для
+рисования. Команда \ci{linethickness} относится к горизонтальным и
+вертикальным отрезкам, но никогда~--- к наклонным или
+окружностям. Она, однако относится также и к квадратичным кривым
+Безье!
+
+\subsection{Овалы. Команды \ci{thinlines} и \ci{thicklines}}
+
+\begin{example}
+\setlength{\unitlength}{1cm}
+\begin{picture}(6,4)
+ \linethickness{0.075mm}
+ \multiput(0,0)(1,0){7}%
+ {\line(0,1){4}}
+ \multiput(0,0)(0,1){5}%
+ {\line(1,0){6}}
+ \thicklines
+ \put(2,3){\oval(3,1.8)}
+ \thinlines
+ \put(3,2){\oval(3,1.8)}
+ \thicklines
+ \put(2,1){\oval(3,1.8)[tl]}
+ \put(4,1){\oval(3,1.8)[b]}
+ \put(4,3){\oval(3,1.8)[r]}
+ \put(3,1.5){\oval(1.8,0.4)}
+\end{picture}
+\end{example}
+Команда
+\begin{lscommand}
+ \ci{put}\verb|(|$x,y$\verb|){|\ci{oval}\verb|(|$w,h$\verb|)}|
+\end{lscommand}
+\noindent или
+\begin{lscommand}
+ \ci{put}\verb|(|$x,y$\verb|){|\ci{oval}\verb|(|$w,h$\verb|)[|\emph{позиция}\verb|]}|
+\end{lscommand}
+\noindent выводит овал с центром в $(x,y)$, имеющий длину $w$ и высоту
+$h$. Необязательный аргумент \emph{позиция} может принимать значения
+\texttt{b}, \texttt{t}, \texttt{l} и \texttt{r} (вниз/вверх/влево/вправо)
+и может сочетать эти значения, как на приведенном примере.
+
+Толщина линий может управляться одной из двух команд:\\
+\ci{linethickness}\verb|{|\emph{длина}\verb|}|
+с одной стороны, и \ci{thinlines} и \ci{thicklines}~--- с другой. В то
+время, как \ci{linethickness}\verb|{|\emph{длина}\verb|}| влияет
+только на горизонтальные и вертикальные линии (и квадратичные кривые
+Безье), \ci{thinlines} и \ci{thicklines} влияет на наклонные отрезки,
+окружности и овалы.
+
+\subsection{Повторное использование блоков картинки}
+
+\begin{example}
+\setlength{\unitlength}{0.5mm}
+\begin{picture}(120,168)
+\newsavebox{\foldera}% объявление
+\savebox{\foldera}
+ (40,32)[bl]{% определение
+ \multiput(0,0)(0,28){2}
+ {\line(1,0){40}}
+ \multiput(0,0)(40,0){2}
+ {\line(0,1){28}}
+ \put(1,28){\oval(2,2)[tl]}
+ \put(1,29){\line(1,0){5}}
+ \put(9,29){\oval(6,6)[tl]}
+ \put(9,32){\line(1,0){8}}
+ \put(17,29){\oval(6,6)[tr]}
+ \put(20,29){\line(1,0){19}}
+ \put(39,28){\oval(2,2)[tr]}
+}
+\newsavebox{\folderb}% объявление
+\savebox{\folderb}
+ (40,32)[l]{% определение
+ \put(0,14){\line(1,0){8}}
+ \put(8,0){\usebox{\foldera}}
+}
+\put(34,26){\line(0,1){102}}
+\put(14,128){\usebox{\foldera}}
+\multiput(34,86)(0,-37){3}
+ {\usebox{\folderb}}
+\end{picture}
+\end{example}
+Блок рисунка может быть \emph{объявлен} командой
+\begin{lscommand}
+ \ci{newsavebox}\verb|{|\emph{название}\verb|}|
+\end{lscommand}
+\noindent а затем \emph{определен} командой
+\begin{lscommand}
+ \ci{savebox}\verb|{|\emph{название}\verb|}(|\emph{ширина,высота}\verb|)[|\emph{позиция}\verb|]{|\emph{содержание}\verb|}|
+\end{lscommand}
+\noindent и, наконец, сколько угодно раз \emph{нарисован} командой
+\begin{lscommand}
+ \ci{put}\verb|(|$x,y$\verb|)|\ci{usebox}\verb|{|\emph{название}\verb|}|
+\end{lscommand}
+
+Необязательный аргумент \emph{позиция} определяет точку привязки
+блока. В приведенном примере он установлен в значение \texttt{bl}, что
+помещает точку привязки в нижний левый угол блока. Другие варианты
+значения~--- \texttt{t} (вверх) и \texttt{r} (вправо).
+
+Аргумент \emph{название} фактически является командой \LaTeX{} (отсюда
+и обратная косая черта перед ним в рассматриваемом примере). Блоки
+могут быть вложенными: в этом примере внутри определения \ci{folderb}
+используется \ci{foldera}.
+
+Команду \ci{oval} пришлось применить потому что команда \ci{line} не
+работает, если длина отрезка меньше примерно 3\,мм.
+
+\subsection{Квадратичные кривые Безье}
+
+\begin{example}
+\setlength{\unitlength}{1cm}
+\begin{picture}(6,4)
+ \linethickness{0.075mm}
+ \multiput(0,0)(1,0){7}
+ {\line(0,1){4}}
+ \multiput(0,0)(0,1){5}
+ {\line(1,0){6}}
+ \thicklines
+ \put(0.5,0.5){\line(1,5){0.5}}
+ \put(1,3){\line(4,1){2}}
+ \qbezier(0.5,0.5)(1,3)(3,3.5)
+ \thinlines
+ \put(2.5,2){\line(2,-1){3}}
+ \put(5.5,0.5){\line(-1,5){0.5}}
+ \linethickness{1mm}
+ \qbezier(2.5,2)(5.5,0.5)(5,3)
+ \thinlines
+ \qbezier(4,2)(4,3)(3,3)
+ \qbezier(3,3)(2,3)(2,2)
+ \qbezier(2,2)(2,1)(3,1)
+ \qbezier(3,1)(4,1)(4,2)
+\end{picture}
+\end{example}
+Как показывает этот пример, разбиение окружности на четыре квадратичных
+кривых Безье дает неудовлетворительный результат. Требуется как
+минимум восемь. Иллюстрация снова показывает влияние команды
+\ci{linethickness} на горизонтальные и вертикальные линии, а команд
+\ci{thinlines} и \ci{thicklines}~--- на наклонные отрезки. Она также
+показывает, что обе команды влияют на квадратичные кривые Безье, и
+каждая следующая команда отменяет результаты предыдущих.
+
+Пусть $P_1=(x_1,\,y_1),\,P_2=(x_2,\,y_2)$ задают конечные точки, а
+$m_1,\,m_2$~--- соответствующие наклоны % касательные?
+квадратичной кривой Безье. Тогда промежуточная управляющая точка
+$S=(x,\,y)$ задается уравнением
+\begin{equation} \label{zwischenpunkt}
+ \left\{
+ \begin{array}{rcl}
+ x & = & \displaystyle \frac{m_2 x_2-m_1x_1-(y_2-y_1}{m_2-m_1}, \\
+ y & = & y_i+m_i(x-x_i)\qquad (i=1,\,2).
+ \end{array}
+ \right.
+\end{equation}
+\noindent В \graphicsinlatex\ приведена Java-программа, генирующая
+ необходимые команды \ci{qbezier}.
+
+\subsection{Цепная линия}
+
+\begin{example}
+\setlength{\unitlength}{1.3cm}
+\begin{picture}(4.3,3.6)(-2.5,-0.25)
+ \put(-2,0){\vector(1,0){4.4}}
+ \put(2.45,-.05){$x$}
+ \put(0,0){\vector(0,1){3.2}}
+ \put(0,3.35){\makebox(0,0){$y$}}
+ \qbezier(0.0,0.0)(1.2384,0.0)
+ (2.0,2.7622)
+ \qbezier(0.0,0.0)(-1.2384,0.0)
+ (-2.0,2.7622)
+ \linethickness{.075mm}
+ \multiput(-2,0)(1,0){5}
+ {\line(0,1){3}}
+ \multiput(-2,0)(0,1){4}
+ {\line(1,0){4}}
+ \linethickness{.2mm}
+ \put( .3,.12763){\line(1,0){.4}}
+ \put(.5,-.07237){\line(0,1){.4}}
+ \put(-.7,.12763){\line(1,0){.4}}
+ \put(-.5,-.07237){\line(0,1){.4}}
+ \put(.8,.54308){\line(1,0){.4}}
+ \put(1,.34308){\line(0,1){.4}}
+ \put(-1.2,.54308){\line(1,0){.4}}
+ \put(-1,.34308){\line(0,1){.4}}
+ \put(1.3,1.35241){\line(1,0){.4}}
+ \put(1.5,1.15241){\line(0,1){.4}}
+ \put(-1.7,1.35241){\line(1,0){.4}}
+ \put(-1.5,1.15241){\line(0,1){.4}}
+ \put(-2.5,-0.25){\circle*{0.2}}
+\end{picture}
+\end{example}
+
+На этой иллюстрации каждая симметричная половина цепной линии $y=\cosh
+x -1$ аппроксимирована квадратичной кривой Безье. Правая половина
+кривой заканчивается в точке \((2,\,2.7622)\), наклон в которой имеет
+значение \(m=3.6269\). Вновь используя уравнение
+(\ref{zwischenpunkt}), мы можем вычислить внутренние управляющие
+точки. Ими оказались $(1.2384,\,0)$ и $(-1.2384,\,0)$. Крестики
+отмечают точки \emph{настоящей} цепной линии. Ошибка едва заметна,
+будучи меньше одного процента.
+
+Этот пример показывает использование необязательного аргумента команды
+\verb|\begin{picture}|. Картинка определена в удобных
+<<математических>> координатах, тогда как команда
+\begin{lscommand}
+ \ci{begin}\verb|{picture}(4.3,3.6)(-2.5,-0.25)|
+\end{lscommand}
+\noindent присваивает ее нижнему левому углу (отмеченному черным
+кружком) координаты $(-2.5,-0.25)$.
+
+\subsection{Скорость в специальной теории относительности}
+
+\begin{example}
+\setlength{\unitlength}{1cm}
+\begin{picture}(6,4)(-3,-2)
+ \put(-2.5,0){\vector(1,0){5}}
+ \put(2.7,-0.1){$\chi$}
+ \put(0,-1.5){\vector(0,1){3}}
+ \multiput(-2.5,1)(0.4,0){13}
+ {\line(1,0){0.2}}
+ \multiput(-2.5,-1)(0.4,0){13}
+ {\line(1,0){0.2}}
+ \put(0.2,1.4)
+ {$\beta=v/c=\tanh\chi$}
+ \qbezier(0,0)(0.8853,0.8853)
+ (2,0.9640)
+ \qbezier(0,0)(-0.8853,-0.8853)
+ (-2,-0.9640)
+ \put(-3,-2){\circle*{0.2}}
+\end{picture}
+\end{example}
+
+Управляющие точки двух кривых Безье были вычислены по формулам
+(\ref{zwischenpunkt}). Положительная ветка определяется
+$P_1=(0,\,0),\,m_1=1$ и $P_2=(2,\,\tanh 2),\,m_2=1/\cosh^2
+2$. Картинка вновь определяется в математически удобных координатах, а
+нижний левый угол получает математические координаты $(-3,-2)$ (черный
+кружок).
+
+\section{\texorpdfstring{\Xy}{Xy}-pic}
+\secby{Alberto Manuel Brand\~ao Sim\~oes}{albie@alfarrabio.di.uminho.pt}
+\pai{xy}~--- это специальный пакет для рисования диаграмм. Для его
+использования просто добавьте к преамбуле документа следующую строчку:
+\begin{lscommand}
+\verb|\usepackage[|\emph{опции}\verb|]{xy}|
+\end{lscommand}
+\noindent где \emph{опции}~--- список загружаемых функций \Xy-pic. Эти
+опции полезны, в первую очередь, для отладки пакета. Рекомендуется
+использовать опцию \verb!all!, инструктируя \LaTeX{} загрузить все
+команды \Xy{}.
+
+Диаграммы \Xy-pic рисуются в матричной канве, где каждый элемент
+диаграммы помещается в определенную клетку матрицы:
+\begin{example}
+\begin{displaymath}
+\xymatrix{A & B \\
+ C & D }
+\end{displaymath}
+\end{example}
+Команда \ci{xymatrix} должна использоваться в математическом
+режиме. Здесь мы задали две строки и два столбца. Чтобы из этой
+матрицы сделать диаграмму, добавим стрелки векторов командой \ci{ar}.
+\begin{example}
+\begin{displaymath}
+\xymatrix{ A \ar[r] & B \ar[d] \\
+ D \ar[u] & C \ar[l] }
+\end{displaymath}
+\end{example}
+Команда рисования вектора помещается в клетку, откуда исходит
+вектор. Аргументом является направление, куда показывает вектор
+(\texttt{u}p, \texttt{d}own, \texttt{r}ight и \texttt{l}eft).
+\begin{example}
+\begin{displaymath}
+\xymatrix{
+ A \ar[d] \ar[dr] \ar[r] & B \\
+ D & C }
+\end{displaymath}
+\end{example}
+Для рисования диагоналей укажите больше одного направления. Вы также
+можете повторять знак направления для рисования б\'ольших векторов.
+\begin{example}
+\begin{displaymath}
+\xymatrix{
+ A \ar[d] \ar[dr] \ar[drr] & & \\
+ B & C & D }
+\end{displaymath}
+\end{example}
+
+Можно рисовать еще более интересные диаграммы, добавляя к векторам
+метки. Для этого используются обычные операторы нижних и верхних
+индексов.
+\begin{example}
+\begin{displaymath}
+\xymatrix{
+ A \ar[r]^f \ar[d]_g &
+ B \ar[d]^{g'} \\
+ D \ar[r]_{f'} & C }
+\end{displaymath}
+\end{example}
+
+Как показано выше, эти операторы используются как в математическом
+режиме. Единственная разница заключается в том, что верхний индекс
+означает <<над стрелкой вектора>>, а нижний~--- <<под стрелкой>>.
+Есть еще третий оператор, вертикальная черта: \verb+|+. Он помещает
+текст \emph{в} стрелку.
+\begin{example}
+\begin{displaymath}
+\xymatrix{
+ A \ar[r]|f \ar[d]|g &
+ B \ar[d]|{g'} \\
+ D \ar[r]|{f'} & C }
+\end{displaymath}
+\end{example}
+
+Чтобы нарисовать стрелку с пробелом в ней, пользуйтесь командой
+\verb!\ar[...]|\hole!. В некоторых случаях важно различать несколько
+видов стрелок. Этого можно добиться, помещая на них метки или меняя их
+вид:
+\begin{example}
+\shorthandoff{"}
+\begin{displaymath}
+\xymatrix{
+ \bullet\ar@{->}[rr] && \bullet\\
+ \bullet\ar@{.<}[rr] && \bullet\\
+ \bullet\ar@{~)}[rr] && \bullet\\
+ \bullet\ar@{=(}[rr] && \bullet\\
+ \bullet\ar@{~/}[rr] && \bullet\\
+ \bullet\ar@{^{(}->}[rr] && \bullet\\
+ \bullet\ar@2{->}[rr] && \bullet\\
+ \bullet\ar@3{->}[rr] && \bullet\\
+ \bullet\ar@{=+}[rr] && \bullet
+}
+\end{displaymath}
+\shorthandon{"}
+\end{example}
+
+Отметьте разницу между следующими двумя диаграммами:
+\begin{example}
+\begin{displaymath}
+\xymatrix{
+ \bullet \ar[r]
+ \ar@{.>}[r] &
+ \bullet
+}
+\end{displaymath}
+\end{example}
+
+\begin{example}
+\begin{displaymath}
+\xymatrix{
+ \bullet \ar@/^/[r]
+ \ar@/_/@{.>}[r] &
+ \bullet
+}
+\end{displaymath}
+\end{example}
+
+Модификаторы между косыми чертами определяют, как будут рисоваться
+кривые. \Xy-pic предлагает множество способов изменить способ
+рисования кривых; подробности смотрите в документации на \Xy-pic.
+
+% \begin{example}
+% \begin{lscommand}
+% \ci{dum}
+% \end{lscommand}
+% \end{example}
+