dot process
tags: graphviz
digraph hierarchy {
nodesep=0.5
node [color=Red,fontname=Courier,shape=box]
edge [color=Blue, style=dashed]
{"15 10 11 12 1 2 3"}
"15 10 11 12 1 2 3"->{"4"}
"4"->{"5 6"}[label="true"]
"4"->{"8"}[label="false"]
{"5 6"}->7[label=ture]
{"5 6"}->{4}[label="false"]
7->{4}
{8}->{"12 13"}
}
digraph hierarchy {
nodesep=0.5
node [color=Red,fontname=Courier,shape=box]
edge [color=Blue, style=dashed]
{"17 12 13 1 2 3"}
"17 12 13 1 2 3"->{"4"}
}
digraph structs{
node[shape=record]
start [label="{<f0> start}" shape=Mrecord]
cpu [label="{<f0> cpu| UV | vertex |face }" shape=Mrecord]
bind [label="{<f0> gpu ram }" shape=Mrecord]
draw [label="{<f0> drawcall| gpu start render }" shape=Mrecord]
vertex [label="{<f0>vertex shader | vertex transform| normal transform|MVP |displacement}" shape=Mrecord]
draw [label="{<f0> drawcall| gpu start render }" shape=Mrecord]
geo [label="{<f0>geometry shader |normal visualization |TBN normal map}" shape=Mrecord]
rez [label="{<f0>rasterization }" shape=Mrecord]
culling [label="{<f0>culling |remove unneed vertex }" shape=Mrecord]
frag [label="{<f0>fragment shader|lighting | color|shadow }" shape=Mrecord]
framebuffer [label="{<f0>frame buffer | postprocess}" shape=Mrecord]
start:f0 -> cpu:f0
cpu->bind[label = "vertex data"]
bind:f0 -> draw
draw->vertex
vertex->geo
geo->culling
culling->rez
rez->frag
frag->framebuffer
// struct1:f0 -> struct3:f1;
}
digraph google{
// layout=neato;
// layout=circo;
// layout=twopi;
fontname="Helvetica,Arial,sans-serif"
fontcolor=white
// bgcolor="black"
// bgcolor="transparent"
node[shape=circle,style=filled,color=white,colorscheme=ylgnbu7]
edge[color=white,dir="both"]
label="node tree 001 to 101 "
"000"
"001"
"010"
"011"
"100"
"101"
"110"
"111"
"000"
}
digraph google{
// layout=neato;
layout=circo;
// layout=twopi;
fontname="Helvetica,Arial,sans-serif"
fontcolor=white
// bgcolor="black"
bgcolor="transparent"
node[shape=circle,style=filled,color=white,colorscheme=ylgnbu7]
edge[color=white,dir="both"]
label="nodes with index"
// "000"->"001"->"010"->"011"->"100"->"101"->"110"->"111"->"000"
"000"
"001"
"010"
"011"
"100"
"101"
"110"
"111"
}
digraph google{
// layout=neato;
layout=circo;
// layout=twopi;
fontname="Helvetica,Arial,sans-serif"
fontcolor=white
bgcolor="black"
// bgcolor="transparent"
node[shape=circle,style=filled,color=white,colorscheme=ylgnbu7]
edge[color=white,dir="both"]
label="mesh network"
// "000"->"001"->"010"->"011"->"100"->"101"->"110"->"111"->"000"
"000"->"001" "000"->"010" "000"->"011" "000"->"100" "000"->"101" "000"->"110" "000"->"111"
"001"->"010" "001"->"011" "001"->"100" "001"->"101" "001"->"110" "001"->"111"
"010"->"011" "010"->"100" "010"->"101" "010"->"110" "010"->"111"
"011"->"100" "011"->"101" "011"->"110" "011"->"111"
"100"->"101" "100"->"110" "100"->"111"
"101"->"110" "101"->"111"
"110"->"111"
// mode="ipsep"
// "000"[root=true]
// "010"-> "101" [constraint=false color=red,mode="ipsep"];
}
digraph tracker{
// layout=neato;
// layout=circo;
// layout=twopi;
fontname="Helvetica,Arial,sans-serif"
fontcolor=white
bgcolor="black"
// bgcolor="transparent"
node[shape=circle,style=filled,color=white,colorscheme=ylgnbu7,fontsize=15]
edge[color=white,penwidth=2 ,minlen=3]
label="tracker server"
// "000"->"001"->"010"->"011"->"100"->"101"->"110"->"111"->"000"
"tracker server"[shape=box,fontsize=20,color="#00ff00"]
"tracker server"->"client11"
"client11"->"tracker server"
"client11"-> "You" [constraint=false,color=green ,minlen=3,dir="both"];
"tracker server"->"You"
"You"->"tracker server"
"tracker server"->"client10"
"client10"->"tracker server"
"client10"-> "You" [constraint=false,color=green ,minlen=3,dir="both"];
}
digraph google{
// layout=neato;
layout=circo;
// layout=twopi;
fontname="Helvetica,Arial,sans-serif"
fontcolor=white
bgcolor="black"
// bgcolor="transparent"
node[shape=circle,style=filled,color=white,colorscheme=ylgnbu7]
edge[color=white]
label="real world"
// "000"->"001"->"010"->"011"->"100"->"101"->"110"->"111"->"000"
"000"
"001"->"010"[color=red]
"001"->"011"[color=red]
"001"->"110"[color=red]
"001"->"100"[color=red]
"001"->"111"[color=red]
"010"
"011"
"100"->"101"[color=green]
"100"->"111"[color=green]
"100"->"110"[color=green]
"100"->"001"[color=green]
"100"->"010"[color=green]
"100"->"011"[color=green]
"101"
"110"->"111"[color=skyblue]
"110"->"100"[color=skyblue]
"110"->"011"[color=skyblue]
"110"->"010"[color=skyblue]
"110"->"001"[color=skyblue]
"110"->"000"[color=skyblue]
"111"
// "111"->"101"
"000"
}
digraph structs{
fontcolor=white
bgcolor="black"
// bgcolor="transparent"
node[shape=record,style=filled,color=black
fillcolor=white]
edge[dir="back",color=green]
start [label="{You|{<f0>⠀⠀⠀|001|010}|{011|100|<f1>⠀⠀}|{110|<f2>⠀⠀|___}}" shape=Mrecord]
n1 [label="{N1|{<f0>000|⠀⠀|010}|{011|100|⠀⠀}|{⠀⠀|111|___}}" shape=Mrecord]
n2 [label="{N2|{⠀⠀|001|⠀⠀}|{⠀⠀|⠀⠀|<f1>101}|{110|111|___}}" shape=Mrecord]
n3 [label="{N3|{⠀⠀|001|010}|{⠀⠀|100|101}|{110|<f2>111|___}}" shape=Mrecord]
start:f0 -> n1:f0
start:f1 -> n2:f1
start:f2 -> n3:f2
}
digraph google{
// layout=neato;
layout=circo;
// layout=twopi;
fontname="Helvetica,Arial,sans-serif"
fontcolor=white
bgcolor="black"
// bgcolor="transparent"
node[shape=circle,style=filled,color=white,colorscheme=ylgnbu7]
edge[color=white]
label="100 to 101"
// "000"->"001"->"010"->"011"->"100"->"101"->"110"->"111"->"000"
"000"
"001"->"010"
"001"->"011"
"001"->"110"
"001"->"100"
"001"->"111"
"010"
"011"
"100"->"101"[color=blue]
"100"->"111"[color=red]
"100"->"110"[color=red]
"100"->"001"[color=green]
"100"->"010"[color=green]
"100"->"011"[color=green]
"101"
"110"->"111"
"110"->"100"
"110"->"011"
"110"->"010"
"110"->"001"
"110"->"000"
"111"
"000"
}
digraph google{
node[shape=record]
label="node tree"
nnnn [label="***"] ;
nnnn ->"1**" ;
"1**"->"11*";
"11*"->"111";
"11*"->"110";
"1**"->"10*";
"10*"->"101";
"10*"->"100";
nnnn ->"0**";
"0**"->"01*";
"0**"->"00*";
"01*"->"011";
"01*"->"010";
"00*"->"001";
"00*"->"000";
}
digraph google{
fontcolor=white
fontname="Helvetica,Arial,sans-serif"
// bgcolor="transparent"
bgcolor="black"
node[shape=record,style=filled,color=white]
edge[color=white]
subgraph cluster_3 {
"1**"
"11*"
"111"
"110"
"10*"
"101"
"100"
label = "k-bucket 2";
color=green
}
subgraph cluster_2 {
"0**"
"01*"
"011"
"010"
label = "k-bucket 1";
color=red
}
subgraph cluster_1 {
"00*"
"000"
label = "k-bucket 0";
color=blue
}
label="node tree 001 to 101 "
nnnn [label="***"] ;
nnnn ->"1**" ;
"1**"->"11*";
"11*"->"111";
"11*"->"110";
"1**"->"10*";
"10*"->"101";
"10*"->"100";
nnnn ->"0**";
"0**"->"01*";
"0**"->"00*";
"01*"->"011";
"01*"->"010";
"00*"->"001";
"00*"->"000";
}
digraph google{
fontcolor=white
fontname="Helvetica,Arial,sans-serif"
// bgcolor="transparent"
bgcolor="black"
node[shape=record,style=filled,color=white,colorscheme=ylgnbu7]
edge[color=white]
subgraph cluster_3 {
"1**"
"11*"
"111"
"110"
"10*"
"101"
"100"
label = "k-bucket 2(001 xor 101 =100)";
color=green
}
label="node tree 001 to 101 "
nnnn [label="***"]
nnnn ->"1**";
"1**"->"11*";
"11*"->"111";
"11*"->"110";
"1**"->"10*";
"10*"->"101";
"10*"->"100";
nnnn ->"0**";
"0**"->"01*";
"0**"->"00*";
"01*"->"011";
"01*"->"010";
"00*"->"001";
"00*"->"000";
"001"-> "101" [constraint=false color=red];
// "001" "111" rank=same ;
// "001"->"111"[rank=same];
}