¿Para qué sirve el "#" en TikZ?

¿Para qué sirve el "#" en TikZ?

Soy novato y pregunté¿Cómo crear rectángulos como en este ejemplo?sobre cómo hacer algunos rectángulos. Estoy intentando leer el código y entenderlo porque necesito rectángulos en lugar de cuadrados. ¿Pero no puedo encontrar en la red cuáles son estos números 1 a 4? Como la notación es corta, ni siquiera puedo buscarla. Así que estaría feliz si alguien me ayudara con eso.

\newcommand\catalannumber[3]{
  % start point, size, Dyck word (size x 2 booleans)
  \fill[cyan!25]  (#1) rectangle +(#2,#2);
  \fill[fill=lime]
  (#1)
  \foreach \dir in {#3}{
    \ifnum\dir=0
    -- ++(1,0)
    \else
    -- ++(0,1)
    \fi
  } |- (#1);
  \draw[help lines] (#1) grid +(#2,#2);
  \draw[dashed] (#1) -- +(#2,#2);
  \coordinate (prev) at (#1);
  \foreach \dir in {#3}{
    \ifnum\dir=0
    \coordinate (dep) at (1,0);
    \else
    \coordinate (dep) at (0,1);
    \fi
    \draw[line width=2pt,-stealth] (prev) -- ++(dep) coordinate (prev);
  };
}

Respuesta1

El "#" poco tiene que ver con TikZ. Se utiliza en la expresión de parámetros formales en la definición de un comando (aquí \catalannumber:). En términos sencillos, #1se refiere al primer argumento pasado a \catalannumber, #2se refiere al segundo argumento, etc.

No estoy familiarizado con los números catalanes, por lo que ni siquiera estoy seguro de que lo que sigue tenga sentido matemático, pero si desea obtener una red rectangular en lugar de una cuadrada, puede adaptar el código deCómo dibujar un diagrama numérico catalán en TikZcomo sigue. El segundo argumento \catalannumberrectanglees "m,n", donde "m" es el número de columnas y "n" es el número de filas de la red.

ingrese la descripción de la imagen aquí

\documentclass[border=2mm]{standalone}
\usepackage{tikz}

\newcommand\catalannumberrectangle[3]{
  % start point, size, Dyck word (size x 2 booleans)
  \fill[cyan!25]  (#1) rectangle +(#2);
  \fill[fill=lime]
  (#1)
  \foreach \dir in {#3}{
    \ifnum\dir=0
    -- ++(1,0)
    \else
    -- ++(0,1)
    \fi
  } |- (#1);
  \draw[help lines] (#1) grid +(#2);
  \draw[dashed] (#1) -- +(#2);
  \coordinate (prev) at (#1);
  \foreach \dir in {#3}{
    \ifnum\dir=0
    \coordinate (dep) at (1,0);
    \else
    \coordinate (dep) at (0,1);
    \fi
    \draw[line width=2pt,-stealth] (prev) -- ++(dep) coordinate (prev);
  };
}

\begin{document}
\begin{tikzpicture}
  \catalannumberrectangle{0,-9}{8,4}{0,1,0,0,1,1,0,1,0,0,0,0};
\end{tikzpicture}
\end{document}

información relacionada