我有一条从 到(0,0)
的线(4,4)
。我想沿着这条线放置一个节点,距离 (0,0) 坐标(起点) 75%“远”。
到目前为止我所见过的所有实现此目的的方法都建议这样做
\draw (0,0) -- (4,4) node [pos=0.75] (TextNode) {text};
即线和节点一起定义。
假设我先画一条线,现在我该如何插入一个新\node
命令以便它继承已经绘制的线的“数据”,然后将节点沿着它放置,75%“远离”?
我设想的是
\documentclass{minimal}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) -- (4,4) node [] (line) {};
\node (TextNode) at (line) [pos=0.75] {text};
\end{tikzpicture}
\end{document}
但[pos=0.75]
没有效果,并且节点位于(0,0)
。
答案1
两个选项:
- 用
\path
超过线并绘制一个node [pos=0.75]
。 - 使用
calc
带有语法的库($(A)!0.75!(B)$)
,指定 A 和 B 之间的点,其距离比为 0.75:0.25。
\documentclass[tikz,border=1.618mm]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (4,4);
\draw (A) -- (B);
\path (A) -- (B) node [blue,pos=0.75] {text at 0.75};
\node[red] at ($(A)!0.25!(B)$) {text at 0.25};
\end{tikzpicture}
\end{document}