In my drawings there seems to be 1 point along my links that won’t prompt the jump-over behavior of the links that happens everywhere else. It looks like it may be at the offset point which is 15 units from the edge of the node (the grid shown is 5x5).
If I move the intersecting link in either directions the jump-over works as expected.
Any thoughts on why this might be happening and how I can fix it? What determines whether the link will jump?
In either direction? I think the problem is that the link is too close, so it is crossing over the end segment, which it ignores. More than a decade ago (?) when we first implemented this I remember that we tried having jump-overs occur over all segments of a link, but this often caused bad looking results. So we changed it to skip over the first and last segments (if they are end segments), and things looked much better.
So moving the crossing link further away from the node is what should get it to jump-over. What’s the value of FromEndSegmentLength or ToEndSegmentLength in your app?
That’s what I was assuming was supposed to happen because it doesn’t do the jump over over the ToEndSegment as you described, but it is jumping over on either side of that one point on the From end… It will do the jump over with the intersecting link right next to the node on the from end as shown below (the approximate location where the jump does not occur is marked in red):
It does look like a zero-length segment (i.e. where consecutive points of the route are at the same point) could cause this problem, although I haven’t been able to reproduce the actual problem that way. Further investigation is required.