2017-05-08 13 views
-1

としてペトリネットを生成します。ツールは、私が仕事で社内ワークフローの基礎として使用するペトリネットエンジンを構築するように求めてきたSVG

これまでのところ、私はすべてのロジックと行動を生成することができました(私は、ルールや条件をテストするためのワークフローの「サービスデスク」タイプを作成している)、それはすべてOKに動作します。痛みのビットであることを証明しています

何かが、しかし、ペトリネットを可視化し、この可視化を自動化です。

私は次のようにSVG-図面の図のルーチンを見てとってきた: http://flowchart.js.org(フローチャート) https://bramp.github.io/js-sequence-diagrams/(シーケンス図)

そして、私はこれらのいずれかを変更したり、同様のものを見つけるために、どちらかが大好きです私は予想外の問題に直面しています。私は、複数の同時接続とブランチの自動配置を処理する複雑な描画ルーチンと理論に全く慣れていません。上記

の2つの例は、十分に単純ですが、ペトリネットであなたは、複数のトランジションを産卵、単一の場所を持っていることがあり、適切に処理されない場合でも、ショート/簡単なネットが簡単に手に負えなくダイアグラムになることができます。

は何、この問題にアプローチするための最良の方法だろうか?

+0

私は最善のアプローチは、このようなD3力図になると思います。 https://jsfiddle.net/tangentstorm/bjp5nv4a/ – Chris

+0

感謝。私はそれを見ましたが、それをOKにするのに十分うまく動作させることができませんでした。私は、必要なもののようなダイアグラムを構築するのに役立つ単純な視覚化アルゴリズムを知らないかもしれないと思った。 – Eduo

答えて

-1

古き良きgraphvizパッケージを試してみましょう。私は会社のワークフローの可視化のためにそれが働いているのを見た。 (私は思うが、バックエンドを使うと思う。) vis.jsバージョン、vis.jsとデリバティブ、d3ハイブリッドがありますが、私は個人的には決して動かない。実験や小型のネットの

の無料サービスがある https://glitch.com/edit/#!/graphviz?path=README.md:1:0

SVGをサポートする出力 http://www.graphviz.org/doc/info/output.html

の中であなたは1000以上のノードのための大きなキャッシュが必要になることがあります http://www.graphviz.org/content/drawing-large-petrinet

ボリスStitnicky devoped graphvizのYPetri(私はsvgをチェックしなかった) 彼のために、おそらく他のワークフローの視覚化ツールのために働いた。

Petri net drawing and code generation

関連する問題