public void LoadData(IMouseFrame frame, IWhiskerVelocityFrame previousFrame, IFrameRateSettings frameRateSettings, IUnitSettings unitSettings)
        {
            TargetFrame = frame;

            int numberOfWhiskers = TargetFrame.Whiskers.Length;

            int previousFrameCounter         = 0;
            ISingleWhiskerVelocity nosePoint = null;

            for (int i = 0; i < numberOfWhiskers; i++)
            {
                IWhisker whisker = TargetFrame.Whiskers[i];

                ISingleWhiskerVelocity singleWhiskerVelocity = ModelResolver.Resolve <ISingleWhiskerVelocity>();
                singleWhiskerVelocity.Whisker           = whisker;
                singleWhiskerVelocity.FrameRateSettings = frameRateSettings;
                singleWhiskerVelocity.UnitSettings      = unitSettings;
                singleWhiskerVelocity.NosePoint         = nosePoint;

                if (whisker.WhiskerId == -1)
                {
                    nosePoint = singleWhiskerVelocity;
                }

                if (previousFrame != null)
                {
                    singleWhiskerVelocity.PreviousFrame = previousFrame.Targets[previousFrameCounter];
                }

                Targets.Add(singleWhiskerVelocity);
                previousFrameCounter++;
            }
        }
Beispiel #2
0
 public FrameRateSettingsViewModel(IFrameRateSettings model)
 {
     Model = model;
     Name  = "Frame Rate Settings";
     SettingsUserControl             = new FrameRateSettingsUserControl();
     SettingsUserControl.DataContext = this;
 }
 public FrameRateSettingsViewModel(IFrameRateSettings model)
 {
     Model = model;
     Name = "Frame Rate Settings";
     SettingsUserControl = new FrameRateSettingsUserControl();
     SettingsUserControl.DataContext = this;
 }
Beispiel #4
0
        static GlobalSettings()
        {
            UnitSettings = ModelResolver.Resolve<IUnitSettings>();
            UnitSettings.LoadSettings();

            ColorSettings = ModelResolver.Resolve<IColorSettings>();
            ColorSettings.LoadSettings();

            ClipSettings = ModelResolver.Resolve<IClipSettings>();

            FrameRateSettings = ModelResolver.Resolve<IFrameRateSettings>();
        }
Beispiel #5
0
        static GlobalSettings()
        {
            UnitSettings = ModelResolver.Resolve <IUnitSettings>();
            UnitSettings.LoadSettings();

            ColorSettings = ModelResolver.Resolve <IColorSettings>();
            ColorSettings.LoadSettings();

            ClipSettings = ModelResolver.Resolve <IClipSettings>();

            FrameRateSettings = ModelResolver.Resolve <IFrameRateSettings>();
        }
Beispiel #6
0
        protected override IWhiskerAngularVelocityFrame[] CreateData(IMouseFrame[] frames)
        {
            int frameCount = frames.Length;

            IWhiskerAngularVelocityFrame[] data          = new IWhiskerAngularVelocityFrame[frameCount];
            IWhiskerAngularVelocityFrame   previousFrame = null;

            for (int i = 0; i < frameCount; i++)
            {
                IWhiskerAngularVelocityFrame frameData         = ModelResolver.Resolve <IWhiskerAngularVelocityFrame>();
                IFrameRateSettings           frameRateSettings = GlobalSettings.GlobalSettings.FrameRateSettings;

                frameData.LoadData(frames[i], previousFrame, frameRateSettings);

                data[frames[i].IndexNumber] = frameData;

                previousFrame = frameData;
            }

            return(data);
        }
Beispiel #7
0
 public FrameRateSettingsXml(IFrameRateSettings settings)
 {
     CurrentFrameRate  = settings.CurrentFrameRate;
     OriginalFrameRate = settings.OriginalFrameRate;
 }
        public void LoadData(IMouseFrame frame, IWhiskerAngularVelocityFrame previousFrame, IFrameRateSettings frameRateSettings)
        {
            TargetFrame = frame;

            IAngleTypeBase angleType;
            IWhisker       noseWhisker        = TargetFrame.Whiskers.FirstOrDefault(x => x.WhiskerId == -1);
            IWhisker       orientationWhisker = TargetFrame.Whiskers.FirstOrDefault(x => x.WhiskerId == 0);

            if (noseWhisker == null || orientationWhisker == null)
            {
                //can't generate centerline, use vertical
                angleType = ModelResolver.Resolve <IVertical>();
            }
            else
            {
                ICenterLine centerLine = ModelResolver.Resolve <ICenterLine>();
                centerLine.NosePoint        = noseWhisker.WhiskerPoints[0];
                centerLine.OrientationPoint = orientationWhisker.WhiskerPoints[0];
                angleType = centerLine;
            }

            int numberOfWhiskers = TargetFrame.Whiskers.Length;

            int previousFrameCounter = 0;

            for (int i = 0; i < numberOfWhiskers; i++)
            {
                IWhisker whisker = TargetFrame.Whiskers[i];

                if (whisker.IsGenericPoint)
                {
                    continue;
                }

                ISingleWhiskerAngularVelocity singleWhiskerAngularVelocity = ModelResolver.Resolve <ISingleWhiskerAngularVelocity>();
                singleWhiskerAngularVelocity.Whisker   = whisker;
                singleWhiskerAngularVelocity.AngleType = angleType;
                singleWhiskerAngularVelocity.FrameRate = frameRateSettings.OriginalFrameRate;

                if (previousFrame != null)
                {
                    singleWhiskerAngularVelocity.PreviousFrame = previousFrame.Targets[previousFrameCounter];
                }

                Targets.Add(singleWhiskerAngularVelocity);
                previousFrameCounter++;
            }
        }
 public FrameRateSettingsXml(IFrameRateSettings settings)
 {
     CurrentFrameRate = settings.CurrentFrameRate;
     OriginalFrameRate = settings.OriginalFrameRate;
 }