我想制作一个宏,使用 TikZ 在我的文档中绘制启发式匹配。我成功了:
\newcommand\allumette[2]{
\fill [PeachPuff] (#1,#2) rectangle (#1+4,#2+0.2);
\fill [PeachPuff!60!Black] (#1,#2) -- ++(4,0)-- ++(0.1,-0.05) -- ++(-4,0) -- ++(-0.1,0.05);
\draw (#1,#2) -- ++(0,0.2) -- ++(4,0) -- ++(0,-0.2) -- ++(0.1,-0.05) -- ++(-4,0) -- ++(-0.1,0.05);
\shade[ball color=red] (#1+4,#2+0.1) ellipse (0.25cm and 0.22cm);
\draw (#1+4,#2+0.1) ellipse (0.25cm and 0.22cm);
}
输出 :
但是,我尝试将火焰引到尖端时却没有成功。
编辑 :这是一个最小的工作示例:
\documentclass{article}
\usepackage[svgnames]{xcolor}
\usepackage{tikz}
\newcommand\allumette[2]{
\fill [PeachPuff] (#1,#2) rectangle (#1+4,#2+0.2);
\fill [PeachPuff!60!Black] (#1,#2) -- ++(4,0)-- ++(0.1,-0.05) -- ++(-4,0) -- ++(-0.1,0.05);
\draw (#1,#2) -- ++(0,0.2) -- ++(4,0) -- ++(0,-0.2) -- ++(0.1,-0.05) -- ++(-4,0) -- ++(-0.1,0.05);
\shade[ball color=red] (#1+4,#2+0.1) ellipse (0.25cm and 0.22cm);
\draw (#1+4,#2+0.1) ellipse (0.25cm and 0.22cm);
}
\begin{document}
\begin{tikzpicture}
\allumette{0}{0}
\end{tikzpicture}
\end{document}
答案1
你可以画一个普通的火焰。我从如何在 LaTeX 中创建蜡烛符号。由于没有颜色定义,我使用了黄色。
\begin{tikzpicture}
\newcommand\allumette[2]{
\fill [yellow] (#1,#2) rectangle (#1+4,#2+0.2);
\fill [yellow!60!black] (#1,#2) -- ++(4,0)-- ++(0.1,-0.05) -- ++(-4,0) -- ++(-0.1,0.05);
\draw (#1,#2) -- ++(0,0.2) -- ++(4,0) -- ++(0,-0.2) -- ++(0.1,-0.05) -- ++(-4,0) -- ++(-0.1,0.05);
\shade[ball color=red] (#1+4,#2+0.1) ellipse (0.25cm and 0.22cm);
\draw (#1+4,#2+0.1) ellipse (0.25cm and 0.22cm);
}
\allumette{0.1}{0.2}
\filldraw[orange,scale=0.5,shift={(8.2,1.2)}] (0,0) .. controls (-1.5,1.25) and (.5,2) .. (-.2,4) .. controls (1,2.5) and (1,.5) .. (0,0);
\end{tikzpicture}
但这取决于你想拖延多久。除了新命令,你可以/.pic
为此定义一个命令并打开或关闭火焰,或者引用其中的节点等。