答案1
一个不太严肃的回答。
\documentclass{beamer}
\usepackage{tikz,animate}
\begin{document}
\begin{frame}{Don't speed}
\newcount\myangle
\animatevalue<1-40>{\myangle}{20}{140}
\animate<1-40>
\begin{tikzpicture}
\draw[-,line width=2mm,blue] (00:3) arc (00:180:3);
\draw[-latex,line width=1mm,red] (0:0) -- (\the\myangle:2.8);
\end{tikzpicture}
\only<40>{You got a ticket!}
\end{frame}
\end{document}
答案2
一个pstricks
办法:
\documentclass[svgnames, border = 5pt]{standalone}
\usepackage{amsfonts, amssymb}
\usepackage{upgreek}
\usepackage{graphicx}
\usepackage{pstricks-add}
% \usepackage{auto-pst-pdf}
\begin{document}
\everypsbox{\sffamily\bfseries}
\psset{linejoin = 1,dotsize = 2pt, linewidth = 1.2pt, veearrowangle =60, veearrowlength = 6pt, hatchwidth = 0.2pt, hatchsep = 1.5pt, ticks = none, labelsep = 1pt}
\begin{pspicture}(-3,-1)(3,4.4)
\psRing[fillstyle = solid, fillcolor = DeepSkyBlue!80! RoyalBlue](0,0)[40,200]{2}{2.4}%
%\psnodes(0,0)
\rput[t]{20}(2.2; 200){\psframe[fillstyle = hlines, linestyle = none](-0.4,0)(0.4,-0.25)}%
\psline(1.8; 200)(2.6; 200)
\psVector[arrows = *-v] <0, 0>(1.9; 120)\nbput{R}
\psset{veearrowlength = 4pt, dotsize = 1.2pt}
\rput{-30}(2.8; 80){%
\psVector[arrows = *-v] <0,0>(1,0)\psVector[arrows = *-v] <0,0>(0,1)
\psline(0,0.25)(0.25, 0.25)(0.25,0)\uput{2pt}[u](1,0){\rotatebox{30}{\mdseries\scriptsize w}}\uput{1pt}[l](0,1){\rotatebox{30}{$\scriptstyle \upvarphi $}}
\psarc[arrows = -> , arrowinset = 0.15](0,0.8){0.8}{-25}{205} \uput[l](-0.75,0.5){\rotatebox{30}{$\scriptstyle \uppsi $}}
}
\end{pspicture}
\end{document}
答案3
我没有安装 TeX Live,但以下代码应该可以工作。
\documentclass[pstricks,border=1cm]{standalone}
\def\MaxSpeed{300 }
\degrees[\the\numexpr\MaxSpeed*2]
\begin{document}
\foreach \i in {0,30,...,\MaxSpeed}{
\begin{pspicture}(-4,0)(4,3)
\psellipticarc[linecolor=blue](0,0)(4,3){0}{\MaxSpeed}
\psline[linecolor=red]{->}(!4 3 \i\space 3 5 div mul PtoCab)
\end{pspicture}}
\end{document}