measureBoundingBox = (...geometries) => {
  geometries = flatten(geometries)
  if (geometries.length === 0) throw new Error('wrong number of arguments')

  const results = geometries.map((geometry) => {
    if (path2.isA(geometry)) return measureBoundingBoxOfPath2(geometry)
    if (geom2.isA(geometry)) return measureBoundingBoxOfGeom2(geometry)
    if (geom3.isA(geometry)) return measureBoundingBoxOfGeom3(geometry)
    return [[0, 0, 0], [0, 0, 0]]
  })
  return results.length === 1 ? results[0] : results
}
Measure the min and max bounds of the given geometries.
@param {...Object} geometries - the geometries to measure
@return {Array} the min and max bounds, or a list of bounds for each geometry
@alias module:modeling/measurements.measureBoundingBox

@example
let bounds = measureBoundingBox(sphere())