summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXu Yuan <xu@informatik.hu-berlin.de>2011-11-18 19:01:03 +0100
committerXu Yuan <xu@informatik.hu-berlin.de>2011-11-18 19:01:03 +0100
commitf4c52be3247acd09635786d496aa8d00e67992b7 (patch)
tree2ecbd918f79c2f5ff6c7672f7626d0b7ed302ac8
parente268fecc18fec7afd0205ec616bb37d2096f38aa (diff)
downloadpgf-pie-f4c52be3247acd09635786d496aa8d00e67992b7.tar.gz
pgf-pie-f4c52be3247acd09635786d496aa8d00e67992b7.tar.bz2
pgf-pie-f4c52be3247acd09635786d496aa8d00e67992b7.zip
use length instead of counter for floating calculation
-rw-r--r--dev/pgf-pie.sty18
1 files changed, 9 insertions, 9 deletions
diff --git a/dev/pgf-pie.sty b/dev/pgf-pie.sty
index 283a5b7..e3e50de 100644
--- a/dev/pgf-pie.sty
+++ b/dev/pgf-pie.sty
@@ -122,8 +122,7 @@ chart by using PGF/Tikz package.]
}
}
-\newcounter{pgfpie@angleBegin}
-\newcounter{pgfpie@angleEnd}
+\newlength{\pgfpie@angleEnd}
\newcounter{pgfpie@explodeLength}
\newcounter{pgfpie@colorLength}
\newcounter{pgfpie@sliceLength}
@@ -235,7 +234,7 @@ chart by using PGF/Tikz package.]
\setcounter{pgfpie@colorLength}{0}
\foreach \c in \color { \addtocounter{pgfpie@colorLength}{1} }
- \setcounter{pgfpie@angleEnd}{0}
+ \pgfmathsetlength{\pgfpie@angleEnd}{0}
\setcounter{pgfpie@sliceLength}{0}
\foreach \p/\e in {#2} { \addtocounter{pgfpie@sliceLength}{1} }
@@ -385,18 +384,19 @@ chart by using PGF/Tikz package.]
\xdef\theradius{\radius}
\fi
+ \xdef\pgfpie@angleBegin{\the\pgfpie@angleEnd}
% drawing loop
\foreach \p/\t [count=\i from 0] in {#2}
{
- \setcounter{pgfpie@angleBegin}{\value{pgfpie@angleEnd}}
+ \pgfmathsetlength{\pgfpie@angleEnd}{\pgfpie@angleBegin}
\ifpolar
% Polar area diagram
- \addtocounter{pgfpie@angleEnd}{\polarangle}
+ \pgfmathaddtolength{\pgfpie@angleEnd}{\polarangle}
\pgfmathparse{sqrt(\p) * \polarRadiusUnit}
\xdef\theradius{\pgfmathresult}
\else
% normal pie
- \addtocounter{pgfpie@angleEnd}{\p}
+ \pgfmathaddtolength{\pgfpie@angleEnd}{\p}
\fi
% find explode
@@ -404,15 +404,15 @@ chart by using PGF/Tikz package.]
% find color
\pgfpie@findColor{\i}
-
- \pgfpie@slice{\thepgfpie@angleBegin/\sum*360+\rotate}
- {\thepgfpie@angleEnd/\sum*360+\rotate}
+ \pgfpie@slice{\pgfpie@angleBegin/\sum*360+\rotate}
+ {\the\pgfpie@angleEnd/\sum*360+\rotate}
{\p}
{\t}
{\theexplode}
{\thecolor}
{\theradius}
{\pos}
+ \xdef\pgfpie@angleBegin{\the\pgfpie@angleEnd}
}
%%%%%%%%%% CIRCLE PIE END %%%%%%%%%%%
\fi