![TikZ:在边缘末端放置坐标或节点](https://linux22.com/image/438258/TikZ%EF%BC%9A%E5%9C%A8%E8%BE%B9%E7%BC%98%E6%9C%AB%E7%AB%AF%E6%94%BE%E7%BD%AE%E5%9D%90%E6%A0%87%E6%88%96%E8%8A%82%E7%82%B9.png)
如何在边缘末端放置节点或坐标?
我期望这种语法:
\draw (0,0) edge +(1,1) coordinate (x);
因为与命令的语法相同--
,所以它有效:
\draw (0,0) -- +(1,1) coordinate (x);
但这是我预期边缘之间会有一条红线时的结果。看起来和edge one
都edge two
在(0,0)
:
\documentclass[margin=1cm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0)
edge +(20:3cm) coordinate (edge one)
edge +(110:3cm) coordinate (edge two);
\draw[red] (edge one) -- (edge two);
\end{tikzpicture}
\end{document}
我预期使用时会出现此结果--
:
\documentclass[margin=1cm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) -- +(20:3cm) coordinate (edge one)
(0,0) -- +(110:3cm) coordinate (edge two);
\draw[red] (edge one) -- (edge two);
\end{tikzpicture}
\end{document}
答案1
解决方法如下:
\documentclass[margin=1cm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0)
edge coordinate[pos=1,pin=1] (edge one) +( 20:3cm)
edge coordinate[pos=1,pin=2] (edge two) +(110:3cm) ;
\draw[red] (edge one) -- (edge two);
\end{tikzpicture}
\end{document}
我添加了pin
坐标,以使其位置清晰可见(您可以从选项中删除它们coordinate
,即只写入coordinate[pos=1] (edge one)
等)。