コード例 #1
0
        public void Visit(TimedTelemetrySnapshot timedTelemetrySnapshot)
        {
            if (timedTelemetrySnapshot.SimulatorSourceInfo.TelemetryInfo.ContainsSlipInformation)
            {
                return;
            }

            string carName = timedTelemetrySnapshot.PlayerData.CarName;

            lock (_lockObject)
            {
                if (string.IsNullOrWhiteSpace(_currentCarName) || _currentCarName != carName)
                {
                    _currentCarName     = carName;
                    _carModelProperties = _carSpecificationProvider.GetCarModelProperties(_simulator, carName);
                }
            }

            if (_carModelProperties == null)
            {
                return;
            }

            ComputeSlip(timedTelemetrySnapshot, timedTelemetrySnapshot.PlayerData.CarInfo.WheelsInfo.FrontLeft, true);
            ComputeSlip(timedTelemetrySnapshot, timedTelemetrySnapshot.PlayerData.CarInfo.WheelsInfo.FrontRight, true);
            ComputeSlip(timedTelemetrySnapshot, timedTelemetrySnapshot.PlayerData.CarInfo.WheelsInfo.RearLeft, false);
            ComputeSlip(timedTelemetrySnapshot, timedTelemetrySnapshot.PlayerData.CarInfo.WheelsInfo.RearRight, false);
            timedTelemetrySnapshot.SimulatorSourceInfo.TelemetryInfo.ContainsSlipInformation = true;
        }
コード例 #2
0
        private void UpdateCarSettingsWindowViewModel()
        {
            CarModelProperties          playersCarProperties = _simSettingAdapter.LastUsedCarProperties;
            CarModelPropertiesViewModel playerCarsViewModel  = new CarModelPropertiesViewModel();

            playerCarsViewModel.FromModel(playersCarProperties);

            _carSettingsWindowViewModel.CarModelPropertiesViewModel = playerCarsViewModel;

            TyreCompoundProperties lastUsedTyre = _simSettingAdapter.LastUsedCompound;
            ObservableCollection <TyreCompoundPropertiesViewModel> tyreSettingsViewModels = new ObservableCollection <TyreCompoundPropertiesViewModel>();

            playerCarsViewModel.TyreCompoundsProperties.ForEach(x => tyreSettingsViewModels.Add(x));
            foreach (TyreCompoundProperties globalTyreCompoundsProperty in _simSettingAdapter.GlobalTyreCompoundsProperties)
            {
                TyreCompoundPropertiesViewModel viewModel = new TyreCompoundPropertiesViewModel();
                viewModel.FromModel(globalTyreCompoundsProperty);
                viewModel.IsGlobalCompound = true;
                tyreSettingsViewModels.Add(viewModel);
            }

            _carSettingsWindowViewModel.TyreSettingsViewModels        = tyreSettingsViewModels;
            _carSettingsWindowViewModel.SelectedTyreSettingsViewModel = tyreSettingsViewModels.First(x => x.CompoundName == lastUsedTyre.CompoundName);
        }