大于 360 度的角度是一个更深层次的问题

大于 360 度的角度是一个更深层次的问题

我在 2012 年的 Stack Exchange 中找到了这段代码,我很喜欢这个想法的总体思路,但是,它似乎并没有按照我希望的方式工作。我研究了各种螺旋代码,但没有一个能真正完成原始代码的功能。

我对代码的问题是我不知道如何开始螺旋。理想情况下,我想选择螺旋的起始位置,例如 (0.5,0),但当我运行此代码时,它似乎只从 1 开始。然后它绘制了一个相当大的螺旋,我也想控制它。我想要比这更多的控制,有没有办法修改此代码来做我想要的事情?

如果这很重要的话,我会在 pgfplot 环境中运行它。

\documentclass[11pt]{scrartcl}
 \usepackage{tikz}
 \usetikzlibrary{arrows}

 \begin{document} 

 \newcommand\bigangle[2][]{% 
    \draw[->,domain=0:#2,variable=\t,samples=200,>=latex,#1]
      plot ({(\t+#2)*cos(\t)/(#2)},
           {(\t+#2)*sin(\t)/(#2)}) node[right=.5cm] {$#2^\circ$}
        ;}

 \begin{tikzpicture}
 \draw [thick] ( 0,0) -- (3,0);
 \draw [thick] ( 0,0) -- (0,3); 
 \draw [red,thick] ( 0,0) -- (400:3); 
 \bigangle[blue,dashed]{400}      
 \end{tikzpicture}
 \end{document}

更新:我正在尝试使用这个代码思想在我的单位圆内绘制,所以我尝试将它放在这个代码中:

    \begin{tikzpicture}[scale=1.2]
        \begin{axis}[
            minor tick num=1,
            ticks=none,
            axis x line=middle,
            axis y line=middle,
            ymax=1.5,
            ymin=-1.5,
            xmin=-1.5,
            xmax=1.7
            ]
            \addplot[blue,domain=-1:1, samples=100] {(1 - x^2)^0.5};
            \addplot[blue,domain=-1:1, samples=100] {-(1 - x^2)^0.5};
            \addplot[blue, domain=0:1,]{0}node[below left, black]{$360^{\circ}$};
            \draw [red,thick] ( 0,0) -- (400:1); 
            \bigangle[blue,dashed,]{400}; 
        \end{axis}
    \end{tikzpicture}

答案1

\documentclass[11pt]{scrartcl}
\usepackage{tikz}
\usetikzlibrary{arrows}

\begin{document} 
    
    \newcommand\bigangle[2][]{% 
        \draw[->,domain=0:#2,variable=\t,samples=200,>=latex,#1]
        plot ({(\t+2*#2)*cos(\t)/(2*#2)},
        {(\t+2*#2)*sin(\t)/(2*#2)}) node[right=.5cm] {$#2^\circ$}
        ;}
    
    \begin{tikzpicture}
        \draw [thick] ( 0,0) -- (3,0);
        \draw [thick] ( 0,0) -- (0,3); 
        \draw [red,thick] ( 0,0) -- (400:3); 
        \bigangle[blue,dashed]{400};  
    \end{tikzpicture}
    \begin{tikzpicture}
        \draw [thick] ( 0,0) -- (3,0);
        \draw [thick] ( 0,0) -- (0,3); 
        \draw [red,thick] ( 0,0) -- (400:3); 
        \bigangle[blue,dashed]{760};  
    \end{tikzpicture}
    \begin{tikzpicture}
        \draw [thick] ( 0,0) -- (3,0);
        \draw [thick] ( 0,0) -- (0,3); 
        \draw [red,thick] ( 0,0) -- (60:3); 
        \bigangle[blue,dashed]{1140}   
    \end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容