Whenever I try to find the intersection between a two regions, one of which is a derived region using RegionUnion, I get a BooleanRegion with which I can do little.
s1 = Sphere[{0, 0, 0}, 0.1];
s2 = RegionUnion[Sphere[{0, 0, 0}, 0.1], Sphere[{0.05, 0, 0}, 0.1]];
l = Line[{{-0.2, 0, 0}, {0.01, 0, 0}}];
Show[Region[s2], Region[Line[{{-0.2, 0, 0}, {0.01, 0, 0}}]]]
RegionIntersection[s2, l]
BooleanRegion[(#1 || #2) && #3 &, {Sphere[{0, 0, 0}, 0.1], Sphere[{0.05, 0, 0}, 0.1], Line[{{-0.2, 0, 0}, {0.01, 0, 0}}]}]
RegionIntersection[s1, l]
Point[{{-0.1, 0, 0}}]
I am sure this has been answered somewhere else, or that I am missing something basic, but I can not find a reference