Dessiner des flèches d'une Tcolorbox à une autre

Nov 22 2020

Je crée une présentation sur beamer et je souhaite créer une diapositive similaire à celle-ci. Je sais que pour les deux ensembles d'équations, je peux utiliser une Tcolorbox et aligner pour obtenir les équations à l'intérieur des boîtes. De plus, je peux utiliser l'environnement des colonnes pour obtenir les deux boîtes sur les côtés gauche et droit. Cependant, je ne sais pas comment lier les deux boîtes avec la flèche, comme indiqué dans l'image ci-dessous.

Si quelqu'un peut me guider à travers un moyen de faire cela dans beamer ou reproduire un exemple de l'image ci-dessous, je l'apprécierais vraiment!

Réponses

3 Zarko Nov 22 2020 at 11:48

Vous ne fournissez aucun code ce que vous avez sélectionné jusqu'à présent, nous ne pouvons donc que deviner et retaper éventuellement vos équations. Habituellement, ce service n'est pas fourni ici, donc la proposition suivante ne résout pas directement tous vos problèmes.

Dans le cas où vous aimez avoir tcolorboxes, ce qui suit peut être une solution:

\usepackage[most]{tcolorbox}

\tcbset{on line,    
        boxsep=0pt, 
        colframe=gray,colback=white,
        highlight math style={enhanced}  % <---
        }

\begin{document}
    \[
\tcbhighmath{\begin{aligned} a=b\\ c=d\end{aligned}}
    \longrightarrow
\tcbhighmath{K=\begin{bmatrix} a\\ b \end{bmatrix}}
    \]
\end{document}

Remarque: le contenu de tcolorboxes que vous pouvez organiser en utilisant tous les environnements mathématiques définis dans amsmath.

Une autre façon est d'utiliser l'image TikZ:

\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{arrows.meta,
                positioning}

\begin{document}
Some text

    \begin{tikzpicture}[
every node/.style = {draw=gray, rounded corners, very thick}
                        ]
\node (left)    {$\begin{aligned} a=b\\ c=d\end{aligned}$};
\node (right) [right=of left]
                {$\begin{gathered} X = [\text{some equation}] \\ K_1=\begin{bmatrix} a\\ b \end{bmatrix} \quad K_2=\begin{bmatrix} c\\ d \end{bmatrix} \end{gathered}$};
\draw[-Straight Barb] (left) -- (right);
    \end{tikzpicture}
\end{document}

Addendum: vous pouvez également combiner les deux solutions ci-dessus:

\documentclass{article}
\usepackage{amsmath}
\usepackage[most]{tcolorbox}
\usetikzlibrary{arrows.meta,
                positioning}

\tcbset{on line,    % borrowed from https://tex.stackexchange.com/questions/568880/
        boxsep=0pt, % left=1pt,right=1pt,top=1pt,bottom=1pt,
        colframe=gray,colback=white, % or some other color of box background
        highlight math style={enhanced}  % <---
        }

\begin{document}
    \begin{tikzpicture}[
every node/.style = {inner sep=0pt}
                        ]
\node (left)    {\tcbhighmath{\begin{aligned} a=b\\ c=d\end{aligned}}};
\node (right) [right=of left]
                {\tcbhighmath{\begin{gathered} X = [\text{some equation}]    \\
                        K_1=\begin{bmatrix} a\\ b \end{bmatrix}
                        \quad
                        K_2=\begin{bmatrix} c\\ d \end{bmatrix}
                 \end{gathered}}};
\draw[-Straight Barb] (left) -- (right);
    \end{tikzpicture}
\end{document}

Le résultat est similaire à la deuxième solution:

1 Ignasi Nov 23 2020 at 09:06

Ceci est un mélange entre l'addendum de Zarko et ma réponse à Ajouter une flèche entre deux tcolorboxes

L'exemple est intégré dans un beamerdocument. Au fur overlayet à mesure que et remember picturesont utilisés, la flèche entre les cases apparaît après la deuxième compilation.

\documentclass{beamer}
\usepackage{amsmath}
\usepackage[most]{tcolorbox}
\usetikzlibrary{arrows.meta,
                positioning}

\tcbset{on line,    % borrowed from https://tex.stackexchange.com/questions/568880/
        boxsep=0pt, % left=1pt,right=1pt,top=1pt,bottom=1pt,
        colframe=gray,colback=white, % or some other color of box background
        highlight math style={enhanced}  % <---
        }

\begin{document}
\begin{frame}{With tcolorbox}
\tcbhighmath[remember as=left]{\begin{aligned} a=b\\ c=d\end{aligned}}\hspace{1cm}
\tcbhighmath[remember as=right]{\begin{gathered} X = [\text{some equation}]    \\
                        K_1=\begin{bmatrix} a\\ b \end{bmatrix}
                        \quad
                        K_2=\begin{bmatrix} c\\ d \end{bmatrix}
                 \end{gathered}}
\tikz[overlay, remember picture] \draw[-Straight Barb] (left) -- (right);
\end{frame}

\end{document}