Kaybolan ok ucu

Dec 28 2020

Yarıçap 0,7 veya daha küçükse iyi çalışan kavisli bir okum var. Ancak yarıçapı 0,8'e yükseltirsem ok başı kaybolur. Çeşitli parametreleri değiştirmek yardımcı olmuyor. Neler olduğunu ve daha geniş bir yarıçapı nasıl kullanabileceğimi anlamak istiyorum.

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

\begin{tikzpicture}

    % https://tex.stackexchange.com/a/169115/2737
    \tikzset{
    curveArrow/.style={
      thick,
      decoration={markings,mark=at position
       1 with {\arrow[scale=1.5,semithick]{open triangle 60[fill=white]}}},
      double distance=3.5pt, shorten >= 8pt,
      preaction = {decorate},
      postaction = {draw,line width=1.4pt, white,shorten >= 8.5pt}
      }
    }
    % changing radius from 0.7 to 0.8 makes the arrow head disappear
    \draw[curveArrow] (0,0) arc (90:270:0.7); 

\end{tikzpicture}

\end{document}

Yarıçap = 0.7

Yarıçap = 0.8

Yanıtlar

4 hpekristiansen Dec 30 2020 at 04:52

Tikz kitaplığı arrowskullanımdan kaldırıldı. markingsSadece bir yolun sonuna bir şey yerleştirmek için kullanmak biraz garip buluyorum - belki de bu sadece benim. Orijinal koddaki artefaktlar ve sorunlar içermeyen alternatif bir versiyon. Buradaki fikir, önce bir üçgen ok çizmek ve ardından çift çizgiyi dikey ok çizgisinin bir kısmını çizecek kadar tam uzunlukta yapmaktır.

\documentclass[tikz, border=1cm]{standalone}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}[
  curveArrow/.style={
    draw=none,
    preaction={draw, thick, -{Triangle[open, length=8pt 1, width=10pt]}},
    postaction={draw, thick, double distance=3.5pt, shorten >=8pt}
  }]
\draw[curveArrow] (0,0) arc (90:270:0.8); 
\end{tikzpicture}
\end{document}