假设我有两个点在单位圆上分别对应于 x 轴的 30 度和 60 度。
我想在这两点之间画一条线。
\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\usepackage{calculator}
\usetikzlibrary{rulercompass}
\usetikzlibrary{intersections,quotes,angles}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\draw (\cos(30), \sin(30)) -- (\cos(60), \sin(60));
\end{tikzpicture}
\end{document}
但这并没有执行。
正确的方法是什么?
答案1
你是几乎有两件事需要解决:
\cos
是定义用于排版的宏cos
。要让 PGF 将其解析为余弦函数,您必须删除反斜杠,并让其将三个字母c
,o
,解析s
为函数名称。当 Ti钾Z 查找坐标时使用分隔宏,因此当您执行此操作时,它会在和下一个
(cos(30), sin(30))
之间查找某个东西,即,事情会变得很奇怪 :)。为了避免这种情况,您可以将括号“隐藏”在括号中:。(
)
cos(30
({cos(30)}, {sin(30)})
那么它将起作用:
\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\usepackage{calculator}
\usetikzlibrary{rulercompass}
\usetikzlibrary{intersections,quotes,angles}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\draw ({cos(30)}, {sin(30)}) -- ({cos(60)}, {sin(60)});
\end{tikzpicture}
\end{document}
答案2
答案3
PSTricks 解决方案只是为了好玩!
\documentclass[pstricks,border=12pt]{standalone}
\begin{document}
\pspicture(-1,-1)(1,1)
\psline(1;30)(1;60)
\endpspicture
\end{document}