поставьте отметку в указанной точке вдоль путиобсуждается размещение отметки на сложном пути, но размещение отметки на простой прямой линии тем не менее является сложной задачей.
Я попробую:
\documentclass[border=1cm]{standalone}
\usepackage{tikz}
\usetikzlibrary{decorations.markings}
\begin{document}
\begin{tikzpicture}
\coordinate (A) at (0, 0);
\coordinate (B) at (1, 3);
\draw (A) -- (B);
\path [
postaction={decorate},
decoration={
markings,
mark = at position {0.1\dimexpr\pgfdecoratedpathlength\relax} with {fill = red circle (0.5cm)}
}
] (A) -- (B) ;
\end{tikzpicture}
\end{document}
В выходных данных
знака нигде не видно.
Что не так и как исправить?
решение1
решение2
Не уверен, откуда вы взяли этот синтаксис для знака, вам нужно
mark = at position 0.1 with {\fill [red] circle (0.5cm);}
Как заметил в комментарии кот Шредингера, вам \pgfdecorationpathlength
вообще ничего не нужно, число интерпретируется как дробное расстояние вдоль пути. (Если вы хотите использовать \pgfdirectionpathlength
, достаточно 0.1*\pgfdecoratedpathlength
просто, не \dimexpr
нужно.) А фактическая отметка должна быть правильным путем.
\documentclass[border=1cm]{standalone}
\usepackage{tikz}
\usetikzlibrary{decorations.markings}
\begin{document}
\begin{tikzpicture}
\coordinate (A) at (0, 0);
\coordinate (B) at (1, 3);
\draw (A) -- (B);
\path [
postaction={decorate},
decoration={
markings,
mark = at position 0.1 with {\fill [red] circle [radius=0.1cm];}
}
] (A) -- (B) ;
\end{tikzpicture}
\end{document}