как нарисовать линию угла?

как нарисовать линию угла?

Возможный дубликат:
как нарисовать специальную линию на рисунке

Я использую код ниже, чтобы нарисовать картинку, однако линия от s2 до s4 прямая, см. изображение.введите описание изображения здесь

Однако мне нужна линия под углом, как красная линия на картинке. Может ли кто-нибудь помочь мне, как это сделать?

\usepackage{tikz}
\usetikzlibrary{trees}
\resizebox{.5\textwidth}{!}{
\tikzset{level 1/.style={level distance=0.7cm, sibling distance=3cm}}
\tikzset{level 2/.style={level distance=0.7cm, sibling distance=6cm}}

\tikzset{bag/.style={text centered,yshift=-0.2cm}}
\begin{tikzpicture}[grow=down, -stealth]
\node[bag]{$S_0{:}(B,true,0)$}
    child{ edge from parent node[right]{$\lsInvoke \_ DS$}; \node[bag]{$S_1{:}(R_{good})$}
            child{ edge from parent node[right]{and}; \node[bag]{$S_2{:}(and)$}
                    child[missing]
                    child{ edge from parent node[right=0.1cm]{$[else]$}; \node[bag]{$S_3{:}(A_1)$}
                    }
                    child{ edge from parent node[right=0.9cm]{$[if]$}; \node[bag]{$S_4{:}(R_{good})$}
                    }
            }
    };
\end{tikzpicture}} 

решение1

Я не могу скомпилировать ваш код и не имею никакого опыта работы с деревьями, которые, по-видимому, рисуют путь за вас. Однако это должно продемонстрировать концепцию, которую, как я думаю, вы ищете:

\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
    \coordinate (A) at (0,0);
    \coordinate (B) at (5,-1);
    \draw (A) -- (B);
    \draw[thick,dashed,red,->] (A) -| (B);
\end{tikzpicture}
\end{document}

который производит:

результат

Наиболее важной частью здесь для вас является использование -|вместо --для создания пути в прямолинейной системе координат вместо стандартной. При использовании с draw, вместо рисования прямой линии, рисуются компоненты этой линии.

может быть, вы просто можете создать именованные координаты в точках S_2 и S_4 и наложить на них прямолинейный путь?

Связанный контент