private void RemovePresentedElements() { if (_presenter2d != null) { _presenter2d.Dispose(); _presenter2d = null; } if (_presenter != null) { _presenter.Dispose(); _presenter = null; } if (_presenterMPR != null) { _presenterMPR.Dispose(); _presenterMPR = null; } if (_scan != null) { _scan.Volume.Slices.ForEach(slice => slice.Dispose()); _scan.Volume.Slices.Clear(); _scan = null; } }
public void LoadSeries() { if (_viewModel.SelectedSeries == null) { return; } RemovePresentedElements(); _scan = DicomVolumeLoader.Load(_viewModel.SelectedSeries as DicomSeries); if (_scan == null) { return; } _presenter = new ScanPresenter3D(_viewModel, _viewModel.VolumeViewer); _presenter.Present(_scan); _presenter2d = new ScanPresenter2D(_viewModel); _presenter2d.Present(_scan); _presenterMPR = new ScanPresenterMPR(_viewModel); _presenterMPR.Present(_scan); }