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, #1
se refiere al primer argumento pasado a \catalannumber
, #2
se 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 \catalannumberrectangle
es "m,n", donde "m" es el número de columnas y "n" es el número de filas de la red.
\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}