删除部分用“凯尔特”包装绘制的装饰

删除部分用“凯尔特”包装绘制的装饰

我用这个装饰制作了celtic包裹。

\documentclass[12pt]{article}
\usepackage{tikz}
\usetikzlibrary{celtic}

\parindent=0pt

\begin{document}

\definecolor{amber}{rgb}{1.0,0.49,0.0}

\begin{center}
\begin{tikzpicture}[
  scale=.52,
  celtic path/.style={
    draw,
    double=amber,
    blue,
    double distance=5pt,
    line width=2pt
  },
  celtic bar/.style={
    ultra thick,
    black,
    draw,
    rounded corners=5pt
  },
]
\CelticDrawPath{
  size={20,12},
  crossings={
    7:20,6,-;
    6,7:12,|;
  },
  ignore  crossings={
    7:19,9;    
    8:19,11;
    8:19,7;
  },
  max steps=90
}
\end{tikzpicture}
\end{center}

\end{document}

enter image description here

我试图删除右上角的部分,ignore crossings 但没有成功。

答案1

我找到了一个解决方案:

ignore crossings={
  8:18,7:11;
  7:19,8:12;
},

...但我只能猜测它为什么有效。我的理论是冒号运算符秘密地增加了 2,因为这是结点网格中交叉的频率。因此,您需要将“偶数”和“奇数”网格都指定为要忽略的交叉(或此处为 [x-偶数,y-奇数],[x-奇数,y-偶数])。

正如文档脚注 1 所述,这个冒号运算符显然很难实现。

结果:

enter image description here

调试提示:

  • 设置max steps = 0为了解起点,但仍会执行一些魔术迭代,因此您无法准确地看到它们。
  • 要在结上覆盖网格坐标,请使用:
\foreach \x in {1,...,20}{
  \foreach \y in {1,...,12}{
    \node at (\x,\y){\tiny \x,\y};
  }
}

但您可能需要调整比例以避免标签重叠。

相关内容