GoIconicNode does not support bezier-curved GoLink


I am using some GoIconicNodes. Now, when I try to connect between them using bezier-curved GoLinks, they will show as straight lines. Using the same code to connect between GoBasicNodes produces a perfect result. Somebody know what's wrong with GoIconicNodes?
Kind regards,

I am not sure, but i guess it depends on the different ports which belong to the nodes. There is a property of the port which makes the link go straight off the node (to top, right, bottom or left) and then run to the other node direction. This port should be of the type GoBoxPort. The property relevant for the length of the straight segment is something like ‘SegmentLength’ or ‘EndSegmentLength’.
The GoBasicNode likely has a port of the the type GoPort.
Maybe you should try to override a CreatePort routine (if it is existing).
(Sorry for unconcrete answer. The computer i am using right now does not have a dev environment)

Kind regards,

Thank you, Joern. EndSegmentLength works fine for me.

That’s a bit surprising, but perhaps I don’t understand exactly what the situation is.

I was going to suggest that perhaps you changed the GoLink.Style to Bezier after you had already connected the link to both nodes. If that was the case, you can just call Go[Labeled]Link.CalculateStroke() to force the link to recompute its path.

I checked your proposal out, but it still won’t work:

the last thing I do is:
_GoLink.Style = GoStrokeStyle.Bezier; _GoLink.CalculateStroke(); _GoView.Document.LinksLayer.Add(_GoLink);The bezier-curve is only missing when connecting between a GoIconicNode and a _GoSimpleNode; not when connecting a GoIconicNode with a GoIconicNode
strange enough - - - ;-) Lars

Playing in Demo1 with a GoIconicNode and a GoSimpleNode, and forcing a link into Bezier style with the F4 dialog… I end up with a link with 3 points, which isn’t a valid Bezier link, since it has to have at least 4.

oh, thank you, Jake
Do you know if there is a way to add a point? And would that solve my problem?

:-) Lars