1

everyone. Im using TexStudio with Texlive and pdfLatex compiler for this proejct. I want the flowcharts to be divided into 3 parts by \pasue, to show them in some order.

The code without \pause works fine

\documentclass[t]{beamer}
\usepackage[T2A]{fontenc}           
\usepackage[utf8]{inputenc}         
\usepackage[english,russian]{babel} 
\usepackage{icomma} 
\usepackage{array,tabularx,tabulary,booktabs} 
\usepackage{tikz} 

\begin{document}

\section{Test}
\subsection{Test pause}

\begin{frame}
    \frametitle{\insertsection} 
    \framesubtitle{\insertsubsection}

    \usetikzlibrary{shapes,shapes.multipart}
    \usetikzlibrary{shapes.geometric, arrows}
    \tikzstyle{startstop} = [rectangle, rounded corners, minimum width=3cm, minimum height=1cm
    ,text centered, draw=black, fill=red!30]
    \tikzstyle{io} = [trapezium, trapezium left angle=70, trapezium right angle=110, minimum width=3cm, minimum height=1cm, text centered, draw=black, fill=blue!30]
    \tikzstyle{process} = [rectangle, minimum width=3cm, minimum height=1cm, text centered,
    draw=black, fill=orange!30]
    \tikzstyle{decision} = [diamond, minimum width=3cm, minimum height=1cm, text centered,
    draw=black, fill=green!30]
    \tikzstyle{arrow} = [thick,->,>=stealth]
    \begin{tabular}{cl}
        \begin{tabular}{c}
            \scalebox{0.4}{
            \begin{tikzpicture}[node distance=2cm, scale
            =0.3]
                \node (start) [startstop] {Начало};
                \node (in1) [io, below of=start] {Ввод a,b};
                \draw [arrow] (start) -- (in1);
                \node (dec1) [decision, below of=in1, yshift
                =-0.5cm] {a=b};
                \node (dec2) [decision, below of=dec1, yshift
                =-0.5cm] {a>b};
                \node (pro2a) [process, left of=dec2, xshift
                =-2cm, below of=dec2, yshift
                =-0.5cm] {a:=a-b};
                \node (pro2b) [process, right of=dec2, xshift
                =2cm, below of=dec2, yshift
                =-0.5cm] {b:=b-a};
                \node (out1) [io, below of=dec2, yshift=-4cm] {Вывод a};
                \node (stop) [startstop, below of=out1] {
                Конец};
                \draw [arrow] (in1) -- (dec1);
                \path (in1) -- (dec1) coordinate[midway] (aux);;
                \draw [arrow] (dec1) -- node[anchor=east] {
                Нет} (dec2);
                \draw [arrow] (dec2) -| node[anchor=south] {
                Да} (pro2a);
                \draw [arrow] (dec2) -| node[anchor=south] {
                Нет} (pro2b);
                \draw [arrow] (pro2b) |- ([xshift=-6.5cm, yshift=-1.5cm]pro2a.south) |- (aux);
                \draw [arrow] (pro2a) |- ([xshift=-6.5cm, yshift=-1.5cm]pro2a.south) |- (aux);
                \draw [arrow] (dec1.east) -| node[anchor=south] {
                Да} ([xshift=6.5cm, yshift=-3.5cm]pro2b.south) -| (out1);
                \draw [arrow] (out1) -- (stop);
            \end{tikzpicture}
            }
        \end{tabular}
        & \begin{tabular}{l}
        \parbox{0.4\linewidth}{
             \textbf{Flowchart of GCD} some text
            }  
         \end{tabular}  \\
\end{tabular}
\end{frame}
\end{document}

But when i add \pause lets say after \node (out1) [io, below of=dec2, yshift=-4cm] {Вывод a}; compile process exits with errors. This is one of them: Package pgfkeys Error: I do not know the key '/tikz/trapezium left angle', to which you passed '70', and I am going to ignore it. Perhaps you misspelled it. \end{frame}

2
  • 1
    Welcome! Try adding [fragile] after \begin{frame}. (Off-topic: please avoid \tikzstyle. Please use the positioning library with its syntax. And so on.)
    – user194703
    May 18 '20 at 23:07
  • You can put \pause between two tikzpictures, but not inside one. See tex.stackexchange.com/questions/146908/… May 19 '20 at 1:00
0

See, if this can help you:

\documentclass[t]{beamer}
\usepackage{tikz}
    \usetikzlibrary{arrows.meta,
                    chains,
                    positioning,
                    shapes.geometric}
\tikzset{FlowChart/.style={
     base/.style = {draw, minimum width=18mm, minimum height=5mm, 
                    align=center, font=\small},
startstop/.style = {base, rounded corners, fill=red!30},
  process/.style = {base, fill=orange!30},
 decision/.style = {base, diamond, aspect=2},
       io/.style = {base, trapezium, trapezium stretches body,
                    trapezium left angle=70, trapezium right angle=110,
                    fill=blue!30, 
                    text width =\pgfkeysvalueof{/pgf/minimum width}-2*\pgfkeysvalueof{/pgf/inner xsep},
                    },
      arr/.style = {semithick,-Triangle}
        }   }

\begin{document}

\section{Test}
\subsection{Test pause}

\begin{frame}[fragile]
    \frametitle{\insertsection}
    \framesubtitle{\insertsubsection}
\begin{tabular}{l p{0.3\linewidth}}
    \begin{tikzpicture}[FlowChart, baseline=(current bounding box.center),
node distance = 5mm and 3mm,
  start chain = going below,
   chn/.style = {on chain, join=by arr},
   lbl/.style = {font=\footnotesize}
                        ]
    \onslide+<1->
\node (start)   [startstop,chn] {Start};            % Начало
\node (in1)     [io,chn] {Input a,b};               % Ввод
    \onslide+<2->
\node (dec1)    [decision,chn]  {$a=b$ ?};
\node (dec2)    [decision,chn]  {$a>b$ ?};
\path (dec1) -- node[lbl, right] {No} (dec2);   % Нет
    \onslide+<3->
\node (pro2a)   [process, below  left=of dec2] {$a\colon=a-b$};
\draw[arr]  (dec2.west) node[lbl, above  left] {Yes} -| (pro2a);% Дa
    \onslide+<4->
\node (pro2b)   [process, below right=of dec2] {$b\colon=b-a$};
\draw[arr]  (dec2.east) node[lbl, above right] {No}  -| (pro2b);% Нет
    \onslide+<5->
\node (out1)    [io, below=of dec2 |- pro2a.south] {Input a};   % Вывод
\node (stop)    [startstop, below=of out1] {Stop};              % Конец
%
\coordinate[right=of pro2b] (aux); 
\draw[arr]  (dec1.east) node[lbl, above right] {Yes}            % Дa
            -| (aux) |- (out1);
\draw[arr]  (out1) -- (stop);
    \end{tikzpicture}
         &   \textbf{Flowchart of GCD} some text
    \end{tabular}
\end{frame}
\end{document}
  • In above MWE are used \onslide instead of \pause.
  • For styles is define style Flowchart using tikzset.
  • In drawing of flowchart is used TikZ library chains which enable simplified diagram code
  • Since I haven't Russian fonts, I translate Russian text to English
  • The first slide:

enter image description here

  • The last slide:

WE

2
  • Thanks, that worked out well.
    – Andrew
    May 19 '20 at 8:37
  • @Andrew, you are welcome!
    – Zarko
    May 19 '20 at 9:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.