Una pregunta sobre la regla distinta de cero de TikZ

Una pregunta sobre la regla distinta de cero de TikZ

Necesito ayuda sobre cómo funciona TikZ.nonzero ruleobras. Dice que cuenta el número de cruces de un rayo a partir de algunos puntos. Elejemplo oficial fillcon un triángulo y un círculome ha perdido, porque la intersección entre el triángulo y el círculo no está llena.

Para entender esto, adapté ese ejemplo y agregué un segundo ejemplo de dos círculos.

\begin{document}
\begin{tikzpicture}
  \filldraw[fill=yellow]
    % Clockwise isoceles right-angled triangle
    (0,0) -- (1,1) -- (2,0) --cycle
    % Small circle centered on the leftmost vertex
    (0,0) circle (.5);

  \draw[->] (0,0) -- (.3,.3);
  \draw[->] (1,1) -- (1.5,.5);
  \draw[->] (2,0) -- (1,0);
  \draw[->] (120:.5) arc (120:90:.5);
  \draw[->] (300:.5) arc (300:270:.5);

  \draw[->] (.2,.1) -- +(0,1) node[above] {crossings: $1+1 = 2$};

  \begin{scope}[yshift=-3cm]
    \filldraw[fill=yellow]
      % Two circles
      (0,0) circle (.5)
      (.5,0) circle (.5);

      \draw[->] (120:.5) arc (120:90:.5);
      \draw[->] (300:.5) arc (300:270:.5);
      \draw[->] (120:.5)+(.5,0) arc (120:90:.5);
      \draw[->] (300:.5)+(.5,0) arc (300:270:.5);
      
    \draw[->] (.2,.1) -- +(0,1) node[above] {crossings: $1+1 = 2$};
  \end{scope}
\end{tikzpicture}
\end{document}

ingrese la descripción de la imagen aquí

Tengo dificultades para entender lo siguiente:

  1. En el primer ejemplo, la parte de intersección NO está llena.
  2. En el segundo ejemplo, la parte de intersección está llena.

porque el número de cruces es el mismo. ¿Puedes explicar por qué sucede eso?

Respuesta1

Se corrigió la dirección de dibujo de los círculos invirtiéndola con[x radius=-\r, y radius=\r]

\documentclass[tikz, border=1cm]{standalone}
\begin{document}
\begin{tikzpicture}
\filldraw[fill=yellow]
(0,0) -- (1,1) -- (2,0) --cycle
(0,0) circle[x radius=-0.5, y radius=0.5];
\draw[->] (0,0) -- (.3,.3);
\draw[->] (1,1) -- (1.5,.5);
\draw[->] (2,0) -- (1,0);
\draw[->] (120:.5) arc (120:90:.5);
\draw[->] (300:.5) arc (300:270:.5);
\draw[->] (.2,.1) -- +(0,1) node[above] {crossings: $1+1 = 2$};
\begin{scope}[yshift=-3cm]
\filldraw[fill=yellow]
(0,0) circle[x radius=-0.5, y radius=0.5]
(.5,0) circle[x radius=-0.5, y radius=0.5];
\draw[->] (120:.5) arc (120:90:.5);
\draw[->] (300:.5) arc (300:270:.5);
\draw[->] (120:.5)+(.5,0) arc (120:90:.5);
\draw[->] (300:.5)+(.5,0) arc (300:270:.5);
\draw[->] (.2,.1) -- +(0,1) node[above] {crossings: $1+1 = 2$};
\end{scope}
\end{tikzpicture}
\end{document}

Diagrama con círculos rellenos y triángulos.

información relacionada