try {
env2D = (AbstractEnvironment2D) this.environment;
if (env2D.getZoomBox() == null) {
Rectangle2D boundingBox = env2D.getBoundingBox(false);
env2D.setZoomBox(new Rectangle2D(boundingBox.upperLeftCorner(), boundingBox.lowerRightCorner()));
}
Vector2D delta = new Vector2D(deltaVector);
double globalScale = env2D.globalScale();
delta.scale(Vector2D.NULL_VECTOR, new Vector2D(1 / globalScale, 1 / globalScale));
Vector2D newMiddle = new Vector2D(env2D.getZoomBoxMiddle());