TikZ:在边缘末端放置坐标或节点

TikZ:在边缘末端放置坐标或节点

如何在边缘末端放置节点或坐标?

我期望这种语法:

\draw (0,0) edge +(1,1) coordinate (x);

因为与命令的语法相同--,所以它有效:

\draw (0,0) -- +(1,1) coordinate (x);

但这是我预期边缘之间会有一条红线时的结果。看起来和edge oneedge 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)等)。

相关内容