
假設有一條從A 到B 的線。 ( y=0 位於線 AB 的方向,90=線 AB 方向左側 90 度,依此類推)並在此處放置文字。
以下命令,
\node at ($(A)!0.5!10:(B)$){x};
'x' 與水平面成 10 度角,圍繞 A(不是 50% 距離),半徑為 A 和 B 之間距離的 50%,但我喜歡有一個更通用的命令,可以在其中指定半徑和角度,相對於線距離的p% 的線方向,從A 開始。蒂亞! (對於令人困惑的描述/問題,我深表歉意!)
答案1
這就是本節最後一個例子13.5.4 pgfmanual v 3.1.4 距離修飾符的語法做。透過巢狀calc
語法,您可以將其中使用的指令組合為一個。
\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\coordinate (a) at (1,0);
\coordinate (b) at (3,1);
\draw (a) -- (b); \path ($ ($ (a)!.5!(b) $)!1cm!90:(b) $) node{x};
\end{tikzpicture}
\end{document}
如果您想重複使用這些東西,定義將分數、半徑和角度儲存在 pgf 鍵中的樣式可能是有意義的。
\documentclass[tikz]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}[between/.style args={#1 and #2}{/tikz/insert path={%
($ ($ (#1)!\pgfkeysvalueof{/tikz/mf67/fraction}!(#2)
$)!\pgfkeysvalueof{/tikz/mf67/radius}!\pgfkeysvalueof{/tikz/mf67/angle}:(#2) $)}},
mf67/.cd,fraction/.initial=.5,radius/.initial=1cm,angle/.initial=90,
]
\coordinate (A) at (1,0);
\coordinate (B) at (3,1);
\draw (A) -- (B);
\path[between=A and B] node{x};
\path[mf67/.cd,fraction=0.2,radius=1.5cm,angle=-30,/tikz/between=A and B] node{y};
\end{tikzpicture}
\end{document}