double globalScale = this.globalScale();
Polygon2D b = visibleBox.toPol2D();
b.scale(Vector2D.NULL_VECTOR, new Vector2D(globalScale, globalScale));
Vector2D midTranslation = new Vector2D(screenWidth / 2, screenHeight / 2);
midTranslation.sub(b.centerPoint());
Rectangle2D border = new Rectangle2D(
new Vector2D(screenLeft, screenUp),
new Vector2D(screenWidth - screenLeft, screenHeight - screenUp));
Polygon2D bound = visibleBox.toPol2D();
bound.scale(Vector2D.NULL_VECTOR, new Vector2D(globalScale, globalScale));