Edit: Ah. I see that β Straight Skeleton is a technical term. The Wikipedia article refers to several algorithms. Have you looked at them?
As I understand it, you have a (convex?) Polygon. 1 or more (potentially non-convex) polygons are subtracted from it. You want to turn the result into many polygons without holes. Are there any additional rules that you are trying to apply?
I find it difficult to find the ruleset from the example you provided. External polygons are not convex; therefore, it does not seem to you that you are trying to find a convex set to represent the result (which is a relatively common task).
If you can use the breakdown shown below, the algorithm is pretty simple. Can you clarify?
source share