The starting position to use.
The margin to use between elements when bumping.
The direction to bump if there is a collision with an existing UI element.
List of rectangles that represent the positions of UI elements already placed.
The suggested position rectangle.
Returns a position Rect based on a starting position that is bumped so that it doesn't intersect with any of the provided savedPositions. This method does not check that the bumped position is still within bounds.