summaryrefslogtreecommitdiff
path: root/info/lshort/polish/src/graphic.tex
diff options
context:
space:
mode:
Diffstat (limited to 'info/lshort/polish/src/graphic.tex')
-rw-r--r--info/lshort/polish/src/graphic.tex716
1 files changed, 0 insertions, 716 deletions
diff --git a/info/lshort/polish/src/graphic.tex b/info/lshort/polish/src/graphic.tex
deleted file mode 100644
index a5f21f1a6a..0000000000
--- a/info/lshort/polish/src/graphic.tex
+++ /dev/null
@@ -1,716 +0,0 @@
-% -- translate-file=il2-pl --
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%\setcounter{chapter}{4}
-
-\chapter{Tworzenie grafiki matematycznej}
-\label{chap:graphics}
-
-\begin{intro}
- Większość ludzi używa {\LaTeX}a do składania tekstów. Ponieważ jednak
- podejście strukturalno-logiczne do tworzenia dokumentów jest tak
- wygodne, {\LaTeX} oferuje pewną -- fakt, że obarczoną ograniczeniami
- -- możliwość generowania grafiki z~opisów tekstowych w~pliku
- źródłowym. Co więcej, powstało sporo rozszerzeń {\LaTeX}a
- przełamujących wspomniane ograniczenia. W~tym rozdziale dowiesz się
- o~kilku z~tych rozszerzeń.
-\end{intro}
-
-\section{Przegląd}
-
-Otoczenie \ei{picture} pozwala programować rysunki bezpośrednio
-w~{\LaTeX}u. Szczegółowy jego opis można znaleźć w~\manual. Metoda ta ma
-jednak ograniczenia, które wynikają z~tego, że zarówno nachylenia odcinków,
-jak i~średnice okręgów można wybierać jedynie spośród niewielkiej
-liczby wartości. Z~drugiej strony w~wersji \LaTeXe{} można w~otoczeniu
-\ei{picture} używać polecenia \ci{qbezier}, gdzie ,,\texttt{q}'' oznacza
-drugiego stopnia \przypang{quadratic}. Wiele często używanych krzywych,
-jak: okręgi, elipsy albo krzywe łańcuchowe można -- niekiedy z~odrobiną
-wysiłku matematycznego -- zadowalająco przybliżać krzywymi
-B\'eziera\footnote{W~ciekawym artykule \cite{jacko-bezier}
- B.L.~Jackowski\index{Jackowski Bogusław} zwraca uwagę, że krzywe
- B\'eziera są krzywymi giętymi stopnia trzeciego, nie zaś -- jak
- sugeruje nazewnictwo {\LaTeX}owe -- stopnia drugiego.}. Jeśli na
-dodatek do generowania {\LaTeX}owych bloków \ci{qbezier} użyje się języka
-programowania, na przykład Javy, to otoczenie \ei{picture} ujawni
-całkiem pokaźną moc.
-
-Chociaż programowanie rysunków w~{\LaTeX}u wiąże się z~ograniczeniami
-i~jest niekiedy nużące, to jednak są powody, by z~tej możliwości
-korzystać. Dokumenty wytworzone w~ten sposób są ,,małe'' -- w~sensie
-liczby bajtów zajmowanych przez wynikowe pliki \acro{PDF}
-lub \acro{DVI} -- a~na
-dodatek nie trzeba do nich wczytywać dodatkowych plików graficznych.
-
-Pakiety takie jak: \pai{epic} i \pai{eepic} (opisane na przykład
-w~\companion) bądź \pai{pstricks} pomagają pokonywać ograniczenia
-krępujące oryginalne otoczenie \ei{picture} i~znacznie rozszerzają
-graficzną moc {\LaTeX}a.
-
-O~ile pierwsze dwa z~tych pakietów jedynie rozszerzają otoczenie
-\ei{picture}, to pakiet \pai{pstricks} zawiera własne otoczenie
-rysujące -- \ei{pspicture}. Moc pakietu \pai{pstricks} bierze się
-z~tego, że istotnie wykorzystuje on możliwości {\PSi}u.
-
-% zmiany głównie z powodu niewypełnienia strony:-)
-Na dodatek napisano wiele pakietów realizujących konkretne cele. Jednym
-z~nich jest \texorpdfstring{\Xy}{Xy}-pic, opisany na końcu tego
-rozdziału. Znaczną liczbę tych pakietów opisano w~\graphicscompanion{}
-(nie należy mylić z~\companion).
-
-Spośród narzędzi graficznych związanych z~{\LaTeX}em największe chyba
-możliwości posiada {\MP},
-autorstwa Johna D.~Hobby\index{Hobby John D.}, będący wariantem
-programu {\MF},
-którego autorem jest z~kolei Donald E.~Knuth\index{Knuth Donald E.}.
-{\MP} jest wyposażony w~solidny
-i~matematycznie wyrafinowany język programowania {\MF}a.
-Inaczej jednak niż {\MF}, który generuje mapy bitowe,
-{\MP} generuje pliki {\PSi}owe, które można importować
-do~{\LaTeX}a. Za wprowadzenie może posłużyć \hobby,
-a~za podręcznik -- \cite{ursoswald}. Dostępne jest także
-wprowadzenie do programu {\MP} w~języku
-polskim~\cite{metapost}\footnote{%
-Nie ma co ukrywać, że posługiwanie się {\MP}em wymaga posiadania
-przynajmniej minimum umiejętności programistycznych. Dla użytkowników
-którzy nie programują przydatny może być program MetaGraf, który
-jest okienkową nakładką do programu {\MP},
-por.~\urlMetaGraf.}.
-
-%Obszerną dyskusję podejścia {\LaTeX}a i~\TeX{}a do grafiki (oraz fontów)
-Obszerne omówienie zagadnień związanych
-z~wykorzystaniem grafiki (oraz fontów)
-w~{\LaTeX}u i~\TeX{}u można znaleźć w~\hoenig.
-
-\section{Otoczenie \texttt{picture}}
-
-\secby{Urs Oswald}{osurs@bluewin.ch}
-
-\subsection{Podstawowe polecenia}
-
-Otoczenie \ei{picture}\footnote{Otoczenie
- \ei{picture} działa w~standardowym {\LaTeXe}; nie trzeba ładować
- żadnych dodatkowych pakietów.} można tworzyć poleceniem:
-\begin{command}
-\cmd{begin}\verb|{picture}(|$x,y$\verb|)|\ldots\cmd{end}\verb|{picture}|
-\end{command}
-\noindent lub
-\begin{command}
-\cmd{begin}\verb|{picture}(|$x,y$\verb|)(|$x_0,y_0$\verb|)|\ldots\cmd{end}\verb|{picture}|
-\end{command}
-Liczby $x,\,y,\,x_0,\,y_0$ odnoszą się do wielkości \ci{unitlength},
-którą można zmieniać w~dowolnym momencie
-(jednak nie wewnątrz otoczenia \ei{picture}) poleceniem takim jak:
-\begin{command}
-\ci{setlength}\verb|{|\ci{unitlength}\verb|}{1.2cm}|
-\end{command}
-Wartością domyślną \ci{unitlength} jest \texttt{1pt}. Pierwsza para,
-$(x,y)$, to wymiary rezerwowanego wewnątrz dokumentu prostokątnego
-obszaru na rysunek. Opcjonalna druga para, $(x_0,y_0)$, to współrzędne
-przypisane dolnemu lewemu narożnikowi zarezerwowanego prostokąta.
-
-Większość poleceń rysujących ma jedną z~dwóch postaci:
-\begin{command}
-\ci{put}\verb|(|$x,y$\verb|){|\emph{object}\verb|}|
-\end{command}
-\noindent lub
-\begin{command}
-\ci{multiput}\verb|(|$x,y$\verb|)(|$\Delta x,\Delta y$\verb|){|$n$\verb|}{|\emph{object}\verb|}|\end{command}
-\noindent Wyjątkiem są krzywe B\'eziera, gdyż rysuje się je poleceniem:
-\begin{command}
-\ci{qbezier}\verb|(|$x_1,y_1$\verb|)(|$x_2,y_2$\verb|)(|$x_3,y_3$\verb|)|
-\end{command}
-
-\subsection{Odcinki}
-
-\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}
-
-Do rysowania odcinków służy polecenie:
-\begin{command}
-\ci{put}\verb|(|$x,y$\verb|){|\ci{line}\verb|(|$x_1,y_1$\verb|){|$length$\verb|}}|
-\end{command}
-\noindent
-Ma ono ma dwa argumenty: wektor kierunku i~długość.
-
-Jako składników wektora kierunku można użyć jedynie liczb całkowitych:
-\[
- -6,\,-5,\,\ldots,\,5,\,6,
-\]
-Muszą one na dodatek być liczbami względnie pierwszymi (jedynym ich wspólnym
-dzielnikiem może być 1). Powyższy rysunek ilustruje wszystkie możliwe
-wartości nachylenia w~pierwszej ćwiartce płaszczyzny. Długość jest
-podawana w~jednostkach \ci{unitlength}. Argument długości oznacza
-współrzędną pionową w~wypadku odcinka pionowego, zaś współrzędną
-poziomą we wszystkich pozostałych przypadkach.
-
-\subsection{Strzałki}
-
-\begin{example}
-\setlength{\unitlength}{0.75mm}
-\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}
-
-Strzałki rysuje się poleceniem:
-\begin{command}
-\ci{put}\verb|(|$x,y$\verb|){|\ci{vector}\verb|(|$x_1,y_1$\verb|){|$length$\verb|}}|
-\end{command}
-\noindent W~wypadku strzałek na składniki wektora kierunku nałożone są
-jeszcze większe ograniczenia niż dla odcinków, bo jedynymi
-dopuszczalnymi liczbami całkowitymi są:
-\[
- -4,\,-3,\,\ldots,\,3,\,4.
-\]
-Wartości składników i~tu muszą być liczbami względnie pierwszymi
-(jedynym wspólnym dzielnikiem może być 1). Zauważ efekt działania polecenia
-\ci{thicklines} na dwie strzałki skierowane w~stronę lewego górnego
-narożnika oraz \ci{thinlines} na strzałki w~stronę narożnika prawego górnego.
-
-\subsection{Okręgi}
-
-\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}
-
-Polecenie:
-\begin{command}
- \ci{put}\verb|(|$x,y$\verb|){|\ci{circle}\verb|{|\emph{diam}\verb|}}|
-\end{command}
-\noindent rysuje okrąg o~środku $(x,y)$ i~średnicy (nie promieniu)
-równym \emph{diam}. Otoczenie \ei{picture} dopuszcza średnice co najwyżej
-rzędu 14\,mm, na dodatek nie wszystkie długości średnic są
-dozwolone. Polecenie \ci{circle*} generuje koła (wypełnione okręgi).
-
-Podobnie jak w~wypadku odcinków, można się uciec do dodatkowych pakietów,
-takich jak \pai{eepic} bądź \pai{pstricks}. Obszerny opis tych
-pakietów można znaleźć w~\graphicscompanion.
-
-Otoczenie \ei{picture} oferuje jeszcze jedną opcję. Jeśli nie boisz się
-wykonania niezbędnych obliczeń (być może nawet za pomocą programu), to
-okręgi oraz elipsy możesz złatać z~krzywych B\'eziera drugiego stopnia.
-Przykłady oraz źródłowe pliki w~Javie można znaleźć w~\graphicsinlatex.
-
-\subsection{Tekst i~wzory}
-
-\begin{example}
-\setlength{\unitlength}{0.8cm}
-\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.65,0.3){$A$}
- \put(4.05,1.9){$B$}
- \put(1.65,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}
-Jak widać w~powyższym przykładzie, tekst oraz wzory można łatwo
-wprowadzać do otoczenia \ei{picture} poleceniem \ci{put}.
-
-\subsection{Polecenia \texorpdfstring{\cmd{multiput}
- i \cmd{linethickness}}{multiput i linethickness}}
-
-\begin{example}
-\setlength{\unitlength}{2mm}
-\begin{picture}(30,20)
- \linethickness{0.075mm}
- \multiput(0,0)(1,0){26}%
- {\line(0,1){20}}
- \multiput(0,0)(0,1){21}%
- {\line(1,0){25}}
- \linethickness{0.15mm}
- \multiput(0,0)(5,0){6}%
- {\line(0,1){20}}
- \multiput(0,0)(0,5){5}%
- {\line(1,0){25}}
- \linethickness{0.3mm}
- \multiput(5,0)(10,0){2}%
- {\line(0,1){20}}
- \multiput(0,5)(0,10){2}%
- {\line(1,0){25}}
-\end{picture}
-\end{example}
-Polecenie:
-\begin{command}
- \ci{multiput}\verb|(|$x,y$\verb|)(|$\Delta x,\Delta y$\verb|){|$n$\verb|}{|\emph{object}\verb|}|
-\end{command}
-\noindent ma cztery argumenty: punkt początkowy, wektor przesunięcia
-z~jednego obiektu do kolejnego, liczbę obiektów oraz rysowany obiekt.
-Instrukcja \ci{linethickness} odnosi się do odcinków poziomych oraz
-pionowych, jednakże nie do odcinków ukośnych ani nie do okręgów.
-Stosuje się ona jednak również do krzywych B\'eziera drugiego stopnia.
-
-\subsection{Owale}
-
-\begingroup
-\typeout{*** Coś jest trochę za duże w tym Przykładzie ***}
-\begin{example}
-\setlength{\unitlength}{0.75cm}
-\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}
-\endgroup
- %%
-Polecenie:
- %%
-\begin{command}
- \ci{put}\verb|(|$x,y$\verb|){|\ci{oval}\verb|(|$w,h$\verb|)}|
-\end{command}
-\noindent jak też:
-\begin{command}
- \ci{put}\verb|(|$x,y$\verb|){|\ci{oval}\verb|(|$w,h$\verb|)[|\emph{pozycja}\verb|]}|
-\end{command}
-\noindent generuje owal o~środku $(x,y)$, szerokości
-$w$ i~wysokości $h$. Opcjonalne argumenty \emph{pozycji\/}:
-\texttt{b}, \texttt{t}, \texttt{l} i~\texttt{r} oznaczają odpowiednio:
-,,top'' (góra), ,,bottom'' (dół), ,,left'' (lewo) i~,,right'' (prawo).
-Jak pokazuje przykład, można także używać ich kombinacji.
-
-Grubością linii można sterować na dwa sposoby, z~jednej strony poleceniem:
-\begin{command}
-\ci{linethickness}\verb|{|\emph{length}\verb|}|
-\end{command}
-\noindent
-z~drugiej -- za pomocą \ci{thinlines} i~\ci{thicklines}. O~ile pierwszy
-ze sposobów odnosi się jedynie do linii poziomych oraz pionowych,
-a~także do krzywych B\'eziera drugiego stopnia, o~tyle \ci{thinlines}
-i~\ci{thicklines} stosują się do odcinków ukośnych, jak też do okręgów
-i~owali.
-
-\subsection{Wielokrotne użycie pudełek z~rysunkami}
-
-\begin{example}
-\setlength{\unitlength}{0.5mm}
-\begin{picture}(120,168)
-\newsavebox{\foldera}
-\savebox{\foldera}
- (40,32)[bl]{% definition
- \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]{% definition
- \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}
-Pudełko rysunku można \emph{zadeklarować} instrukcją:
-\begin{command}
- \ci{newsavebox}\verb|{|\emph{nazwa}\verb|}|
-\end{command}
-\noindent następnie \emph{zachować} poleceniem:
-\begin{command}
- \ci{savebox}\verb|{|\emph{nazwa}\verb|}(|\emph{szerokość,wysokość}\verb|)[|\emph{pozycja}\verb|]{|\emph{treść}\verb|}|
-\end{command}
-\noindent i~ostatecznie dowolnie często \emph{rysować}, wywołując:
-\begin{command}
- \ci{put}\verb|(|$x,y$\verb|)|\ci{usebox}\verb|{|\emph{nazwa}\verb|}|
-\end{command}
-
-Opcjonalny parametr \emph{pozycja\/} definiuje ,,punkt zaczepienia''
-zachowywanego pudełka (savebox). W~przykładzie nadano mu wartość
- \texttt{bl}, co oznacza umieszczenie punktu zaczepienia w~dolnym lewym
-narożniku pudełka. Pozycje można też oznaczać literami
-\texttt{t} (góra) i~\texttt{r} (prawo).
-
-Argument \emph{nazwa\/} odnosi się do {\LaTeX}owego magazynu poleceń
-i~dlatego ma naturę instrukcji (co w~powyższym przykładzie objawia się
-choćby użyciem znaków '\verb+\+'). Rysunki przechowywane w~pudełkach
-można zagnieżdżać. W~powyższym przykładzie wewnątrz definicji
-\ci{folderb} użyto \ci{foldera}.
-
-Trzeba było użyć polecenia \ci{oval}, ponieważ instrukcja \ci{line}
-nie działa, gdy długość odcinka wynosi mniej niż około 3\,mm.
-
-\subsection{Krzywe B\'eziera drugiego stopnia}
-
-\begin{example}
-\setlength{\unitlength}{0.8cm}
-\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}
- %%
-\noindent
-Jak widać w~przykładzie, podzielenie okręgu na cztery krzywe B\'eziera
-drugiego stopnia nie daje zadowalającego efektu; lepsze przybliżenie
-dałoby osiem. Przykład ponownie ilustruje wpływ instrukcji
-\ci{linethickness} na linie poziome i~pionowe oraz poleceń
-\ci{thinlines} i~\ci{thicklines} na odcinki pochyłe. Pokazuje on
-również, że oba te rodzaje poleceń oddziałują na krzywe B\'eziera i~że
-kolejne użycie któregokolwiek z~nich przesłania poprzednie.
-
-Niech symbole $P_1=(x_1,\,y_1),\,P_2=(x_2,\,y_2)$ oznaczają punkty
-końcowe, zaś $m_1,\,m_2$ -- odpowiednie nachylenia krzywej B\'eziera
-drugiego stopnia. Pośredni punkt kontrolny $S=(x,\,y)$ jest zatem
-opisany równaniami:
-\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}, \smallskip\\
- y & = & y_i+m_i(x-x_i)\qquad (i=1,\,2).
- \end{array}
- \right.
-\end{equation}
-\noindent W~\graphicsinlatex\ można znaleźć program w~Javie, który
-generuje odpowiednią linię polecenia \ci{qbezier}.
-
-\subsection{Krzywe łańcuchowe}
-
-\begin{example}
-\setlength{\unitlength}{1cm}
-\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}
-\noindent
-Każdą z~symetrycznych połówek wykresu cosinusa hiperbolicznego
- $y=\cosh x -1$ przybliżono na~rysunku krzywą
-B\'eziera. Prawa połówka krzywej kończy się w~punkcie \((2,\,2.7622)\),
-w~którym nachylenie ma wartość \(m=3.6269\). Używając ponownie równania
-(\ref{zwischenpunkt}), możemy wyliczyć pośrednie punkty kontrolne.
-Okazuje się, że są to: $(1.2384,\,0)$ i~$(-1.2384,\,0)$.
-Krzyżykami została zaznaczona ,,prawdziwa'' krzywa. Błąd jest
-ledwie zauważalny, bo wynosi mniej niż jeden procent.
-
-Ten przykład ilustruje też użycie opcjonalnego argumentu otoczenia
-\verb|\begin{picture}|. Rysunek zdefiniowano w~terminach
- wygodnych współrzędnych ,,matematycznych", podczas gdy poleceniem:
-\begin{command}
- \cmd{begin}\verb|{picture}(4.3,3.6)(-2.5,-0.25)|
-\end{command}
-\noindent jego lewemu dolnemu narożnikowi (oznaczonemu czarnym
-kółeczkiem) przypisano współrzędne $(-2.5,-0.25)$.
-
-\subsection{Prędkość w~Szczególnej Teorii Względności}
-
-\begin{example}
-\setlength{\unitlength}{0.8cm}
-\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}
-Punkty kontrolne dwóch krzywych B\'eziera wyliczono ze wzorów
-(\ref{zwischenpunkt}). Gałąź dodatnia jest określona wartościami
-$P_1=(0,\,0),\,m_1=1$ oraz $P_2=(2,\,\tanh 2),\,m_2=1/\cosh^2 2$.
-I~znowu rysunek wyrażono w~wygodnych matematycznie
-współrzędnych, a~lewemu dolnemu narożnikowi przypisano współrzędne
-$(-3,-2)$ (czarne kółeczko).
-
-\section{\texorpdfstring{\Xy}{Xy}-pic}
-\secby{Alberto Manuel Brand\~ao Sim\~oes}{albie@alfarrabio.di.uminho.pt}
-Pakiet \Xy-pic służy do rysowania grafów. Aby uzyskać dostęp do jego
-funkcji, umieszczamy w~preambule dokumentu wiersz:
- %%
-\begin{command}
-\verb|\usepackage[|\emph{opcje}\verb|]{xy}|
-\end{command}
- %%
-\noindent
-Parametr \emph{opcje} jest listą funkcji pakietu \Xy-pic, które mają
-zostać załadowane. Opcje te przydają się między innymi do szukania błędów
-w~pakiecie. Zaleca się przekazywać opcję \popti{all},
-nakazującą {\LaTeX}owi załadować wszystkie polecenia pakietu.
-\looseness-3
-
-Graf rysuje się w~\Xy-pic na płótnie o~strukturze macierzy,
-a~każdy element grafu jest umieszczony w~komórce tej macierzy:
-\begin{example}
-\begin{displaymath}
-\xymatrix{A & B \\
-C & D }
-\end{displaymath}
-\end{example}
-\noindent
-Polecenia \ci{xymatrix} można użyć jedynie w~trybie matematycznym. Powyżej
-zadano dwa wiersze i~dwie kolumny. Aby przekształcić tę macierz
-w~graf, posługujemy się dodającym strzałki
-poleceniem \ci{ar}\footnote{Pakiety \Xy-pic oraz \pai{polski}
-są w~konflikcie, bo oba
-definiują polecenie~\ci{ar}.
-Jeżeli polecenie \ci{ar} ma działać tak, jak
-zdefiniowano to w~pakiecie \Xy-pic, to trzeba \pai{xy}
-dołączyć po pakiecie \pai{polski}.
-Oczywiście nie ma wtedy dostępu do polecenia \ci{ar}
-z~pakietu \pai{polski}.}:
-\begin{example}
-\begin{displaymath}
-\xymatrix{ A \ar[r] & B \ar[d] \\
- D \ar[u] & C \ar[l] }
-\end{displaymath}
-\end{example}
-\noindent
-Polecenie \ci{ar} umieszczamy w~komórce, w~której strzałka ma
-się zaczynać. Argument oznacza kierunek strzałki (\texttt{u} -- góra,
-\texttt{d} -- dół, \texttt{r} -- prawo i~\texttt{l} -- lewo):
-\begin{example}
-\begin{displaymath}
-\xymatrix{
- A \ar[d] \ar[dr] \ar[r] & B \\
- D & C }
-\end{displaymath}
-\end{example}
-Aby uzyskać przekątne, używamy po prostu więcej niż jednego kierunku.
-Powtarzając kierunek, wydłużamy w~istocie strzałkę:
-\begin{example}
-\begin{displaymath}
-\xymatrix{
- A \ar[d] \ar[dr] \ar[drr] & & \\
- B & C & D }
-\end{displaymath}
-\end{example}
-Uzupełniając strzałki o~etykiety, możemy uzyskać jeszcze ciekawsze grafy.
-Używamy do tego zwyczajnych operatorów indeksów górnych i~dolnych:
-\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}
-Jak widać, operatorów tych używa się tak samo jak w~trybie matematycznym.
-Jedyną różnicą jest to, że indeks górny oznacza \emph{nad},
-zaś dolny -- \emph{pod} strzałką. Istnieje jeszcze trzeci
-operator -- pionowej kreski \verb+|+. Umieszcza
-on tekst \emph{na} strzałce:
-\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}
-Aby narysować strzałkę z~dziurką w~środku, możemy użyć
-polecenia \verb!\ar[...]|\hole!.
-
-W~niektórych sytuacjach trzeba używać różnych typów strzałek.
-Można je w~tym celu oznaczać różnymi etykietami bądź
-nadawać im różny wygląd:
-
-\begingroup
-%% zmniejsz odstęp między wierszami do 1,5pc (domyśnie 2,0pc)
-%% w macierzy \xymatrix, bo nie wchodzi na stronę:
-\xymatrixrowsep{1.5pc}
-%\shorthandoff{"} %% było poniżej \begin{example}, ale po co ? --tp --
-\begin{example}
-\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}
-\end{example}
-%\shorthandon{"} %% było nad \end{example} ale nie wiadomo po co? --tp--
-\endgroup
-
-Zauważ różnicę między następującymi dwoma grafami:
-
-\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}
- %%
- %%\texttt{\meaning\ar}
-\noindent Symbole między ukośnikami określają tu sposób rysowania krzywych.
-
-Pakiet \Xy-pic oferuje wiele metod wpływania na sposób rysowania
-krzywych. Więcej na ten temat można przeczytać
-w~dokumentacji pakietu~\cite{xy-pic}.
-
-\endinput
-
-%%% Local Variables:
-%%% mode: latex
-%%% TeX-master: "lshort2e"
-%%% coding: latin-2
-%%% case-fold-search: nil
-%%% LocalWords: Jackowski
-%%% ispell-local-dictionary: "polish"
-%%% End: