Notice to GitKraken users: A vulnerability has been found in the SSH key generation of GitKraken versions 7.6.0 to 8.0.0 (https://www.gitkraken.com/blog/weak-ssh-key-fix). If you use GitKraken and have generated a SSH key using one of these versions, please remove it both from your local workstation and from your LRZ GitLab profile.

21.10.2021, 9:00 - 11:00: Due to updates GitLab may be unavailable for some minutes between 09:00 and 11:00.

Commit bcc8770e authored by Philipp Meyer's avatar Philipp Meyer
Browse files

Added labels and initial marking to DOT printer

parent efd8e52a
......@@ -9,8 +9,8 @@ import Data.ByteString.Builder
import Data.Monoid
import PetriNet
import Structure
-- TODO: mark initially labeled places
renderNet :: PetriNet -> Builder
renderNet net =
"digraph petrinet {\n" <>
......@@ -18,11 +18,14 @@ renderNet net =
mconcat (map transLabel (transitions net)) <>
"}\n"
where
placeLabel p = stringUtf8 p <> " [label=\" \"];\n"
transLabel t = stringUtf8 t <> " [label=\" \", shape=box, " <>
"style=filled, fillcolor=\"" <>
(if checkParallelT net t then "#FF0000" else "#AAAAAA") <>
"\"];\n" <>
placeLabel p = stringUtf8 p <> " [label=\"" <> stringUtf8 p <>
(if initial net p > 0 then
"(" <> integerDec (initial net p) <> ")"
else
""
) <> "\"];\n"
transLabel t = stringUtf8 t <> " [label=\"" <> stringUtf8 t <> "\", shape=box, " <>
"style=filled, fillcolor=\"#AAAAAA\"];\n" <>
mconcat (map (\p -> arcLabel (p,t)) (pre net t)) <>
mconcat (map (\p -> arcLabel (t,p)) (post net t))
arcLabel (a,b) = stringUtf8 a <> " -> " <> stringUtf8 b <> "\n"
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment