getElementBBox()

in src/lib/components/molecules/canvas-map/lib/renderers/TextLayerRenderer.js [285:317]


  getElementBBox(dimens, textStyle, position, padding) {
    const collisionPadding = {
      top: padding,
      right: padding,
      bottom: padding,
      left: padding,
    }

    const { x: translateX, y: translateY } = textStyle.getTranslation(
      dimens.width,
      dimens.height,
    )

    let minX = position.x + translateX - collisionPadding.left
    let minY = position.y + translateY - collisionPadding.top

    let maxX =
      minX + dimens.width + collisionPadding.left + collisionPadding.right
    let maxY =
      minY + dimens.height + collisionPadding.top + collisionPadding.bottom

    minX = Math.floor(minX)
    minY = Math.floor(minY)
    maxX = Math.ceil(maxX)
    maxY = Math.ceil(maxY)

    return {
      minX,
      minY,
      maxX,
      maxY,
    }
  }