Problema de expansión en una figura tikz en forma de cuadrícula

Problema de expansión en una figura tikz en forma de cuadrícula

Mi objetivo es automatizar un proceso en el que tengo muchas imágenes de una secuencia de película y me gustaría que se escriban en filas descendentes. Para eso, todas mis imágenes descansan en una carpeta y por supuesto, se nombran con un índice de archivo al final. Elegí un matrixpero, siempre que sea flexible (basado en 3 parámetros: ancho total; ancho en miniatura; número de columnas), cualquier cosa creada tikzsería genial.

% !TeX encoding = UTF-8
% !TeX spellcheck = fr_FR

\documentclass[11pt, frenchb, twoside]{report}

% IMPORTS

\usepackage{polyglossia}
\usepackage{xparse}
\usepackage{xifthen}

\usepackage{tikz}
\usetikzlibrary{backgrounds, patterns, shapes,
                calc, positioning, 
                matrix, scopes,
                decorations.fractals, decorations.text}

\newlength{\foolen}
\newlength{\barlen}

% GRIDFIGURES % % % % % % % % % % % % % % % %
% #1 total width [default: \textwidth]
% #2 total figures
% #3 total columns
% #4 gutter space
% #5 folder
% #6 label
\ProvideDocumentCommand \gridFigures{ O{\textwidth} m m m m m }
{%
    \let\gridcontent\empty
    \let\ea\expandafter%

    \pgfmathsetlength{\foolen}{(#1/#3)-#4}
    \pgfdeclareimage[width=\foolen]{ghost}{../assets/#5/#6-1}
    \settoheight{\barlen}{\pgfuseimage{ghost}}
%
    \foreach \i in {1,2,...,#2}
    {%
        \pgfmathparse{mod(\i,#3)}
        \pgfmathtruncatemacro{\mod}{\pgfmathresult}
        \ifthenelse{\mod>0}
            {\ea\gappto\ea\gridcontent\ea{\ea{\i} \&}}
            {\ea\gappto\ea\gridcontent\ea{something \ea{\i} \\}}}

    \begin{tikzpicture}
        \matrix[matrix of nodes, ampersand replacement=\&]{\gridcontent};
    \end{tikzpicture}}

\begin{document}
\begin{figure}[ht]
    \gridFigures{40}{5}{5mm}{mohr}{cubic-limit}
\end{figure}
\end{document}

Porque por ahora no puedo llenar mi matriz con el número de imagen debido a un problema de expansión. Para reconstruir la imagen con el índice del archivo ( \i) dentro del archivo \foreach, idebe expandirse inmediatamente después \ea\gappto\ea\gridcontent\ea, de lo contrario no funcionará. Probablemente me estoy perdiendo algo ya que es la primera vez que empiezo a entender qué es la expansión.

Respuesta1

\documentclass{article}
\usepackage{xparse}
\usepackage{tikz}
\usetikzlibrary{calc, positioning, matrix, scopes}

\tikzset{nosep/.style={inner sep=0pt,outer sep=0pt}}

% GRIDFIGURES % % % % % % % % % % % % % % % %
% #1 total width [default: \textwidth]
% #2 macro for matrix content
% #3 total figures
% #4 total columns
% #5 gutter space
% #6 folder
% #7 label
\ExplSyntaxOn
\ProvideDocumentCommand \gridFigures{ O{\textwidth} m m m m m m }
{%
    \tl_clear_new:N #2
    \dim_new:N \l_width_dim

    \pgfmathparse{#3-1}
    \pgfmathtruncatemacro{\row}{\pgfmathresult}
    \pgfmathsetlength{\l_width_dim}{(#1/#4)-#5}

    \int_step_inline:nnnn {1}{#4}{\row}
    {
        \pgfmathparse{##1+#4-1}
        \pgfmathtruncatemacro{\col}{\pgfmathresult}

        \int_step_inline:nnnn {##1}{1}{\col}
        {
            \tl_put_right:Nn #2 {\includegraphics[width=\l_width_dim]{#6/#7-####1}}
            \int_compare:nT {####1<\col}
                {\tl_put_right:Nn #2 {\&}}
        }
        \tl_put_right:Nn #2 {\\}
    }
}
\ExplSyntaxOff
\begin{document}
\gridFigures{\matrixContent}{40}{5}{2mm}{../assets/mohr}{cubic-limit}
\begin{tikzpicture}[nosep]
    \matrix[matrix of nodes,ampersand replacement=\&,
            column sep=2mm,row sep=2mm]{\matrixContent};
\end{tikzpicture}
\end{document}

ingrese la descripción de la imagen aquí

información relacionada