72 lines
3.0 KiB
Plaintext
72 lines
3.0 KiB
Plaintext
digraph finite_state_machine {
|
|
overlap=false
|
|
fontname="Arial"
|
|
fontsize=50;
|
|
label="\nÉtats pour l'animation du dragon."
|
|
rankdir=LR; // bgcolor="#C6CFD532"; // transparent
|
|
edge[style="filled,setlinewidth(4)",fontsize=30];
|
|
node[style="setlinewidth(4)",color="#000000",fontsize=30];
|
|
pad=0.2 // margins / clusters
|
|
nodesep=1.2
|
|
ranksep=2.2
|
|
//center=true
|
|
|
|
subgraph clusterInternal {
|
|
fontsize=40;
|
|
label="\nVue interne du sous ensemble { Attente - Animations }\n\n"
|
|
style=filled color = "#FFC0A0"
|
|
// margin=10 # in points
|
|
TMD [label="\nMode Dégradé\n?",fillcolor="#DDDDDD",shape=diamond,style=filled]
|
|
ABP [label="Attente\nde l'appui\nbouton\n",fillcolor="#A0FFFF",shape=circle,style=filled]
|
|
node [shape=circle,style=filled];
|
|
R1 [label="Attente\nfin\nanimation",fillcolor="red:#FD4030",style=radial] // lightred
|
|
J1 [label="Attente\nfin\nanimation",fillcolor="#FFF030"] ; // lightyellow
|
|
B1 [label="Attente\nfin\nanimation",fillcolor="#70A0FF"] ; // lightblue
|
|
VMN [label="Affiche\nluminosité\ncourante",fillcolor="#80ff80:green"];
|
|
VMD [label="Clignote\nà\n1 Hertz",fillcolor="#80ff80:black",style=radial];
|
|
FB [style=invis]
|
|
{ rank = min ABP VMD }
|
|
{ rank = max J1 }
|
|
{ rank = same B1 VMN }
|
|
{ rank = same R1 FB TMD }
|
|
|
|
// n e s w for top right bottom left
|
|
ABP -> TMD:n [label="Vérification du mode"]; // n for nord (top),
|
|
ABP -> R1 [label="Animation Led Rouge"];
|
|
TMD:w -> VMD [label="Active clignotement Led Verte",taillabel="Oui"];
|
|
TMD:ne -> B1 [label="Animation Led Bleue",taillabel="Non"];
|
|
TMD:e -> J1 [label="Animation Led Jaune",taillabel="Non"];
|
|
TMD:se -> VMN [label="Baisse luminosité Led Verte",taillabel="Non"];
|
|
// TMD:nw -> ABP [label="Mode dégradé",decorate=true,taillabel="Oui"];
|
|
|
|
R1 -> ABP [label = "Fin animation"];
|
|
J1 -> ABP [label = "Fin animation"];
|
|
B1 -> ABP [label = "Fin animation"];
|
|
// R1 -> J1 [style=invis] //,constraint=false]
|
|
B1 -> J1 [style=invis] //,constraint=false]
|
|
|
|
// TMD:s -> FB // [style=invis] //,constraint=false]
|
|
} // clusterD
|
|
|
|
subgraph clusterGlobal {
|
|
fontsize=40; label="\nVue synthétique\n\n" style=filled color = "#A0FFFF"
|
|
node [shape = doublecircle, style = filled, fillcolor="#000000"]; On Off ;
|
|
# node [shape = doublecircle, style = filled, fillcolor="#E890F0"]; On Off ;
|
|
node [shape = circle, style = filled, fillcolor="#FFC0A0"]; Wait Show ;
|
|
Off [label="\nOff\n\n",fontname="Arial",fontsize="30",fillcolor="#E890F0"]
|
|
// On [label="\nOn\n\n",fontname="Arial",fontsize="30"]
|
|
{ rank = min On }
|
|
{ rank = max Off }
|
|
|
|
Wait [ label = "Attente\nd'un appui\nbouton\nCycle=Faux" ];
|
|
Show [ label = "Attente\nfin des\nanimations\nCycle=vrai" ];
|
|
On -> Wait [ label = "Mise\nsous\ntension"];
|
|
Wait -> Show [ label = "Animation"];
|
|
Show -> Wait [ label = "Fin animation"];
|
|
Show -> Off [ label = "Mise\nhors\ntension"];
|
|
Show -> Wait [ label = "Ré-initialisation"];
|
|
Wait -> Wait [ label = "Ré-initialisation"];
|
|
Wait -> Off [ label = "Mise\nhors\ntension"];
|
|
} // clusterGlobal
|
|
} //finite_state_machine
|