private async Task MoveCameraToOverview(AlternativeRoutesComposition composition, CancellationToken cancellationToken) { _cameraManager.Value.ExitFromGuidanceMode(); _cameraManager.Value.TurnUserLocationFollowingOff(); IMapCameraPositionPresenter cp = _cameraPresenter.Value; CameraPositionModel curCamera = cp.CurrentCameraPosition; const float azimutTolerance = 1f; if (Math.Abs(curCamera.Azimuth) > azimutTolerance) { var rotatatedCamera = new CameraPositionModel(curCamera.Target, curCamera.Zoom); await cp.MoveCamera(rotatatedCamera); cancellationToken.ThrowIfCancellationRequested(); } await cp.MoveCamera(composition.BoundingBox); }
public DebugFullDrivingGuideSession(DrivingRouteObject drivingRouteObject, IDrivingGuide drivingGuide, IDrivingRouteObjectFactory drivingRouteObjectFactory, IGenericRendererSync <DrivingRouteObject, DrivingRouteGuideMapObject> guideRouteRenderer, MapObjectCollection mapObjectCollection, IInternalLocationService locationService, IInternalUserLocationLayerPresenter locationLayerPresenter, ILogManager logManager, ISettingsRepository settingsRepository, ILifecycleService lifecycleService, ILanguagesRepository languagesRepository, ICameraManager cameraManager, IMapCameraPositionPresenter cameraPositionPresenter, ViaPointsSessionManagerFactory viaPointsSessionManagerFactory, RoutesOverviewPresenterFactory routesOverviewPresenterFactory, IConcurrencyService concurrencyService, IDebugPanelSettingsRepository debugRepository) : base(drivingRouteObject, drivingGuide, drivingRouteObjectFactory, guideRouteRenderer, mapObjectCollection, locationService, locationLayerPresenter, logManager, settingsRepository, lifecycleService, languagesRepository, cameraManager, cameraPositionPresenter, viaPointsSessionManagerFactory, routesOverviewPresenterFactory) { _concurrencyService = concurrencyService; _debugRepository = debugRepository; _drivingGuide = drivingGuide; }