Можно ли использовать маркировку декора с кромкой?

Можно ли использовать маркировку декора с кромкой?

Первоначальный код:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations} 
\usetikzlibrary{decorations.markings}
\begin{document}

\pgfkeys{
/pgf/decoration/.cd,
pre fraction/.style={pre length=#1*\pgfmetadecoratedpathlength},
post fraction/.style={post length=#1*\pgfmetadecoratedpathlength}
}

\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (4,2);

\draw [  
decoration={ 
curveto,
pre=moveto, pre fraction=0,
post=moveto, post fraction=0.3}, decorate, red, ultra thick] (A) to[out=0,in=-90](B);

\draw [decoration={curveto,
                   pre=moveto, pre fraction=0.7,
                   post=moveto, post fraction=0},%
       decorate, blue, ultra thick,dotted] (A) to [out=0,in=-90](B); 

\path [  
decoration={ 
     markings, mark=at position .7  with {\arrow[red,line width=2pt]{>}}},  
     decorate  ] (A) to[out=0,in=-90](B);         
\end{tikzpicture} 

\end{document}

введите описание изображения здесь

Возникает проблема, если я хочу заменить toна edge. В некоторых случаях замена полезна.

Можно ли использовать изготовление с кромкой? и как?

Я думаю, что проблема в том, что edgeоперация работает как toоперация, которая добавляется после того, как был нарисован основной контур. Я часто получаю ошибку, что markingне работает на пустом контуре!

решение1

Наконец я нашел ответ здесь:texblog.netв статье:Украсьте дорожку TikZ. (Автор: Стефан Коттвиц, спасибо!). Не знаю, почему я не подумал раньше. Есть много вопросов, связанных с использованием, edgeкоторые можно решить так, например:Странная стрелочная метка с кромкой TikZ и якорями.

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations} 
\usetikzlibrary{decorations.markings}
\begin{document}

\begin{tikzpicture}
  \tikzset{every loop/.style={min distance=20mm,in=0,out=60,looseness=10}} 

   \draw (0,0) node[circle,draw]{A} edge[red,loop]  ();    
 \path[decoration={ 
     markings, mark=at position .7  with {\arrow[blue,line width=1pt]{>}}}] (0,0) node[circle]{A} edge[decorate,loop]  ();
\end{tikzpicture}

\end{document}

введите описание изображения здесь

Связанный контент