public WhiskerAngularVelocityViewModel(AnalyserViewModel parent) : base(parent, "Whisker Angular Velocity") { Model = ModelResolver.Resolve <IWhiskerAngularVelocity>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); CreateFrames(); MethodControl = new WhiskerAngularVelocityView() { DataContext = this, }; ObservableCollection <AngleTypeBase> angleOptions = new ObservableCollection <AngleTypeBase>(); IWhisker nosePoint = Parent.CurrentFrame.Whiskers.Select(x => x.Model).FirstOrDefault(x => x.WhiskerId == -1); IWhisker orientationPoint = Parent.CurrentFrame.Whiskers.Select(x => x.Model).FirstOrDefault(x => x.WhiskerId == 0); if (nosePoint != null && orientationPoint != null) { angleOptions.Add(new CenterLineViewModel()); } angleOptions.Add(new VerticalViewModel()); angleOptions.Add(new HorizontalViewModel()); AngleOptions = angleOptions; SelectedAngleOption = AngleOptions.First(); Initialise(); }
public WhiskerAngleViewModel(AnalyserViewModel parent, string name = "Whisker Angle") : base(parent, name) { Model = ModelResolver.Resolve<IWhiskerAngle>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); CreateFrames(); MethodControl = new WhiskerAngleMethodView() { DataContext = this, }; Initialise(); ObservableCollection<AngleTypeBase> angleOptions = new ObservableCollection<AngleTypeBase>(); IWhisker nosePoint = Parent.CurrentFrame.Whiskers.Select(x => x.Model).FirstOrDefault(x => x.WhiskerId == -1); IWhisker orientationPoint = Parent.CurrentFrame.Whiskers.Select(x => x.Model).FirstOrDefault(x => x.WhiskerId == 0); if (nosePoint != null && orientationPoint != null) { angleOptions.Add(new CenterLineViewModel()); } angleOptions.Add(new VerticalViewModel()); angleOptions.Add(new HorizontalViewModel()); AngleOptions = angleOptions; SelectedAngleOption = AngleOptions.First(); }
public WhiskerAmplitudeViewModel(AnalyserViewModel parent) : base(parent, "Whisker Amplitude") { Model = ModelResolver.Resolve <IWhiskerAmplitude>(); MethodControl = new WhiskerAmplitudeView() { DataContext = this, }; }
public WhiskerProtractionRetractionViewModel(AnalyserViewModel parent) : base(parent, "Whisker Protraction/Retraction Velocity") { Model = ModelResolver.Resolve <IWhiskerProtractionRetraction>(); MethodControl = new WhiskerProtractionRetractionView() { DataContext = this, }; }
public WhiskerAmplitudeViewModel(AnalyserViewModel parent) : base(parent, "Whisker Amplitude") { Model = ModelResolver.Resolve<IWhiskerAmplitude>(); MethodControl = new WhiskerAmplitudeView() { DataContext = this, }; }
public WhiskerProtractionRetractionViewModel(AnalyserViewModel parent) : base(parent, "Whisker Protraction/Retraction Velocity") { Model = ModelResolver.Resolve<IWhiskerProtractionRetraction>(); MethodControl = new WhiskerProtractionRetractionView() { DataContext = this, }; }
public IActionResult Remove([FromForm] AnalyserViewModel viewModel) { var dbAnalyser = _dbContext.Analysers.FirstOrDefault(l => l.Id == viewModel.Id); if (dbAnalyser != null) { _dbContext.Analysers.Remove(dbAnalyser); _dbContext.SaveChanges(); } return(RedirectToAction("Index")); }
public HeadOrientationViewModel(AnalyserViewModel parent) : base(parent, "Head Orientation") { Model = ModelResolver.Resolve <IHeadOrientation>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); CreateFrames(); MethodControl = new HeadOrientationView() { DataContext = this, }; Initialise(); }
public WhiskerVelocityViewModel(AnalyserViewModel parent) : base(parent, "Whisker Velocity") { Model = ModelResolver.Resolve <IWhiskerVelocity>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); CreateFrames(); MethodControl = new WhiskerVelocityView() { DataContext = this, }; Initialise(); }
public HeadOrientationViewModel(AnalyserViewModel parent) : base(parent, "Head Orientation") { Model = ModelResolver.Resolve<IHeadOrientation>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); CreateFrames(); MethodControl = new HeadOrientationView() { DataContext = this, }; Initialise(); }
public WhiskerVelocityViewModel(AnalyserViewModel parent) : base(parent, "Whisker Velocity") { Model = ModelResolver.Resolve<IWhiskerVelocity>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); CreateFrames(); MethodControl = new WhiskerVelocityView() { DataContext = this, }; Initialise(); }
public NoseDisplacementViewModel(AnalyserViewModel parent) : base(parent, "Nose Displacement") { Model = ModelResolver.Resolve <INoseDisplacement>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); MethodControl = new NoseDisplacementView() { DataContext = this, }; ShowFrameSlider = false; Initialise(); }
public NoseDisplacementViewModel(AnalyserViewModel parent) : base(parent, "Nose Displacement") { Model = ModelResolver.Resolve<INoseDisplacement>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); MethodControl = new NoseDisplacementView() { DataContext = this, }; ShowFrameSlider = false; Initialise(); }
private void OpenAnalyserWindow() { string message; if (!ValidateResults(out message)) { MessageBox.Show("Unable to analyse video: " + message); return; } AnalyserViewModel viewModel = new AnalyserViewModel(m_Frames, WhiskerVideo); AnalyserView view = new AnalyserView() { DataContext = viewModel, }; view.ShowDialog(); }
public WhiskerFrequencyViewModel(AnalyserViewModel parent) : base(parent, "Whisker Frequency") { FrequencyTypes = new ObservableCollection <FrequencyTypeBaseViewModel>() { new AutocorrelogramViewModel(), new DiscreteFourierTransformViewModel(), }; Model = ModelResolver.Resolve <IWhiskerFrequency>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); SelectedFrequencyType = FrequencyTypes.First(); CreateFrames(); MethodControl = new WhiskerFrequencyView() { DataContext = this, }; Initialise(); }
public AnalyseEverythingViewModel(AnalyserViewModel parent) : base(parent, "Analyse Everything") { ObservableCollection <AnalyseEverythingBaseViewModel> analysisMethods = new ObservableCollection <AnalyseEverythingBaseViewModel>(); foreach (MethodBase method in parent.AnalysisMethods) { if (method is NoseDisplacementViewModel || method is WhiskerFrequencyViewModel || method is WhiskerMeanOffsetViewModel || method is WhiskerAmplitudeViewModel || method is WhiskerProtractionRetractionViewModel) { analysisMethods.Add(new AnalyseEverythingBaseViewModel(this, method)); } } AnalysisMethods = analysisMethods; ItemsToAnalyse = new ObservableCollection <AnalyseEverythingBaseViewModel>(); MethodControl = new AnalyseEverythingView() { DataContext = this, }; ShowFrameSlider = false; ObservableCollection <AngleTypeBase> angleOptions = new ObservableCollection <AngleTypeBase>(); angleOptions.Add(new CenterLineViewModel()); angleOptions.Add(new VerticalViewModel()); angleOptions.Add(new HorizontalViewModel()); AngleOptions = angleOptions; SelectedAngleOption = AngleOptions.First(); ObservableCollection <FrequencyTypeBaseViewModel> frequencyTypes = new ObservableCollection <FrequencyTypeBaseViewModel>(); frequencyTypes.Add(new AutocorrelogramViewModel()); frequencyTypes.Add(new DiscreteFourierTransformViewModel()); FrequencyTypes = frequencyTypes; SelectedFrequencyType = FrequencyTypes.First(); Initialise(); }
public AnalyseEverythingViewModel(AnalyserViewModel parent) : base(parent, "Analyse Everything") { ObservableCollection<AnalyseEverythingBaseViewModel> analysisMethods = new ObservableCollection<AnalyseEverythingBaseViewModel>(); foreach (MethodBase method in parent.AnalysisMethods) { if (method is NoseDisplacementViewModel || method is WhiskerFrequencyViewModel || method is WhiskerMeanOffsetViewModel || method is WhiskerAmplitudeViewModel || method is WhiskerProtractionRetractionViewModel) { analysisMethods.Add(new AnalyseEverythingBaseViewModel(this, method)); } } AnalysisMethods = analysisMethods; ItemsToAnalyse = new ObservableCollection<AnalyseEverythingBaseViewModel>(); MethodControl = new AnalyseEverythingView() { DataContext = this, }; ShowFrameSlider = false; ObservableCollection<AngleTypeBase> angleOptions = new ObservableCollection<AngleTypeBase>(); angleOptions.Add(new CenterLineViewModel()); angleOptions.Add(new VerticalViewModel()); angleOptions.Add(new HorizontalViewModel()); AngleOptions = angleOptions; SelectedAngleOption = AngleOptions.First(); ObservableCollection<FrequencyTypeBaseViewModel> frequencyTypes = new ObservableCollection<FrequencyTypeBaseViewModel>(); frequencyTypes.Add(new AutocorrelogramViewModel()); frequencyTypes.Add(new DiscreteFourierTransformViewModel()); FrequencyTypes = frequencyTypes; SelectedFrequencyType = FrequencyTypes.First(); Initialise(); }
public WhiskerFrequencyViewModel(AnalyserViewModel parent) : base(parent, "Whisker Frequency") { FrequencyTypes = new ObservableCollection<FrequencyTypeBaseViewModel>() { new AutocorrelogramViewModel(), new DiscreteFourierTransformViewModel(), }; Model = ModelResolver.Resolve<IWhiskerFrequency>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); SelectedFrequencyType = FrequencyTypes.First(); CreateFrames(); MethodControl = new WhiskerFrequencyView() { DataContext = this, }; Initialise(); }
public WhiskerSpreadViewModel(AnalyserViewModel parent) : base(parent, "Whisker Spread") { IWhisker nosePoint = Parent.CurrentFrame.Whiskers.Select(x => x.Model).FirstOrDefault(x => x.WhiskerId == -1); IWhisker orientationPoint = Parent.CurrentFrame.Whiskers.Select(x => x.Model).FirstOrDefault(x => x.WhiskerId == 0); if (nosePoint == null || orientationPoint == null) { //Can't work! return; } Model = ModelResolver.Resolve <IWhiskerSpread>(); Model.LoadData(parent.Frames.Values.Select(x => x.Model).ToArray()); Model.UpdateTValue(0); CreateFrames(); MethodControl = new WhiskerSpreadView() { DataContext = this, }; Initialise(); }
protected MethodBaseWithImage(AnalyserViewModel parent, string methodName) : base(parent, methodName) { }
protected MethodBase(AnalyserViewModel parent, string methodName) { MethodName = methodName; Parent = parent; }
public OpenCommand(MainBusyService busyService, AnalyserViewModel analyserViewModel, MainViewIdentifier mainViewIdentifier) { this.busyService = busyService; this.analyserViewModel = analyserViewModel; this.mainViewIdentifier = mainViewIdentifier; }