Seems like there are other cases then the one in #16 which cause exceptions during line drawing. Another one is triggered if a line from one tree overlaps two edges of a separate tree. Which makes sense. The fix for the other issue doesn't capture that case and I'm not sure we can do so without exposing more information from the hightower algorithm. Doing that correctly might also remove some limitations of the old fix (e.g. not being able to route through a tree unless it is a straight line while everything not creating cycles should be fine).
Seems like there are other cases then the one in #16 which cause exceptions during line drawing. Another one is triggered if a line from one tree overlaps two edges of a separate tree. Which makes sense. The fix for the other issue doesn't capture that case and I'm not sure we can do so without exposing more information from the hightower algorithm. Doing that correctly might also remove some limitations of the old fix (e.g. not being able to route through a tree unless it is a straight line while everything not creating cycles should be fine).
Here's a screenshot of the issue: