def METHOD_NAME(self, dimensions: Union[pygame.math.Vector2,
                                           Tuple[int, int],
                                           Tuple[float, float]],
                   clamp_to_container: bool = False):
    """
    Set the dimensions of this image, scaling the image surface to match.
    :param dimensions: The new dimensions of the image.
    :param clamp_to_container: Whether we should clamp the dimensions to the
                               dimensions of the container or not.
    """
    super().METHOD_NAME(dimensions)
    if self.rect.size != self.image.get_size():
        if self.original_image is None:
            if self._pre_clipped_image is not None:
                self.original_image = self._pre_clipped_image
            else:
                self.original_image = self.image
        self._set_image(pygame.transform.smoothscale(self.original_image, self.rect.size))