我正在寻找如何在 tikz 中将 currarrow 用作新箭头。
尤其是它的大小与latex
或相同stealth
,并且比 更小triangle 45
。
你知道怎样做吗?
目前我用的node[currarrow, sloped, allow upside down, pos=1] {}
不是很方便...
答案1
一个带有硬编码值的快速概念定义,您可以将其与 Luigi 的好东西结合起来。它不适用于不同的线宽等,因为我没有做任何right/left extend
计算。
我从库中获取了 currarrow 定义circutikz
。它看起来与 scaled 没什么不同triangle 45
。我建议使用 Luigi 的定义并在必要时进行修改。
\documentclass[tikz]{standalone}
\usetikzlibrary{arrows}
\makeatletter
\pgfarrowsdeclare{mycurrarrow}{mycurrarrow}{
\pgfarrowsleftextend{-5\pgflinewidth}
\pgfarrowsrightextend{5\pgflinewidth}
}
{
\newlength\pgf@my@length
\pgf@my@length = 1cm
\divide \pgf@my@length by 16
\pgfpathmoveto{\pgfpoint{-.7\pgf@my@length}{0pt}}
\pgfpathlineto{\pgfpoint{-.7\pgf@my@length}{-.8\pgf@my@length}}
\pgfpathlineto{\pgfpoint{1\pgf@my@length}{0pt}}
\pgfpathlineto{\pgfpoint{-.7\pgf@my@length}{.8\pgf@my@length}}
\pgfpathlineto{\pgfpoint{-.7\pgf@my@length}{0pt}}
\pgfusepathqfillstroke
}
\makeatother
\begin{document}
\begin{tikzpicture}
\draw[mycurrarrow-mycurrarrow,blue] (0,0) -- (2,1);
\draw[latex-latex,shift={(0mm,3mm)}] (0,0) -- (2,1);
\draw[triangle 45-triangle 45,shift={(0mm,-3mm)},red] (0,0) -- (2,1);
\end{tikzpicture}
\end{document}
我不明白为什么你不发布五行代码(四行是documentclass
和begin/end document
和circutikz
包)作为示例,而是用手册中的屏幕截图描述箭头。