I have the following problem with tikz: I want to draw some circular arcs, but unfortunately these arcs have degrees which pass the 360° line. I would like to be able to draw these arcs with one single command, but I can't figure out how to do it. If I give the arc commands two angles where the first is larger than the second, tikz will simply interchange the angles before drawing them.
% radius, two angles, node attribute/name
\newcommand{\drawarc}[5]
{
\draw[gray, very thin] (0,0) -- (#2:#1);
\draw (#2:#1) arc(#2:#3:#1);
\draw[gray, very thin] (0,0) -- (#3:#1);
\draw({(#2+#3)/2}:#1) node[#4] {#5};
}
\begin{tikzpicture}[scale=4]
\drawarc{1cm}{80}{100}{above}{1};
\drawarc{0.9cm}{60}{110}{below}{2};
\drawarc{0.75cm}{20}{85}{below left}{4};
\drawarc{0.8cm}{95}{150}{below right}{3};
\drawarc{1cm}{105}{200}{above}{5};
% I would like to replace these 2 commands
% by one, drawing an arc from 195 to 75 degrees
\drawarc{1.2cm}{195}{360}{above}{6};
\drawarc{1.2cm}{0}{75}{}{};
\drawarc{1.3cm}{160}{280}{left}{8};
\drawarc{0.9cm}{140}{190}{right}{7};
% and the same here
\drawarc{1cm}{260}{360}{above left}{9};
\drawarc{1cm}{0}{40}{}{};
\end{tikzpicture}
I am bounding every arc by lines from/to (0,0), so if I draw multiple arcs where I only need one, the additional lines look somewhat crappy.
Best Answer
You can use angles greater than 360!
Replace your 4 lines with the following two:
and
to get the desired result: