Tikz:Tutorial: A Petri-Net for Hagen
2013-11-10 12:51
3255 查看
\usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri} \begin{tikzpicture}[ every place/.style={circle,draw=blue!50,fill=blue!20,thick,inner sep = 2pt,minimum size = 6mm}, every transition/.style={rectangle,draw=black!50,fill=black!20,thick,inner sep = 2pt,minimum size = 6mm}, red place/.style = {place,draw=red!75,fill=red!20}, every label/.style = {red,font=\small}, node distance=1.3cm,bend angle=45,on grid,>=latex,auto ] \node (a) [place,tokens =1] {}; \node (b) [place ,below=of a] {b}; \node (c) [place ,below=of b] {c}; \node (d) [place ,below=of c] {d}; \node (e) [place ,tokens=1,below=of d] {}; \node (f) [transition,left = of b] {f} edge [post] (b) edge [post,bend right] (c) edge [pre,bend left] (a) ; \node (g) [transition,right= of b] {g} edge [pre] (b) edge [pre,bend left] (c) edge [post,bend right] (a) ; \node (h) [transition,left = of d] {h} edge [post] (d) edge [post,bend right] (e) edge [pre,bend left] (c) ; \node (i) [transition,right= of d] {i} edge [pre] (d) edge [pre,bend left] (e) edge [post,bend right] (c) ; \begin{scope}[on background layer] \node (r1) [fill=black!10,rounded corners,fit=(a)(b)(c)(d)(e)(f)(g)(h)] {}; \end{scope} \begin{scope}[xshift=6cm] \node (a) [place,tokens =1] {}; \node (b) [place ,below=of a] {b}; \node (c) [red place ,below=of b,xshift=-5mm,tokens=3] {}; \node (d) [red place ,below=of b,xshift=5mm] {d}; \node (e) [place ,below=of d,xshift=-5mm] {e}; \node (f) [place ,below=of e] {f}; \node (g) [transition,left= of b] {g} edge [post] (b) edge [post] (c) edge [pre] (d) edge [pre,bend left] (a) ; \node (h) [transition,right= of b] {h} edge [post] (b) edge [post] (c) edge [pre] (d) edge [pre,bend right] (a) ; \node (i) [transition,left= of e] {i} edge [post] (e) edge [post] (c) edge [pre] (d) edge [pre,bend right] (f) ; \node (j) [transition,right= of e] {j} edge [post] (e) edge [post] (c) edge [pre] (d) edge [pre,bend left] (f) ; \end{scope} \begin{scope}[on background layer] \node (r2) [fill=black!10,rounded corners,fit=(a)(b)(c)(d)(e)(f)(g)(h)] {}; \end{scope} \draw [-to ,decorate,decoration={snake,amplitude=.4mm,segment length=1mm,post length=1mm}](r1)--(r2) node [above,text width=1cm,midway] {how are you $a+b$}; \end{tikzpicture}
相关文章推荐
- 笔记 NEURAL NETS FOR VISION CVPR 2012 Tutorial on Deep Learning
- A Beginner Tutorial for Writing Simple COM/ATL DLL and Using it with .NET
- Serilog for DotNet Tutorial
- Netcat tutorial for beginners
- CPNTOOLS---Computer Tool for Coloured Petri Nets
- Particle Petri Nets for Aircraft Procedure Monitering Under Uncertainty
- Petri nets toolbox for matlab
- Tutorial for building J2EE Applications using JBOSS and ECLIPSE (5)
- 使用ActiveReports for .net 进行报表开发(七)--事件
- Xenocode Postbuild 2010 for .NET 混淆工具的详细使用步骤
- 关于 Asp.Net Forums 2.4 For .Net Framework 2.0 - Asp.Net Forums (venjiang)
- Castle Active Record for .NET2.0快速入门示例
- [新鲜出炉]Enterprise Library for .net 2.0 2006年1月版
- Barcode Professional for ASP.NET使用教程:如何在HTML支持的DPI范围内显示高清条码
- Introduction to .NET RIA Services for Silverlight 3
- The Netron Project For vb.net
- Ado.net Querying the Database for Multiple Result Sets(多数据结果集)
- asp.net for itextsharp 操作pdf
- ArcGIS Runtime for .Net Quartz开发探秘(二):构建第一个ArcGIS Runtime WPF应用程序