Beispiel #1
0
        void Map_CameraMoving(object sender, CameraMovingEventArgs e)
        {
            bool updateA = false, updateB = false;
            var  zoom = e.Position.Zoom;

            if (e.Position.Zoom < 17.5)
            {
                zoom    = 17.5;
                updateA = true;
            }
            var position = e.Position.Target;

            if (Distance(new Position(43.226743, -79.895084), e.Position.Target) > 0.15)
            {
                position = new Position(43.226743, -79.895084);
                updateB  = true;
            }
            if (updateA)
            {
                Map.MoveCamera(CameraUpdateFactory.NewCameraPosition(new CameraPosition(Map.CameraPosition.Target, zoom, e.Position.Bearing, e.Position.Tilt)));
            }
            if (updateB)
            {
                Map.AnimateCamera(CameraUpdateFactory.NewCameraPosition(new CameraPosition(position, Map.CameraPosition.Zoom, e.Position.Bearing, e.Position.Tilt)), TimeSpan.FromMilliseconds(250));
            }
        }
 private void OnCameraMoving(object sender, CameraMovingEventArgs cameraMovingEventArgs)
 {
     Command?.Execute(cameraMovingEventArgs);
 }