Erweiterungsproblem in einer gitterartigen Tikz-Figur

Erweiterungsproblem in einer gitterartigen Tikz-Figur

Mein Ziel ist es, einen Prozess zu automatisieren, bei dem ich viele Bilder aus einer Filmsequenz habe und diese in absteigender Reihenfolge angeordnet haben möchte. Dazu liegen alle meine Bilder in einem Ordner und werden natürlich mit einem Dateiindex am Ende benannt. Ich habe mich für ein entschieden , aber solange es flexibel ist (basierend auf 3 Parametern: Gesamtbreite; Miniaturbreite; Anzahl der Spalten), wäre matrixalles, was darin enthalten ist, großartig.tikz

% !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}

Denn im Moment kann ich meine Matrix aufgrund eines Erweiterungsproblems nicht mit der Bildnummer füllen. Um das Bild mit dem Dateiindex ( \i) innerhalb des neu zu erstellen \foreach, imuss direkt danach erweitert werden, \ea\gappto\ea\gridcontent\easonst funktioniert es nicht. Wahrscheinlich übersehe ich etwas, da ich zum ersten Mal wirklich zu verstehen beginne, was Erweiterung ist.

Antwort1

\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}

Bildbeschreibung hier eingeben

verwandte Informationen