Re: ADot ( or AGraphviz )
"valery_vi" <[email protected]>
| Newsgroups | gmane.comp.windows.autoit.user |
|---|---|
| Message-ID | <[email protected]> |
BTW. There is am easy way to show the AutoIt's funcs, libs or syntax as graph with nodes & edges. Valery --- In [email protected], "valery_vi" <shehrer1@...> wrote: > > You can see result of it in Photos/Views of this group. > > Valery > > --- In [email protected], "valery_vi" <shehrer1@> wrote: > > > > Hi, > > > > I have found simple (and free) way to draw graph by AutoIt script. > > It uses Dot notation to do it. > > > > ; AutoGraph Visualization > > ; Auto Graphviz (Graph Visualization Software) > > ; Basic link - http://www.graphviz.org/ > > ; ADot uses WinGraphviz Win32/COM object > > ; Link - http://wingraphviz.sourceforge.net/wingraphviz/ > > > > $dot = ObjCreate('Wingraphviz.dot') > > if Not IsObj($dot) then > > Msgbox(0,'','Unable to create Wingraphviz.dot') > > Exit > > endif > > > > ;Sample data of DOT > > $GDesc = '' > > $GDesc &= 'digraph G {' > > $GDesc &= 'size ="4,4";' > > $GDesc &= 'main -> parse [weight=8];' > > $GDesc &= 'parse -> execute;' > > $GDesc &= 'main -> init [style=dotted];' > > $GDesc &= 'main -> cleanup;' > > $GDesc &= 'execute -> { make_string; printf}' > > $GDesc &= 'init -> make_string;' > > $GDesc &= 'edge [color=red];' > > $GDesc &= 'main -> printf [style=bold,label="100 times"];' > > $GDesc &= 'make_string [label="make a\nstring"];' > > $GDesc &= 'node [shape=box,style=filled,color=".7 .3 1.0"];' > > $GDesc &= 'execute -> compare;' > > $GDesc &= 'main > > [shape=polygon,sides=8,peripheries=3,color=lightyewllow];}' > > $GDesc &= 'execute > > > [shape=polygon,sides=9,peripheries=3,color=lightblue,style=filled];}' > > > > ;Parse DOT description > > if Not $dot.Validate($GDesc) then > > Msgbox(0,'','DOT Format Error') > > endif > > > > ;Create SVG image > > $strSVG = $dot.ToSVG($GDesc) > > $FilePath = @ScriptDir & "\test.svg" > > if StringLen($strSVG) then > > $File = FileOpen ($FilePath, 2) > > FileWrite($File, $strSVG) > > $File = FileClose($File) > > ; Open it > > ShellExecute($FilePath, '', @ScriptDir, 'open') > > endif > > > > exit > > > > Enjoy, > > Valery > > >