Example #1
0
        public void ZoomToBox(Geometries.Point beginPoint, Geometries.Point endPoint)
        {
            double x, y, resolution;
            var    width  = Math.Abs(endPoint.X - beginPoint.X);
            var    height = Math.Abs(endPoint.Y - beginPoint.Y);

            if (width <= 0)
            {
                return;
            }
            if (height <= 0)
            {
                return;
            }

            ZoomHelper.ZoomToBoudingbox(beginPoint.X, beginPoint.Y, endPoint.X, endPoint.Y,
                                        ActualWidth, ActualHeight, out x, out y, out resolution);
            resolution = ZoomHelper.ClipResolutionToExtremes(_map.Resolutions, resolution);

            Map.Viewport.Center     = new Geometries.Point(x, y);
            Map.Viewport.Resolution = resolution;
            _toResolution           = resolution;

            _map.ViewChanged(true);
            OnViewChanged(true);
            RefreshGraphics();
            ClearBBoxDrawing();
        }
Example #2
0
 private void SKElementOnPaintSurface(object sender, SKPaintSurfaceEventArgs e)
 {
     if (!_viewportInitialized)
     {
         InitializeViewport();
     }
     if (!_viewportInitialized)
     {
         return;                        // Stop if the line above failed.
     }
     if (!_invalid && !DeveloperTools.DeveloperMode)
     {
         return; // In developermode always render so that fps can be counted
     }
     if (_skiaScale == null)
     {
         _skiaScale = GetSkiaScale();
     }
     e.Surface.Canvas.Scale((float)_skiaScale.X, (float)_skiaScale.Y);
     OnPaintSurface(e.Surface.Canvas, e.Info.Width, e.Info.Height);
 }
Example #3
0
 private void SKElementOnPaintSurface(object sender, SKPaintSurfaceEventArgs e)
 {
     if (!_viewportInitialized)
     {
         InitializeViewport();
     }
     if (!_viewportInitialized)
     {
         return;                        // Stop if the line above failed.
     }
     if (!_invalid)
     {
         return;            // Don't render when nothing has changed
     }
     if (_skiaScale == null)
     {
         _skiaScale = GetSkiaScale();
     }
     e.Surface.Canvas.Scale((float)_skiaScale.X, (float)_skiaScale.Y);
     OnPaintSurface(e.Surface.Canvas, e.Info.Width, e.Info.Height);
 }
Example #4
0
        private void SKElementOnPaintSurface(object sender, SKPaintSurfaceEventArgs e)
        {
            if (!_viewportInitialized) InitializeViewport();
            if (!_viewportInitialized) return; // Stop if the line above failed.
            if (!_invalid && !DeveloperTools.DeveloperMode)
                return; // In developermode always render so that fps can be counted

            if (_skiaScale == null) _skiaScale = GetSkiaScale();
            e.Surface.Canvas.Scale((float) _skiaScale.X, (float) _skiaScale.Y);
            OnPaintSurface(e.Surface.Canvas, e.Info.Width, e.Info.Height);
        }
Example #5
0
 public Geometries.Point ScreenToWorld(Geometries.Point screenPosition)
 {
     return(SharedMapControl.ScreenToWorld(Map.Viewport, (float)_skiaScale.Y, screenPosition));
 }
Example #6
0
 public Geometries.Point WorldToScreen(Geometries.Point worldPosition)
 {
     return(SharedMapControl.WorldToScreen(Map.Viewport, (float)_skiaScale.X, worldPosition));
 }