talks/20091108-Riverside/xypdf-r.tex
author scott@6e1638ff-ae45-0410-89bd-df963105f760
Fri, 30 Oct 2009 21:05:16 +0000
changeset 153 f58334ec3d1d
permissions -rw-r--r--
...
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
153
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     1
%% xypdf-r.tex from $Id: xypdf-r.doc,v $
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     2
%%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     3
%% Xy-pic ``PDF Rotations and Scaling''.
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     4
%% Copyright (c) 1999-1999 Ross Moore <ross@maths.mq.edu.au>
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     5
%%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     6
%% This file is part of the Xy-pic package for graphs and diagrams in TeX.
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     7
%% See the companion README and INSTALL files for further information.
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     8
%% Copyright (c) 1991-1999 Kristoffer H. Rose <krisrose@brics.dk>
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
     9
%%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    10
%% The Xy-pic package is free software; you can redistribute it and/or modify
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    11
%% it under the terms of the GNU General Public License as published by the
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    12
%% Free Software Foundation; either version 2 of the License, or (at your
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    13
%% option) any later version.
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    14
%%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    15
%% The Xy-pic package is distributed in the hope that it will be useful, but
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    16
%% WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    17
%% or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    18
%% for more details.
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    19
%%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    20
%% You should have received a copy of the GNU General Public License along
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    21
%% with this package; if not, write to the Free Software Foundation, Inc.,
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    22
%% 675 Mass Ave, Cambridge, MA 02139, USA.
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    23
%%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    24
%% As a special exception, you may use this file and all files derived
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    25
%% from it without restrictions. This special exception was added with
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    26
%% version 3.7 of Xy-pic.
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    27
%%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    28
\expandafter\ifx\csname xypdf-rloaded\endcsname\empty
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    29
 \message{not reloaded}\endinput \fi
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    30
\expandafter\let\csname xypdf-rloaded\endcsname=\empty \xycatcodes
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    31
\expandafter\ifx\csname xypdf-sloaded\endcsname\empty\else
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    32
 \xyinputorelse@{xypdf-s}{\xyerror@{Could not load xypdf-s}{}}%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    33
 \xycatcodes\fi
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    34
\xydef@\installPDFrotscale@{\installPDFstyle@
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    35
% \let\xyRotate@@=\xyPDFrotate@@
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    36
% \let\doSpecialRotate@@=\doPDFspecialRotate@@
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    37
 \let\xyscale@@=\xyPDFscale@@
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    38
 \xyPDFshapes@true
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    39
 \xyuncatcodes }
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    40
\xydef@\UsePDFrotate{\installPDFrotscale@}
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    41
\xydef@\NoPDFrotate{\UnloadRotate@\relax}
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    42
\xydef@\xyPDFpretransform@{\xyPDFrawA@{\preXYtransform@@}}
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    43
\xydef@\xyPDFposttransform@{\xyPDFrawZ@{\postXYtransform@@}}
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    44
\let\preXYtransform@=\xyPDFpretransform@
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    45
\let\postXYtransform@=\xyPDFposttransform@
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    46
\xydef@\xyPDFrotSplit@{%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    47
 \expandafter\def\expandafter\preShape@@\expandafter{\xyPDFpre@}%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    48
 \expandafter\def\expandafter\postShape@@\expandafter{\xyPDFpost@}}
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    49
\xydef@\xyPDFscale@@#1#2{%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    50
 \xyPDFsplitPDF@{\xyscale@start(#1,#2)}{\xyscale@end}%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    51
 \xyPDFrotSplit@\xyPDFpdfxy@ }
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    52
\xydef@\xyPDFrotate@@#1{%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    53
 \xyPDFsplitPDF@{\xyrot@start(#1 xyd)}{\xyrot@end}%%%<<------ here
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    54
 \xyPDFrotSplit@\xyPDFpdfxy@ }
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    55
\xydef@\xyPDFspecialRotate@#1{%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    56
 \xyPDFsplitPDF@{\xyrot@start(#1)}{\xyrot@end}\xyPDFrotSplit@\xyPDFpdfxy@ }
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    57
\xydef@\doPDFspecialRotate@@#1@@{\xyPDFspecialRotate@{#1}}
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    58
\xydef@\xyRotScale@@{%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    59
% \def\xyrot@start(##1){{xyt ##1\space xyr}}%%%<<------ here
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    60
 \def\xyscale@start(##1,##2){ q ##1 0 0 ##2 0 0 cm}%
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    61
 \def\xyrot@end{ Q}\def\xyscale@end{ Q}}
scott@6e1638ff-ae45-0410-89bd-df963105f760
parents:
diff changeset
    62
\endinput