blob: ea222af4b4cd36df424dba525da21f8b554641bb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
%%
%% This is file `pst-knot.tex',
%%
%% IMPORTANT NOTICE:
%%
%% Package `pst-knot.tex'
%%
%% Herbert Voss <herbert -> dante.de>
%%
%% This program can be redistributed and/or modified under the terms
%% of the LaTeX Project Public License Distributed from CTAN archives
%% in directory macros/latex/base/lppl.txt.
%%
%% DESCRIPTION:
%% `pst-knot' is a PSTricks package for knot macros
%%
%%
\csname PSTknotLoaded\endcsname
\let\PSTknotLoaded\endinput
% Requires PSTricks
\ifx\PSTricksLoaded\endinput\else\input pstricks.tex\fi
\ifx\PSTXKeyLoaded\endinput\else\input pst-xkey.tex \fi
%
\edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax
% interface to the `xkeyval' package
\pst@addfams{pst-knot}
\def\fileversion{0.01}
\def\filedate{2009/11/07}
\message{`PST-knot' v\fileversion, \filedate\space (hv)}
%
\SpecialCoor
\pstheader{pst-psm.pro}
%
\define@key[psset]{pst-knot}{knotborder}[2]{\def\psk@knot@border{#1 }}
\define@key[psset]{pst-knot}{knotbgcolor}[1]{\def\psk@knot@bgcolor{#1 }}
\define@key[psset]{pst-knot}{knotscale}[1 1]{\pst@getscale{#1}\psk@knot@scale}
\psset[pst-knot]{knotborder=2,knotbgcolor=1,knotscale=1}
%
\def\psKnot{\def\pst@par{}\pst@object{psKnot}}
\def\psKnot@i(#1)#2{\expandafter\psKnot@ii(#1)#2}
\def\psKnot@ii(#1)#2-#3{%
\addto@par{border=.5\pslinewidth}%
\begin@ClosedObj%
\pst@getcoor{#1}\pst@tempA%
\addto@pscode{
\pst@tempA\space moveto
tx@KnotDict begin
PSMinit
/rgb {} def /gray {} def /cmyk {} def
\pst@number\pslinewidth SLW
\pst@usecolor\pslinecolor
\psk@knot@scale
/knot-bgline { CLW \psk@knot@border mul SLW } def
/knot-bgcolour \psk@knot@bgcolor def
knot-#2-#3 \ifnum#2=0 \else knot \fi
end
}%
\end@ClosedObj}
%
\catcode`\@=\PstAtCode\relax
%
%% END: pst-knot.tex
\endinput
%
|