Пример #1
0
        internal void SetMasterSpectra(MasterSpectra masterSpectra, string fileName)
        {
            m_Spectra = masterSpectra;
            m_StateManager.SetMasterSpectra(masterSpectra);
            hsbSlidingWindow.Minimum = 0;
            hsbSlidingWindow.Maximum = Math.Max(1, m_Spectra.RawMeasurements.Count - 50);
            hsbSlidingWindow.Value   = 0;

            if (masterSpectra.ProcessingInfo.GaussianBlur10Fwhm.HasValue)
            {
                m_StateManager.ApplyGaussianBlur(masterSpectra.ProcessingInfo.GaussianBlur10Fwhm.Value / 10.0f);
            }

            if (masterSpectra.IsCalibrated())
            {
                SpectraCalibrator calibrator = m_SpectroscopyController.GetSpectraCalibrator();
                calibrator.Reset();

                if (calibrator.LoadCalibration(masterSpectra.Calibration))
                {
                    m_StateManager.ChangeState <SpectraViewerStateCalibrated>();
                }
            }
            else if (m_SpectroscopyController.HasCalibratedConfiguration())
            {
                if (m_SpectroscopyController.ScaleSpectraByZeroOrderImagePosition())
                {
                    m_StateManager.ChangeState <SpectraViewerStateCalibrated>();
                }
            }

            if (fileName != null)
            {
                Text = string.Format("Spectra Viewer - {0}", Path.GetFileName(fileName));
            }
            else
            {
                Text = "Spectra Viewer";
            }
        }