private void UpdateRotation(double deltaR)
        {
            // calculate new rotated isometric projection
            rotation = ((rotation + deltaR) + 360) % 360;
            var transform = Projections.Isometric.Clone();
            var rotate    = Matrix2D.CreateRotateInstance((Math.PI * rotation) / 180);

            rotate.Multiply(transform, MatrixOrder.Append);

            // set new projection keeping the center of the content rect
            graphControl.UpdateContentRect();
            var center = graphControl.ContentRect.Center;

            graphControl.Projection = rotate;
            // update z-order of model items according to new rotation
            ((IsometricGraphModelManager)graphControl.GraphModelManager).Update();
            graphControl.Center = center;
            graphControl.Invalidate();
        }