Einen Pfad füllen, ohne die Linie auszudünnen

Einen Pfad füllen, ohne die Linie auszudünnen

Betrachten Sie das folgende MWE:

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
   \path[draw] (1,0) circle (1) (1.7,1.2);
   \path[draw] (.5,-1) circle (1) (0.5,-2.2);
   \path[clip] (.5,-1) circle (1) (0.5,-2.2);
   \path[clip] (1,0) circle (1) (1.7,1.2);
   \path[fill=white] (.5,-1) circle (1) (0.5,-2.2);
%  \path[draw] (1,0) circle (1) (1.7,1.2);
%  \path[draw] (.5,-1) circle (1) (0.5,-2.2);  add the commented lines to get the desired output
\end{tikzpicture}
\end{document}

Bildbeschreibung hier eingeben

Ist es möglich, die Linienbreite beim Füllen der ausgeschnittenen Region zu berücksichtigen, sodass der Rand des gefüllten Bereichs nicht dünner wird, sondern die ursprüngliche Breite behält?

Um dieses Ergebnis zu erreichen, zeichne ich beide Kreise nach dem Füllen neu, aber das klingt für mich nach einer nicht optimalen Lösung.

Antwort1

Sie können a verwenden, scopeum es nur auf den überlappenden Bereich anzuwenden clip, und dann einfach die beiden Kreise zeichnen, nachdem Sie die Überlappung ausgefüllt haben:

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \begin{scope}
        \path[clip] (.5,-1) circle (1) (0.5,-2.2);
        \path[clip] (1,0) circle (1) (1.7,1.2);
        \path[fill=orange] (.5,-1) circle (1) (0.5,-2.2);
    \end{scope}
    \path[draw] (1,0) circle (1) (1.7,1.2);
    \path[draw] (.5,-1) circle (1) (0.5,-2.2);
\end{tikzpicture}
\end{document}

verwandte Informationen