
私は使用していますアンドリュー・ステイシーの素晴らしいTQFT パッケージコボルディズムの絵を描きます。しかし、境界に問題があります。
\documentclass{article}
\usepackage{tikz}
\usepackage{tqft}
\begin{document}
\begin{tikzpicture}
\node[draw,tqft/reverse pair of pants,boundary lower style={draw,dashed}] (A) {};
\node[label={below:should be solid}] at (A.outgoing boundary 1) {};
\end{tikzpicture}
\end{document}
コボルディズムの描画規則では、コボルディズムで覆われた境界は破線で、見える部分はすべて実線で表すようにしています。上記は、私がここまで到達した方法です。ほぼすべての円は正しく表示されますが、一番下の円は完全に実線で表す必要があります。下側の境界のみをスタイル設定するキーはありますか?
答え1
lower boundary
キーを介してグローバル設定を定義しますevery ...
。そのため、それを上書きする必要があります。
\documentclass{standalone}
\usepackage{tikz}
\usepackage{tqft}
\begin{document}
\begin{tikzpicture}[every tqft/.style={draw,boundary lower style={draw,dashed}}]% DASHED!!!
\node[tqft/pair of pants] (A) {};
\node[tqft/reverse pair of pants,anchor=incoming boundary 1,
boundary lower style={draw,solid}% SOLID AGAIN HERE !!
] (B) at (A.outgoing boundary 1) {};
\node[label={below:should be solid}] at (B.outgoing boundary 1) {};
\end{tikzpicture}
\end{document}
答え2
この問題を回避するには、ズボンの上に追加の境界円を描画します (この点を指摘してくれた Andrew Stacey に感謝します)。
\documentclass{article}
\usepackage{tikz}
\usepackage{tqft}
\begin{document}
\begin{tikzpicture}
\node[draw,tqft/reverse pair of pants,boundary lower style={draw,dashed}] (A) {};
\node[tqft boundary circle,draw] at (A.outgoing boundary 1) {};
\node[label={below:should be solid}] at (A.outgoing boundary 1) {};
\end{tikzpicture}
\end{document}
答え3
私は (2014 年 4 月 7 日に) パッケージの新しいバージョンをtqft
CTAN にアップロードしました。これがシステム全体に伝播すると、次の操作で目的の結果が達成されます。
\documentclass{article}
%\url{http://tex.stackexchange.com/q/167836/86}
\usepackage{tikz}
\usetikzlibrary{tqft}
\begin{document}
\begin{tikzpicture}
\pic[
draw,
tqft/reverse pair of pants,
every lower boundary component/.style={draw},
every incoming lower boundary component/.style={dashed},
every outgoing lower boundary component/.style={solid},
name=A
];
\node[label={below:is solid}] at (A-outgoing boundary 1) {};
\end{tikzpicture}
\end{document}
このリビジョン (TikZ3.0 以降が必要) では、はるかに多くのスタイル設定の可能性が導入されています。本質的には、コボルディズム パスの任意のセグメントを個別にスタイル設定できます。