我画了很多看起来像这样的路径:
\draw (1) to [out=up, in=down] (2) to [out=up, in=down] (3) to [out=up, in=45] (3);
我可以将 [out=up, in=down] 部分设置为全局默认值,以避免我必须为每个段指定它吗?我仍然需要能够偶尔覆盖这些默认值,就像上面示例中的 in=45 段一样。所以我希望能够编写类似这样的代码:
\setdefaults{out=up, in=down};
\draw (1) to (2) to (3) to [in=45] (4);
答案1
另一种方法是使用every to
样式。它会自动插入到...等待它...每个的开头。所以to[something]
实际上是to[every to/.try,something]
(.try
是一个故障保护,以确保如果every to
没有定义,则不会发生错误)。因此:
\documentclass{article}
%\url{http://tex.stackexchange.com/q/33521/86}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[every to/.style={out=up,in=down}]
\draw (1,0) to (2,0) to (3,0) to [in=45] (4,0);
\end{tikzpicture}
\end{document}
产生与 Torbjørn 的例子完全相同的行。
这种方法的优点是它与图片中的其他内容配合得很好。之所以\tikzset{in=up,out=down}
安全,是因为键in
和out
只对 s 有意义to
。但是,如果您想在 every 中放入在to
其他地方有意义的其他内容(现在想不出什么……),那么every to
将选项仅传递给零件是更好的方法to
。
答案2
您可以将其添加为tikzpicture
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[out=up,in=down]
\draw (1,0) to (2,0) to (3,0) to [in=45] (4,0);
\end{tikzpicture}
\end{document}
或者使用\tikzset
命令
\documentclass{article}
\usepackage{tikz}
\tikzset{out=up,in=down}
\begin{document}
\begin{tikzpicture}
\draw (1,0) to (2,0) to (3,0) to [in=45] (4,0);
\end{tikzpicture}
\end{document}