glejeune/node-graphviz

Headport and tailport are not rendering accordingly

Opened this issue · 0 comments

The documentation for "headport" and "tailport" says that it Indicates where on the head/tail node to attach the head/tail of the edge. In the default case, the edge is aimed towards the center of the node, and then clipped at the node boundary.
The code given below -
`digraph {
rankdir=LR;
node [ shape=record ];

struct1 [
label = "a|b|<port1> c";
];
struct2 [
label = "a|{ <port2> b1|b2}|c";
];
struct1->struct2 [ label="xyz", headport="port1", tailport="port2" ];
}`
should generate an edge from node:struct1 port "c" to node:struct2 port "b1" like this -
image
however it generates an edge like this , using default behavior.
image

I understand that struct1:port1 -> struct2:port2 [ label="xyz" ]; can be used for the purpose ,but I don't know how to use addEdge method to generate such a dot string (open to suggestions ).

I request you to please help me out , to generate an edge like in image 1.
I have also tried other versions of port attribute argument such as such , "c","port0:c" etc yet no use.