Блок-схема Draw с квадратными соединениями - PullRequest
0 голосов
/ 10 апреля 2020

Я пытаюсь нарисовать диаграмму по предоставленной ссылке от "акта" до ромба решения в начале блок-схемы, но мне не удается. Я хотел бы нарисовать стрелку соединения от блока к алмазу, не пересекая другие блоки. Может ли кто-нибудь помочь мне сделать это?

https://www.overleaf.com/1327913296kgkmkvmhqgmj

С уважением, Бруно

1 Ответ

0 голосов
/ 10 апреля 2020

Если я понял weel, может быть, добавление некоторых скрытых узлов может помочь:

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage{tikz}
\usepackage{csquotes}
\usetikzlibrary{shapes,arrows}

\input{config}

\begin{document}
\begin{figure}[!htp]
    \centering
    \begin{tikzpicture}[node distance = 2cm, auto]
        % Place nodes
        \node [cloud] (init) {Initialize};
        \node [block, left of = init, node distance = 4cm] (estimate) {Estimate};
        \node [block, below of = estimate, node distance = 3cm] (compute) {Compute};    
        \node [decision, below of = init] (decide_exploration) {$t \in (t_i, \, t_{i+1})$?};
        \node [decision, below of = decide_exploration, node distance = 4cm] (decide_sample) {$t_s \in (t_s^0, \, t_s^0 + T_s)$?};
        \node [block, right of = decide_sample, node distance = 4cm] (sample) {Sample};
        \node [block, below of = decide_sample, node distance = 4cm] (control) {Act};
        \node [below of = control, node distance = 2cm] (control2) {};
        \node [right of = control2, node distance = 6cm] (control3) {};
        \node [right of = decide_exploration, node distance = 2cm] (sample2) {};

        % Draw edges
        \path [line, dashed] (init) -- (estimate);
        \path [line] (estimate) -- (compute);
        \path [line] (compute) |- (control);
        \path [line] (decide_exploration) -- node {yes} (decide_sample);
        \path [line] (decide_exploration) -- node {no} (estimate);
        \path [line] (decide_sample) -- node {yes} (control);
        \path [line] (decide_sample) -- node {no} (sample);
        \path [line] (sample) |- (control);
                \path [line] (control) |-(6,-13) |-(sample2) |-(decide_exploration);

    \end{tikzpicture}
    \caption{Source seeking algorithm}
    \label{fig:sseeking_algo}
\end{figure}

\end{document}

Я использовал несколько забавных имен для скрытых узлов, вы можете найти что-то более существенное ..

РЕДАКТИРОВАТЬ: я редактировал последнюю строку, так что угол больше не пропал.

...