I cannot figure out what I am doing wrong in this basic example. I want to have a function inside my expl3 code draw a simple picture with tikz, but I get an error Package pgf Error: No shape named 0:0 is known.
MWE
\documentclass{extbook}
\usepackage{tikz}
\usetikzlibrary{arrows,automata,positioning,calc}
% my command to draw an orange rectangle with tikz
\newcommand{\drawmyshape}{
\tikz[font=\normalsize]{
\draw[color=orange!50, fill=orange] (0:0) -- ++(\linewidth,0) -- ++(0,-2em) -- (0,-2em) -- (0,0);
}%%%%%
}%%%%%
\usepackage{xparse}%allows the NewDocumentCommand
\ExplSyntaxOn
%Why does the tikz code inside the expl3syntax break it? I need to be able to call this here.
\NewDocumentCommand{\drawmyshapeagain}{}{
\tikz[font=\normalsize]{
\draw[color=orange!50, fill=orange] (0:0) -- ++(\linewidth,0) -- ++(0,-2em) -- (0,-2em) -- (0,0);
}%%%%%
}%%%%%
\ExplSyntaxOff
\begin{document}
\drawmyshape
\drawmyshapeagain
\end{document}