# Find bounding box of arbitrary 3d graphics?

What's the best workaround for this limitation:

RegionBounds[
BoundaryDiscretizeGraphics[Graphics3D[{Cone[], Cuboid[]}]]]


• Tz. Who downvotes this? @M.R. What about RegionBounds@RegionUnion[ BoundaryDiscretizeRegion[Cone[]], BoundaryDiscretizeRegion[Cuboid[]] ]? – Henrik Schumacher Jan 14 at 15:50
• The very last item in the DiscretizeRegion docs says "DiscretizeGraphics for Graphics3D with multiple volume primitives is not supported", unfortunately. Hence the need for a workaround I suppose :) – Carl Lange Jan 14 at 15:56
• @HenrikSchumacher I expect the downvote was due to the question originally not having copy-pasteable code :) – Carl Lange Jan 14 at 15:57
• @HenrikSchumacher I did. Because of the very low quality question for a long term user. No copyable code, not a word about what qualifies as expected output etc. – Kuba Jan 14 at 15:58
• Possible duplicate: mathematica.stackexchange.com/questions/18034/… – Michael E2 Jan 14 at 16:33

Chartingget3DPlotRange[
(*  {{-1., 1.}, {-1., 1.}, {-1., 1.}}  *)


If "arbitrary 3d graphics" includes of objects of heterogeneous dimensions, then get3DPlotRange still works:

Chartingget3DPlotRange[
Show[Graphics3D[{Cone[], Cuboid[], Point[{0, 0, -3}],
Line[{{1, 0, 0}, {-2, 0, 0}}]}], PlotRangePadding -> None]]
(*  {{-2., 1.}, {-1., 1.}, {-3., 1.}}  *)

RegionBounds@RegionUnion[
BoundaryDiscretizeRegion[Cone[]],
BoundaryDiscretizeRegion[Cuboid[]]
]


{{-1., 1.}, {-1., 1.}, {-1., 1.}}

MinMax /@ Transpose[RegionBounds /@ {Cone[], Cuboid[]}]


{{-1, 1}, {-1, 1}, {-1, 1}}