How to find the largest semi-circle that fits inside a polygon? I have seen (and implemented) algorithms that find the 'Pole of Inaccessibility' for a polygon - that allows you to draw the largest circle within it. However, if I wanted to find the largest semi-circle that fits inside a polygon, is there a similar method?
EDIT:
I use this algorithm MapBox polylabel to calculate the largest circle that will fit inside a polygon. Whilst I understand what it does, I can't really see a way to apply it to semi-circles.
I feel as if the answer might start with trying to find the longest line inside the polygon that has the smallest average distance to the boundary, which might align it close to the longest straight(ish) part of said boundary.
I re-implemented this Largest Rect in a Poly which I feel could have some bearing on my thoughts above in the way that it searches for longest lines inside the poly.
But its easy to come up with shapes where the largest semi-circle is not really approximated by either the largest circle or the largest rectangle.

My Approach Thus Far
Using the largest rect routine above, I find the largest 2:1 rectangle that will fit.
And (if necessary) move it parallel to the short edge until it is on the boundary.

I then draw a semicircle on each of the long edges, and see if I can make it bigger.
 
I then move the rectangle parallel to the short edge again, until it is on the other side.
Then repeat the semicircle jigging around.

It's not perfect, but it's a decent start.
EDIT:
It seems it would also be worth testing the 'internal' semi-circle formed by each line segment of the polyline. There also feels like there is a geometric solution to finding the largest edge-aligned internal semi-circle for each segment, but I can't quite get my head around it yet.
