# Why doesn't TikZ arc support rotate?

It is easy enough to implement using \pgfpatharcaxes and \pgfpointpolarxy.

\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw[red] (0,0) arc[x radius=2, y radius=1, rotate=-45,
start angle=0, end angle=180];

\pgfpathmoveto{\pgfpointorigin}
\pgfpatharcaxes{0}{180}{\pgfpointpolarxy{-45}{2}}%
{\pgfpointpolarxy{-45+90}{1}}
\pgfusepath{draw}
\end{tikzpicture}
\end{document}


• Give it to \draw as an option – percusse Jan 17 '18 at 16:34
• @percusse - I was trying to use it with \clip (see tex.stackexchange.com/questions/408245/…). – John Kormylo Jan 17 '18 at 16:36
• You can also add [rotate=-45] just before arc[...]: \draw[red] (0,0) [rotate=-45] arc[x radius=2, y radius=1, start angle=0, end angle=180];. – Paul Gaborit Jan 17 '18 at 16:48
• @PaulGaborit - I wasn't aware the TikZ parser could do that. Would you like to submit that as an answer to close the question? – John Kormylo Jan 17 '18 at 16:50
• @JohnKormylo See p.146, pgfmanual, v3.0.1a: At any point where TikZ expects a path operation, you can also give some graphic options, which is a list of options in brackets... – Paul Gaborit Jan 17 '18 at 16:58

TikZ arc uses PGF \pgfpatharc and it doesn't have flexibility in adding transformations.

Instead you can add a inline scope

\begin{tikzpicture}
\draw[red] (0,0) --(1,1) {[rotate=-45] arc[x radius=2, y radius=1, start angle=0,
end angle=180] -- (-1,1)} -- (-1,1) -- cycle;
\end{tikzpicture}


• In your example, the inline scope is not required... – Paul Gaborit Jan 17 '18 at 16:54
• I noticed that the effect is cumulative otherwise. – John Kormylo Jan 17 '18 at 16:54
• @PaulGaborit Added an example for which you need one – percusse Jan 17 '18 at 16:55
• @percusse This new example is much better. ;-) – Paul Gaborit Jan 17 '18 at 16:56