summaryrefslogtreecommitdiff
path: root/macros/generic/diagrams/xypic/texinputs/xyps-r.tex
blob: c8627900631a5c776f768af683437dfe81edd822 (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
%% xyps-r.tex from $Id: xyps-r.doc,v 3.11 2011/03/14 20:14:00 krisrose Exp $
%%
%% Xy-pic ``PostScript Rotations and Scaling''.
%% Copyright (c) 1993-1996 Ross Moore <ross.moore@mq.edu.au>
%%
%% This file is part of the Xy-pic package for graphs and diagrams in TeX.
%% See the companion README and INSTALL files for further information.
%% Copyright (c) 1991-2011 Kristoffer H. Rose <krisrose@tug.org>
%%
%% The Xy-pic package is free software; you can redistribute it and/or modify
%% it under the terms of the GNU General Public License as published by the
%% Free Software Foundation; either version 2 of the License, or (at your
%% option) any later version.
%%
%% The Xy-pic package is distributed in the hope that it will be useful, but
%% WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
%% or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
%% for more details.
%%
%% You should have received a copy of the GNU General Public License along
%% with this package; if not, see http://www.gnu.org/licenses/.
%%
%% As a special exception, you may use this file and all files derived
%% from it without restrictions. This special exception was added with
%% version 3.7 of Xy-pic.
%%
\expandafter\ifx\csname xyps-rloaded\endcsname\empty
 \message{not reloaded}\endinput \fi
\expandafter\let\csname xyps-rloaded\endcsname=\empty \xycatcodes
\expandafter\ifx\csname xyps-sloaded\endcsname\empty\else
 \xyinputorelse@{xyps-s}{\xyerror@{Could not load xyps-s}{}}%
 \xycatcodes\fi
\xydef@\installPSrotscale@{\installPSstyle@
 \let\xyRotate@@=\xyPSrotate@@
 \let\doSpecialRotate@@=\doPSspecialRotate@@
 \let\xyscale@@=\xyPSscale@@
 \xyPSshapes@true
 \xyuncatcodes }
\xydef@\UsePSrotate{\installPSrotscale@}
\xydef@\NoPSrotate{\UnloadRotate@\relax}
\xydef@\xyPSpretransform@{\xyPSrawA@{\preXYtransform@@}}
\xydef@\xyPSposttransform@{\xyPSrawZ@{\postXYtransform@@}}
\let\preXYtransform@=\xyPSpretransform@
\let\postXYtransform@=\xyPSposttransform@
\xydef@\xyPSrotSplit@{%
 \expandafter\def\expandafter\preShape@@\expandafter{\xyPSpre@}%
 \expandafter\def\expandafter\postShape@@\expandafter{\xyPSpost@}}
\xydef@\xyPSscale@@#1#2{%
 \xyPSsplitPS@{\xyscale@start(#1,#2)}{\xyscale@end}%
 \xyPSrotSplit@\xyPSpsxy@ }
\xydef@\xyPSrotate@@#1{%
 \xyPSsplitPS@{\xyrot@start(#1 xyd)}{\xyrot@end}%
 \xyPSrotSplit@\xyPSpsxy@ }
\xydef@\xyPSspecialRotate@#1{%
 \xyPSsplitPS@{\xyrot@start(#1)}{\xyrot@end}\xyPSrotSplit@\xyPSpsxy@ }
\xydef@\doPSspecialRotate@@#1@@{\xyPSspecialRotate@{#1}}
\xydef@\xyRotScale@@{%
 \def\xyrot@start(##1){{xyt ##1\space xyr}}%
 \def\xyscale@start(##1,##2){{xyt ##1\space##2\space xys}}%
 \def\xyrot@end{}\def\xyscale@end{}}
\endinput