Source: tools/services/buffer.js

/**
 * Permet d'appliquer un buffer sur une extent. Le buffer est un ratio
 * S'il est de 1, l'extent retournée sera identique
 *
 * @param {ol.Extent} extent Extent sur laquelle appliquer le buffer
 * @param {Number} buffer Buffer à appliquer
 * @returns {ol.Extent} Nouvelle extent avec buffer
 */
export function bufferExtent ([minx, miny, maxx, maxy], buffer) {
  const boundx = (maxx - minx) / 2 * (buffer - 1)
  const boundy = (maxy - miny) / 2 * (buffer - 1)
  return [
    minx - boundx,
    miny - boundy,
    maxx + boundx,
    maxy + boundy,
  ]
}