summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/pst-uml/diagState.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/generic/pst-uml/diagState.tex')
-rw-r--r--Master/texmf-dist/doc/generic/pst-uml/diagState.tex149
1 files changed, 149 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/pst-uml/diagState.tex b/Master/texmf-dist/doc/generic/pst-uml/diagState.tex
new file mode 100644
index 00000000000..a315288e0ca
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/pst-uml/diagState.tex
@@ -0,0 +1,149 @@
+% \documentclass[11pt,a4paper,twoside]{article}
+% \usepackage[T1]{fontenc}
+% \usepackage[applemac]{inputenc}
+% % \usepackage[latin1]{inputenc}
+% \usepackage{pst-uml}
+% \begin{document}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% définition des objets
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\StateGlobal}{%
+ \umlState{état global de l'objet \texttt{Graphe}}{\umlEmptyBox{13cm}{16cm}}%
+}
+\newcommand{\StateNRSA}{%
+ \umlState{non routé \\ sans arêtes}{\space}%
+}
+\newcommand{\StateNRI}{%
+ \umlState{non routé \\ incomplet}{\space}%
+}
+\newcommand{\StateNRC}{%
+ \umlState{non routé \\ complet}{\space}%
+}
+\newcommand{\StateROU}{%
+ \umlState{routé \\ \mbox{}}{\space}%
+}
+\newcommand{\StateVisu}{%
+ \umlState{Visualisable \\ \mbox{}}{do/superviser()}%
+}
+\newcommand{\StateAnu}{%
+ \umlState{GrapheAnnulable}{%
+ \hspace*{2.25cm}
+ \rmfamily% car normalement un corps d'état est en ttfamily
+ \begin{psmatrix}[colsep=1,rowsep=1.5,mnode=r]
+ \\[-1.4cm]
+ [name=StateInAnu] \umlStateIn \\[-0.5cm]
+ [name=StateNRSA] \StateNRSA \\[0cm]
+ [name=StateNRI] \StateNRI \\[1cm]
+ [name=StateNRC] \StateNRC \\[0.5cm]
+ [name=StateROU] \StateROU
+ & \umlPutStateOut{0,0}{StateOutAnu} \\[-1.5cm]
+ {} % boite vide NECESSAIRE sur la dernière ligne si vide !
+ \end{psmatrix}%
+ \hspace*{1.5cm}
+ %
+ % Connection propre à chaque node
+ %
+ {\ttfamily\small
+ %
+ % \nput{75}{StateInAnu}{EntréeAnnulable}
+ % \nput{-75}{StateOutAnu}{SortieAnnulable}
+ %
+ \ncEXS[offsetA=0.25,offsetB=0.5]{StateNRSA}{StateNRSA}%
+ \ncput*[npos=1.7]{ajouterSommet}
+ \ncWXS[offsetA=-0.25,offsetB=-0.5]{StateNRSA}{StateNRSA}%
+ \ncput*[npos=1.7]{retirerSommet}
+ %
+ \ncEXS[offsetA=0.25,offsetB=0.5]{StateNRI}{StateNRI}%
+ \ncput*[npos=1.7]{ajouterArête}
+ \ncWXS[offsetA=-0.25,offsetB=-0.5]{StateNRI}{StateNRI}%
+ \ncput*[npos=1.7]{retirerArête}
+ \ncEXN[offsetA=-0.0,offsetB=-0.5]{StateNRI}{StateNRI}%
+ \ncput*[npos=1.7]{ajouterSommet}
+ \ncWXN[offsetA=0.0,offsetB=0.5]{StateNRI}{StateNRI}%
+ \ncput*[npos=1.7]{retirerSommet}
+ %
+ \ncEXS[offsetA=0.25,offsetB=0.5]{StateNRC}{StateNRC}%
+ \ncput*[npos=1.7]{ajouterRoute}
+ \ncWXS[offsetA=-0.25,offsetB=-0.5]{StateNRC}{StateNRC}%
+ \ncput*[npos=1.7]{retirerRoute}
+ %
+ \ncWXS[offsetA=-0.25,offsetB=-0.5]{StateROU}{StateROU}%
+ \ncput*[npos=1.7]{réoptimiser}
+ %
+ % Connections INTERNODE interne au macro-état
+ %
+ \ncline{->}{StateInAnu}{StateNRSA}%
+ \naput[npos=0.3]{}%
+ %
+ \ncline{->}{StateNRSA}{StateNRI}%
+ \naput[npos=0.3]{ajouterArête}%
+ %
+ \ncline{->}{StateNRI}{StateNRC}%
+ % \naput[npos=0.3]{graphComplet}%
+ \naput{graphComplet}%
+ %
+ \ncline{->}{StateNRC}{StateROU}%
+ \ncput*[npos=0.3]{\umlStack{[ClientPrioritaireSatisfait] DemandeFin}}
+ %
+ \ncline{->}{StateROU}{StateOutAnu}%
+ %
+ }%
+ }%
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% Placement des objets
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{center}
+ % \scalebox{0.5}{%} Fonctionne egalement
+ % \resizebox{0.9\linewidth}{!}{%}
+ \resizebox{!}{13cm}{%
+ \begin{pspicture}(-5,-9.5)(9.5,8)%\psgrid
+ %
+ \psset{%
+ linearc=0.3,%
+ % arm=1.2,%
+ armA=1.2,%
+ armB=0.8,%
+ arrows=->,%
+ arrowscale=2,%
+ ncurv=2,% instead of 0.67
+ }%
+ \rput(2.4,-0.75){\rnode{StateGlobal}{\StateGlobal}}%
+ %
+ \umlPutStateIn{6,5}{StateIn}%
+ %
+ \rput(0,-1){\rnode{StateAnu}{\StateAnu}}%
+ %
+ \rput(6,-3){\rnode{StateVisu}{\StateVisu}}%
+ %
+ \rput(6,0){\rnode{StateOut}{\umlStateOut}}%
+ %
+ % LES CONNECTIONS INTERNODE
+ %
+ {\ttfamily\small
+ %
+ \ncEXN[offsetA=-0.25,offsetB=-0.5,armA=0.5]{StateVisu}{StateVisu}%
+ \ncput*[npos=1.7]{zoomer}
+ %
+ \ncSW[offsetB=-5]{->}{StateIn}{StateAnu}%
+ \naput[npos=1.3]{NewGraphAsked}
+ %
+ \ncEN{->}{StateOutAnu}{StateVisu}%
+ \nbput[npos=0.9]{/Sauvegarder}
+ \ncline{->}{StateVisu}{StateOut}%
+ %
+ \ncES[offsetA=3]{->}{StateAnu}{StateOut}%
+ % \naput[npos=0.6]{Annuler}
+ % on ajoute un espace en début de chaque ligne " Annuler"..
+ \naput[npos=0.99]{\umlStack[umlAlign=l]%
+ {\ Annuler\\\ /DemanderConfirmation}}
+ }
+ \end{pspicture}%
+ }%end resizeORscalebox
+\end{center}
+
+
+% \end{document}