summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/coordsys/logsys.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-12 23:53:33 +0000
committerKarl Berry <karl@freefriends.org>2006-01-12 23:53:33 +0000
commit4584c66f99994f1ea96d5ad8551daaf7e7f655c1 (patch)
treeba01f746fb7051950e9cad792f82cb9398588551 /Master/texmf-dist/tex/latex/coordsys/logsys.sty
parent179bf60bda56170d7b22f51f2314ed4d5c06f9a1 (diff)
coordsys
git-svn-id: svn://tug.org/texlive/trunk@788 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/coordsys/logsys.sty')
-rw-r--r--Master/texmf-dist/tex/latex/coordsys/logsys.sty335
1 files changed, 335 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/coordsys/logsys.sty b/Master/texmf-dist/tex/latex/coordsys/logsys.sty
new file mode 100644
index 00000000000..0bdd97daa09
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/coordsys/logsys.sty
@@ -0,0 +1,335 @@
+%%
+%% This is file `logsys.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% coordsys.dtx (with options: `logsys')
+%%
+%%
+%% This is the coordsys and logsys packages
+%% Copyright 2000-04 by Mogens Lemvig Hansen,
+%% mlhansen@uniserve.com
+%%
+%% This program may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version. The latest
+%% version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.2 or later is part of all distributions of LaTeX
+%% version 2003/12/01 or later.
+%%
+%% This program consists of the files coordsys.dtx and coordsys.ins
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{logsys}[2004/11/15 version 1.3]
+\DeclareOption{centred}{\PassOptionsToPackage{centred}{coordsys}}
+\DeclareOption{outside}{\PassOptionsToPackage{outside}{coordsys}}
+\DeclareOption{inside}{\PassOptionsToPackage{inside}{coordsys}}
+\ProcessOptions
+\RequirePackage{coordsys}[2004/11/15]
+\newcommand{\loglabel}[1]{%
+ \ifnum #1=-2\relax \frac{1}{100}%
+ \else\ifnum #1=-1\relax \frac{1}{10}%
+ \else\ifnum #1= 0\relax 1%
+ \else\ifnum #1= 1\relax 10%
+ \else\ifnum #1= 2\relax 100%
+ \else 10^{#1}%
+ \fi\fi\fi\fi\fi}
+\newcommand{\v@logbox}[2]{%
+ \vbox to #1\unitlength{%
+ \offinterlineskip
+ \vskip \z@ plus 458fil\relax
+ \vbox to \z@{\vss\hbox{#2}\vss}% 9
+ \vskip \z@ plus 512fil\relax
+ \vbox to \z@{\vss\hbox{#2}\vss}% 8
+ \vskip \z@ plus 580fil\relax
+ \vbox to \z@{\vss\hbox{#2}\vss}% 7
+ \vskip \z@ plus 669fil\relax
+ \vbox to \z@{\vss\hbox{#2}\vss}% 6
+ \vskip \z@ plus 792fil\relax
+ \vbox to \z@{\vss\hbox{#2}\vss}% 5
+ \vskip \z@ plus 969fil\relax
+ \vbox to \z@{\vss\hbox{#2}\vss}% 4
+ \vskip \z@ plus 1249fil\relax
+ \vbox to \z@{\vss\hbox{#2}\vss}% 3
+ \vskip \z@ plus 1761fil\relax
+ \vbox to \z@{\vss\hbox{#2}\vss}% 2
+ \vskip \z@ plus 3010fil\relax
+ }}
+\newcommand{\h@logbox}[2]{%
+ \hbox to #1\unitlength{%
+ \hskip \z@ plus 3010fill\relax
+ \hbox to \z@{\hss #2\hss}% 2
+ \hskip \z@ plus 1761fill\relax
+ \hbox to \z@{\hss #2\hss}% 3
+ \hskip \z@ plus 1249fill\relax
+ \hbox to \z@{\hss #2\hss}% 4
+ \hskip \z@ plus 969fill\relax
+ \hbox to \z@{\hss #2\hss}% 5
+ \hskip \z@ plus 792fill\relax
+ \hbox to \z@{\hss #2\hss}% 6
+ \hskip \z@ plus 669fill\relax
+ \hbox to \z@{\hss #2\hss}% 7
+ \hskip \z@ plus 580fill\relax
+ \hbox to \z@{\hss #2\hss}% 8
+ \hskip \z@ plus 512fill\relax
+ \hbox to \z@{\hss #2\hss}% 9
+ \hskip \z@ plus 458fill\relax
+ }}
+\newcommand{\@sethlogticks}[5]{%
+ \thin@ticks
+ \@tempcnta=#2\relax
+ \ifnum\@tempcnta>0\advance\@tempcnta -1\relax\fi
+ \divide\@tempcnta #1\relax
+ \ifnum #2>0\advance\@tempcnta 1\relax\fi
+ \multiply\@tempcnta #1\relax
+ \edef\coordsys@a{\the\@tempcnta}%
+ \@tempcntb=#3\relax
+ \ifnum\@tempcnta<\@tempcntb\relax
+ \advance\@tempcntb -\@tempcnta\relax
+ \divide\@tempcntb #1\relax
+ \edef\coordsys@b{\the\@tempcntb}%
+ \multiput(\coordsys@a,#4)(#1,0)\coordsys@b
+ {\h@logbox{#1}{#5}}%
+ \thick@ticks
+ \@tempcntb=\coordsys@b\relax
+ \advance\@tempcntb 1\relax
+ \edef\coordsys@b{\the\@tempcntb}%
+ \multiput(\coordsys@a,#4)(#1,0)\coordsys@b
+ {#5}%
+ \if@numbline
+ \setcounter{@coord}{\coordsys@a}%
+ \divide\c@@coord #1\relax
+ \multiput(\coordsys@a,#4)(#1,0)\coordsys@b{%
+ \sethlabel{\loglabel{\arabic{@coord}}}%
+ \stepcounter{@coord}}%
+ \fi
+ \fi
+}
+\newcommand{\@setvlogticks}[5]{%
+ \thin@ticks
+ \@tempcnta=#2\relax
+ \ifnum\@tempcnta>0\advance\@tempcnta -1\relax\fi
+ \divide\@tempcnta #1\relax
+ \ifnum #2>0\advance\@tempcnta 1\relax\fi
+ \multiply\@tempcnta #1\relax
+ \edef\coordsys@a{\the\@tempcnta}%
+ \@tempcntb=#3\relax
+ \ifnum\@tempcnta<\@tempcntb\relax
+ \advance\@tempcntb -\@tempcnta\relax
+ \divide\@tempcntb #1\relax
+ \edef\coordsys@b{\the\@tempcntb}%
+ \multiput(#4,\coordsys@a)(0,#1)\coordsys@b
+ {\v@logbox{#1}{#5}}%
+ \thick@ticks
+ \@tempcntb=\coordsys@b\relax
+ \advance\@tempcntb 1\relax
+ \edef\coordsys@b{\the\@tempcntb}%
+ \multiput(#4,\coordsys@a)(0,#1)\coordsys@b
+ {#5}%
+ \if@numbline
+ \setcounter{@coord}{\coordsys@a}%
+ \divide\c@@coord #1\relax
+ \multiput(#4,\coordsys@a)(0,#1)\coordsys@b{%
+ \setvlabel{\loglabel{\arabic{@coord}}}%
+ \stepcounter{@coord}}%
+ \fi
+ \fi
+}
+\newcommand{\logline}{%
+ \@ifstar{\@numblinefalse\hlogline@i}
+ {\@numblinetrue \hlogline@i}}
+\newcommand{\hlogline@i}[1][50]{\leavevmode\hlogline@ii{#1}}
+\newcommand{\hlogline@ii}[3]{{\color@begingroup
+ \thinlines
+ \@tempcnta=#3\relax
+ \advance\@tempcnta -#2\relax
+ \edef\coordsys@w{\the\@tempcnta}%
+ \put(#2,0){\vector(1,0){\coordsys@w}}%
+ \@sethlogticks{#1}{#2}{#3}{0}{\vtickmark}
+ \color@endgroup}%
+ \def\coordsys@w{0}%
+}
+\newcommand{\vlogline}{%
+ \@ifstar{\@numblinefalse\vlogline@i}
+ {\@numblinetrue \vlogline@i}}
+\newcommand{\vlogline@i}[1][50]{\leavevmode\vlogline@ii{#1}}
+\newcommand{\vlogline@ii}[3]{{\color@begingroup
+ \thinlines
+ \@tempcnta=#3\relax
+ \advance\@tempcnta -#2\relax
+ \edef\coordsys@h{\the\@tempcnta}%
+ \put(0,#2){\vector(0,1){\coordsys@h}}%
+ \@setvlogticks{#1}{#2}{#3}{0}{\htickmark}
+ \color@endgroup}%
+ \def\coordsys@h{0}%
+}
+\newcommand{\logsys}{%
+ \def\coordsys@c{\logsys@i}%
+ \def\@hticksep{10}%
+ \def\@vticksep{50}%
+ \@ifstar{\@numblinefalse\logsys@args@i}
+ {\@numblinetrue \logsys@args@i}}
+\newcommand{\logsys@args@i}[1][\@hticksep]{\leavevmode
+ \edef\@hticksep{#1}%
+ \logsys@args@ii}
+\newcommand{\logsys@args@ii}[1][\@vticksep]{%
+ \edef\@vticksep{#1}%
+ \coordsys@args@iii}
+\def\logsys@i#1#2(#3,#4){{\color@begingroup
+ \thinlines
+ \@tempcnta=#3\relax
+ \advance\@tempcnta -#1\relax
+ \edef\coordsys@w{\the\@tempcnta}%
+ \put(#1,#2){\vector(1,0){\coordsys@w}}%
+ \@tempcnta=#4\relax
+ \advance\@tempcnta -#2\relax
+ \edef\coordsys@h{\the\@tempcnta}%
+ \put(#1,#2){\vector(0,1){\coordsys@h}}%
+ \@set@ticks{\hthickratio}{\@hticksep}{#1}{#3}{6\p@}{%
+ \multiput(\coordsys@a,#2)(\coordsys@c,0)\coordsys@b\vtickmark}%
+ \if@numbline
+ \setcounter{@coord}{\coordsys@a}%
+ \multiput(\coordsys@a,#2)(\coordsys@c,0)\coordsys@b{%
+ \edef\coordsys@a{\arabic{@coord}}%
+ \sethlabel{\hlabel{\coordsys@a}}%
+ \addtocounter{@coord}{\coordsys@c}}%
+ \fi
+ \@setvlogticks{\@vticksep}{#2}{#4}{#1}{\htickmark}%
+ \color@endgroup}%
+ \def\coordsys@h{#1}%
+ \def\coordsys@w{#2}%
+}
+\newcommand{\semilogsys}{%
+ \def\coordsys@c{\semilogsys@i}%
+ \def\@hticksep{50}%
+ \def\@vticksep{10}%
+ \@ifstar{\@numblinefalse\logsys@args@i}
+ {\@numblinetrue \logsys@args@i}}
+\def\semilogsys@i#1#2(#3,#4){{\color@begingroup
+ \thinlines
+ \@tempcnta=#3\relax
+ \advance\@tempcnta -#1\relax
+ \edef\coordsys@w{\the\@tempcnta}%
+ \put(#1,#2){\vector(1,0){\coordsys@w}}%
+ \@tempcnta=#4\relax
+ \advance\@tempcnta -#2\relax
+ \edef\coordsys@h{\the\@tempcnta}%
+ \put(#1,#2){\vector(0,1){\coordsys@h}}%
+ \@sethlogticks{\@hticksep}{#1}{#3}{#2}{\vtickmark}%
+ \@set@ticks{\vthickratio}{\@vticksep}{#2}{#4}{6\p@}{%
+ \multiput(#1,\coordsys@a)(0,\coordsys@c)\coordsys@b\htickmark}%
+ \if@numbline
+ \setcounter{@coord}{\coordsys@a}%
+ \multiput(#1,\coordsys@a)(0,\coordsys@c)\coordsys@b{%
+ \edef\coordsys@a{\arabic{@coord}}%
+ \setvlabel{\vlabel{\coordsys@a}}%
+ \addtocounter{@coord}{\coordsys@c}}%
+ \fi
+ \color@endgroup}%
+ \def\coordsys@h{#1}%
+ \def\coordsys@w{#2}%
+}
+\newcommand{\loglogsys}{%
+ \def\coordsys@c{\loglogsys@i}%
+ \def\@hticksep{50}%
+ \def\@vticksep{50}%
+ \@ifstar{\@numblinefalse\logsys@args@i}
+ {\@numblinetrue \logsys@args@i}}
+\def\loglogsys@i#1#2(#3,#4){{\color@begingroup
+ \thinlines
+ \@tempcnta=#3\relax
+ \advance\@tempcnta -#1\relax
+ \edef\coordsys@w{\the\@tempcnta}%
+ \put(#1,#2){\vector(1,0){\coordsys@w}}%
+ \@tempcnta=#4\relax
+ \advance\@tempcnta -#2\relax
+ \edef\coordsys@h{\the\@tempcnta}%
+ \put(#1,#2){\vector(0,1){\coordsys@h}}%
+ \@sethlogticks{\@hticksep}{#1}{#3}{#2}{\vtickmark}%
+ \@setvlogticks{\@vticksep}{#2}{#4}{#1}{\htickmark}%
+ \color@endgroup}%
+ \def\coordsys@h{#1}%
+ \def\coordsys@w{#2}%
+}
+\newcommand{\loggrid}{%
+ \def\@hticksep{10}%
+ \def\@vticksep{50}%
+ \@numblinefalse
+ \@ifstar{\def\coordsys@c{\loggrid@ii}\logsys@args@i}
+ {\def\coordsys@c{\loggrid@i}\logsys@args@i}}
+\def\loggrid@i#1#2(#3,#4){{\color@begingroup
+ \coordgrid@calc
+ \grid@style
+ \@set@ticks{\hthickratio}{\@hticksep}{#1}{#3}{\z@}{%
+ \multiput(\coordsys@a,0)(\coordsys@c,0)\coordsys@b
+ {\vgridfromto{#2}{#4}}}%
+ \@setvlogticks{\@vticksep}{#2}{#4}{0}{\hgridfromto{#1}{#3}}%
+ \color@endgroup}}
+\def\loggrid@ii#1#2(#3,#4){{\color@begingroup
+ \grid@style
+ \@tempcnta=#3\relax
+ \advance\@tempcnta -#1\relax
+ \edef\coordsys@w{\the\@tempcnta}%
+ \@tempcnta=#4\relax
+ \advance\@tempcnta -#2\relax
+ \edef\coordsys@h{\the\@tempcnta}%
+ \@set@ticks{\hthickratio}{\@hticksep}{#1}{#3}{\z@}{%
+ \multiput(\coordsys@a,#2)(\coordsys@c,0)\coordsys@b
+ {\vgridlength{\coordsys@h}}}%
+ \@setvlogticks{\@vticksep}{#2}{#4}{#1}{\hgridlength{\coordsys@w}}%
+ \color@endgroup}}
+\newcommand{\semiloggrid}{%
+ \def\@hticksep{50}%
+ \def\@vticksep{10}%
+ \@numblinefalse
+ \@ifstar{\def\coordsys@c{\semiloggrid@ii}\logsys@args@i}
+ {\def\coordsys@c{\semiloggrid@i}\logsys@args@i}}
+\def\semiloggrid@i#1#2(#3,#4){{\color@begingroup
+ \coordgrid@calc
+ \grid@style
+ \@sethlogticks{\@hticksep}{#1}{#3}{0}{\vgridfromto{#2}{#4}}%
+ \@set@ticks{\vthickratio}{\@vticksep}{#2}{#4}{\z@}{%
+ \multiput(0,\coordsys@a)(0,\coordsys@c)\coordsys@b
+ {\hgridfromto{#1}{#3}}}%
+ \color@endgroup}}
+\def\semiloggrid@ii#1#2(#3,#4){{\color@begingroup
+ \grid@style
+ \@tempcnta=#3\relax
+ \advance\@tempcnta -#1\relax
+ \edef\coordsys@w{\the\@tempcnta}%
+ \@tempcnta=#4\relax
+ \advance\@tempcnta -#2\relax
+ \edef\coordsys@h{\the\@tempcnta}%
+ \@sethlogticks{\@hticksep}{#1}{#3}{#2}{\vgridlength{\coordsys@h}}%
+ \@set@ticks{\vthickratio}{\@vticksep}{#2}{#4}{\z@}{%
+ \multiput(#1,\coordsys@a)(0,\coordsys@c)\coordsys@b
+ {\hgridlength{\coordsys@w}}}%
+ \color@endgroup}}
+\newcommand{\logloggrid}{%
+ \def\@hticksep{50}%
+ \def\@vticksep{50}%
+ \@numblinefalse
+ \@ifstar{\def\coordsys@c{\logloggrid@ii}\logsys@args@i}
+ {\def\coordsys@c{\logloggrid@i}\logsys@args@i}}
+\def\logloggrid@i#1#2(#3,#4){{\color@begingroup
+ \coordgrid@calc
+ \grid@style
+ \@sethlogticks{\@hticksep}{#1}{#3}{0}{\vgridfromto{#2}{#4}}%
+ \@setvlogticks{\@vticksep}{#2}{#4}{0}{\hgridfromto{#1}{#3}}%
+ \color@endgroup}}
+\def\logloggrid@ii#1#2(#3,#4){{\color@begingroup
+ \grid@style
+ \@tempcnta=#3\relax
+ \advance\@tempcnta -#1\relax
+ \edef\coordsys@w{\the\@tempcnta}%
+ \@tempcnta=#4\relax
+ \advance\@tempcnta -#2\relax
+ \edef\coordsys@h{\the\@tempcnta}%
+ \@sethlogticks{\@hticksep}{#1}{#3}{#2}{\vgridlength{\coordsys@h}}%
+ \@setvlogticks{\@vticksep}{#2}{#4}{#1}{\hgridlength{\coordsys@w}}%
+ \color@endgroup}}
+\endinput
+%%
+%% End of file `logsys.sty'.