数学在曲线的外角和内角上不起作用

数学在曲线的外角和内角上不起作用

我遇到了一个奇怪的错误。我正在使用 pgf/tikz 3.0.1 cvs 绘制一条有内角和外角的曲线。我正在使用数学计算来获得第二个坐标。奇怪的是,当我在 x 坐标中使用三角函数时,我得到了一个错误,但相同的表达式在 y 坐标中有效。我粘贴了下面的代码

    \documentclass{report}
    \usepackage{tikz}
    \usetikzlibrary{shapes,arrows.meta,positioning,calc,decorations.markings}
    \usepackage{float}
    \begin{document}
    \begin{figure}[H]
    \centering
    \begin{tikzpicture}
        \node at (0,0) {$xs$}; % initial point
        \node at (11.5,2) {$xg$}; % final point
        %\draw (0:0.375) to[out=0,in=210] ({11.5+0.375*cos(210)},{2+0.375*sin(210)}); 
                %Does not work
                \draw (0:0.375) to[out=0,in=210] ({11.5+0.375*0.5},{2+0.375*sin(210)});
                % Works fine
    \end{tikzpicture}
    \caption{title}
    \label{fig:trajs}
   \end{figure}
\end{document}

如果有人能帮助我,我将不胜感激。

答案1

您可以利用它\pgfmathsetmacro 来定义您的坐标。

\documentclass{report}
    \usepackage{tikz}
    \usetikzlibrary{shapes,arrows.meta,positioning,calc,decorations.markings}
    \usepackage{float}

    \pgfmathsetmacro\xcor{11.5+0.375*cos(210)}
    \pgfmathsetmacro\ycor{2+0.375*sin(210)}

    \begin{document}
    \begin{figure}[H]
    \centering
    \begin{tikzpicture}
        \node at (0,0) {$xs$}; % initial point
        \node at (11.5,2) {$xg$}; % final point
        \draw (0:0.375) to[out=0,in=210] (\xcor,\ycor); 
        \draw (0:0.375) to[out=0,in=210] ({11.5+0.375*0.5},{2+0.375*sin(210)});
                % Works fine
    \end{tikzpicture}
    \caption{title}
    \label{fig:trajs}
   \end{figure}
\end{document}

相关内容