If I try to discretise the intersection (BoundaryDiscretizeRegion), of a shell in a cuboid, some of the regions (that are found with RegionIntersection) are lost in the discretising process. I tried several of the options for BoundaryDiscretizeRegion but none seem to give me both the regions back.
iShell = Table[SphericalShell[{0, 0, 0}, {(i - 1) 0.1, i 0.1}], {i, 50}];
regInt = Table[RegionIntersection[iShell[[i]],
Cuboid[{-1, -4, -1}, {1, 4, 1}]], {i, Length[iShell]}];
RegionIntersection finds the regions:
Table[Region[regInt[[i]]], {i, 27, 29}]
But if I discretise them some are lost, (the MaxCellMeasure setting makes that the regions are properly resolved):
intDisc = Table[BoundaryDiscretizeRegion[regInt[[i]],MaxCellMeasure -> .01], {i, 27, 29}]
My question is: How can I make sure that BoundaryDiscretizeRegion digitises all the regions that were detected with RegionIntersection?
The picture below is just to show the context, the first figure has both regions digitised, the second only one of the regions:
pic = Table[Graphics3D[{intDisc[[i]], Opacity[0.5], iShell[[i + 26]],
Cuboid[{-1, -4, -1}, {1, 4, 1}]}, Boxed -> False], {i, 2}]