% Copyright 2007-2009 by Massimo Redaelli % % This file may be distributed and/or modified % % 1. under the LaTeX Project Public License and/or % 2. under the GNU Public License. % % See the file doc/LICENSE for more details. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Math routines \def\pgf@circ@stripdecimals#1.#2\pgf@nil{#1} % angle between 0 and 360 \def\pgf@circ@slope#1#2{% \pgf@process{#1}% \pgf@xa=\pgf@x% \pgf@ya=\pgf@y% \pgf@process{#2}% \advance\pgf@x by-\pgf@xa% \advance\pgf@y by-\pgf@ya% \ifdim\pgf@x<0.0001pt \ifdim\pgf@x>-0.0001pt % vertical \ifdim\pgf@y<0pt \def\pgfmathresult{-90.0} \else \def\pgfmathresult{+90.0} \fi \else % oblique with dx < 0 \pgfmathdivide{\pgf@y}{\pgf@x} \pgfmathatan{\pgfmathresult} \ifdim\pgf@x<0pt \pgfmathsubtract{\pgfmathresult}{+180} \fi \fi \else % oblique with dx > 0 \pgfmathdivide{\pgf@y}{\pgf@x} \pgfmathatan{\pgfmathresult} \ifdim\pgf@x<0pt \pgfmathsubtract{\pgfmathresult}{+180} \fi \fi \pgf@x=\pgfmathresult pt \ifdim\pgf@x<0pt \pgfmathadd{\pgfmathresult}{+360} \fi } \endinput