summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/pst-bspline
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-06-13 21:40:28 +0000
committerKarl Berry <karl@freefriends.org>2010-06-13 21:40:28 +0000
commit53e163508344d593ba867c3f16c157c07fba52c6 (patch)
tree2b4e9b737c872f809d47e24085051d1e9f42b0df /Master/texmf-dist/doc/generic/pst-bspline
parent89005db14615e4cbb9fbee050bab6809fa3e2d97 (diff)
pst-bspline update (13jun10)
git-svn-id: svn://tug.org/texlive/trunk@18944 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic/pst-bspline')
-rw-r--r--Master/texmf-dist/doc/generic/pst-bspline/README2
-rw-r--r--Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.pdfbin94795 -> 88723 bytes
-rw-r--r--Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.tex38
3 files changed, 29 insertions, 11 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-bspline/README b/Master/texmf-dist/doc/generic/pst-bspline/README
index d1bd117b148..df0f5ffeafc 100644
--- a/Master/texmf-dist/doc/generic/pst-bspline/README
+++ b/Master/texmf-dist/doc/generic/pst-bspline/README
@@ -2,7 +2,7 @@
%%
%% Michael Sharpe <msharpe@ucsd.edu>
%%
-%% Version 1.13, 2008/12/13
+%% Version 1.2, 2010/06/12
%%
%% License: Free
diff --git a/Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.pdf b/Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.pdf
index c322867e406..a72c26b22c8 100644
--- a/Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.pdf
+++ b/Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.tex b/Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.tex
index 5df2756a987..f991acd10e4 100644
--- a/Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.tex
+++ b/Master/texmf-dist/doc/generic/pst-bspline/pst-bspline-doc.tex
@@ -44,7 +44,7 @@ There is another optional argument that can be applied if you wish to be able to
\noindent sets the root of the naming scheme to {\tt B}, the effect of which is that the B-spline control points will be nodes of type \verb|\pnode| with names {\tt B0}, {\tt B1} and so on, the other points being similarly named {\tt BL0}, {\tt BL1}, ... , {\tt BR0}, {\tt BR1}, ... , {\tt BS0}, {\tt BS1}, ... . For example, to draw a line between {\tt BL1} and {\tt BS4}, just use \verb|\ncline(BL1)(BS4)|.
-The algorithm is implemented entirely in PSTricks code, without any PostScript programming at all, depending for the most part on the flexibility of nodes, and above all the \verb|\multido| macro, which allows one to construct with relative ease items that look and feel like arrays. Use of \verb|\SpecialCoor| is essential.
+The algorithm is implemented entirely in PSTricks code with PostScript specials, but no PostScript header file, depending for the most part on the flexibility of nodes, and above all the \verb|\multido| macro, which allows one to construct with relative ease items that look and feel like arrays. Use of \verb|\SpecialCoor| is essential.
There is a closely related macro \verb|\psBsplineE| which removes the first and last B\'ezier segments, much as \verb|\psecurve| acts in relation to \verb|\pscurve|, allowing one one to draw B-splines with non-zero curvature at the endpoints.
@@ -205,7 +205,7 @@ for the $B_k$. In matrix form, this becomes the tridiagonal system
&1&4&1\\
&&\cdots&&1\\
&&&1&4\end{pmatrix}
-\begin{pmatrix}B_1\\B_2\\B_3\\ \cdots\\ B_{n-1}\end{pmatrix}=§
+\begin{pmatrix}B_1\\B_2\\B_3\\ \cdots\\ B_{n-1}\end{pmatrix}=ß
\begin{pmatrix}6S_1-S_0\\6S_2\\6S_3\\ \cdots\\6S_{n-1}-S_{n}\end{pmatrix}
\]
The LU decomposition of the tridiagonal matrix may be seen to take the form
@@ -262,7 +262,7 @@ for the $B_k$, $1\le k\le n$. In matrix form, this becomes the system
&1&4&1\\
&&\cdots&&1\\
1&&&1&4\end{pmatrix}
-\begin{pmatrix}B_1\\B_2\\B_3\\ \cdots\\ B_{n}\end{pmatrix}=§
+\begin{pmatrix}B_1\\B_2\\B_3\\ \cdots\\ B_{n}\end{pmatrix}=ß
\begin{pmatrix}6S_1\\6S_2\\6S_3\\ \cdots\\6S_{n}\end{pmatrix}
\]
Let $(x_k,y_k)=6S_k$. We perform Gaussian elimination on the matrix
@@ -337,9 +337,9 @@ The following example illustrates that there is a difference between \verb|\pscc
\usepackage{pst-bspline,pstricks-add}
\begin{document}
\begin{pspicture}[showgrid=true](-.5,-.5)(6,5)
-\pnodes{P}(0,1)(2,0)(5,2)(6,4)(4,5)(2,4)
-\psBsplineInterpC{P}{5}
-\psBsplineNodesC*[linecolor=gray!40]{PB}{5}
+\pnodes{P}(0,1)(2,0)(5,2)(6,4)(4,5)(2,4)%
+\psBsplineInterpC{P}{5}%
+\psBsplineNodesC*[linecolor=gray!40]{PB}{5}%
\psccurve[linecolor=red,showpoints=true](0,1)(2,0)(5,2)(6,4)(4,5)(2,4)
\end{pspicture}
\end{document}
@@ -350,14 +350,32 @@ The following example illustrates that there is a difference between \verb|\pscc
Slight difference between psccurve and B-spline interpolation\\
\vspace*{2pc}
\begin{pspicture}[showgrid=true](-.5,-.5)(6,5)
-\pnodes{P}(0,1)(2,0)(5,2)(6,4)(4,5)(2,4)
-\psBsplineInterpC{P}{5}
-\psBsplineNodesC*[linecolor=gray!40]{PB}{5}
+\pnodes{P}(0,1)(2,0)(5,2)(6,4)(4,5)(2,4)%
+\psBsplineInterpC{P}{5}%
+\psBsplineNodesC*[linecolor=gray!40]{PB}{5}%
\psccurve[linecolor=red,showpoints=true](0,1)(2,0)(5,2)(6,4)(4,5)(2,4)
\end{pspicture}
\end{center}
+A B-spline curve can in many cases provide a good function interpolation mechanism, but the result is not guaranteed to be the graph of a function.
+\begin{verbatim}
+\begin{center}
+\begin{pspicture}[showgrid=true](-.5,-.5)(6,4)
+\psdots(0,3.5)(1,.5)(3,2.5)(4,0)(5,2)(6,.5)
+\psaxes(0,0)(-.5,-.5)(6,4)
+\psbspline(0,3.5)(1,.5)(3,2.5)(4,0)(5,2)(6,.5)
+\end{pspicture}
+\end{center}
+\end{verbatim}
+
+\begin{center}
+\begin{pspicture}(-.5,-.5)(6,4)
+\psdots(0,3.5)(1,.5)(3,2.5)(4,0)(5,2)(6,.5)
+\psbspline(0,3.5)(1,.5)(3,2.5)(4,0)(5,2)(6,.5)
+\psaxes(0,0)(-.5,-.5)(6,4)
+\end{pspicture}
+\end{center}
+\vspace{12pt}
-\newpage
\begin{verbatim}
\documentclass{article}
\usepackage{graphicx}