Beispiel #1
0
        public static void ImportButton_Click(object sender, RoutedEventArgs e)
        {
            var dlg = new OpenFileDialog()
            {
                DefaultExt = ".mvs",
                Filter     = "Multimodal Visualizer Scene (*.mvs)|*.mvs"
            };

            if (dlg.ShowDialog().GetValueOrDefault())
            {
                Kinect.Instance.Player.Close();
                if (File.Exists(Properties.Paths.CurrentKdvrFile))
                {
                    File.Delete(Properties.Paths.CurrentKdvrFile);
                }
                if (File.Exists(Properties.Paths.CurrentDataFile))
                {
                    File.Delete(Properties.Paths.CurrentDataFile);
                }

                ZipFile.ExtractToDirectory(dlg.FileName, Properties.Paths.CurrentSceneDirectory);

                Kinect.Instance.Player.OpenFile(Properties.Paths.CurrentKdvrFile);

                var db = BackupDataContext.CreateConnection(Properties.Paths.CurrentDataFile);
                Scene.CreateFromDbContext();

                MainWindow.Instance().FromSceneRadioButton.IsChecked = true;

                System.Windows.Forms.DialogResult dialogResult =
                    System.Windows.Forms.MessageBox.Show(
                        "Escena importada con éxito!",
                        "Importar escena");
            }
        }
        public async void StopRecordButton_Click(object sender, RoutedEventArgs e)
        {
            if (_recorder != null)
            {
                await _recorder.StopAsync();

                _recorder = null;

                //File.Copy(Properties.Paths.CurrentKdvrFile, Properties.Paths.CurrentReplayKdvrFile);
                Kinect.Instance.Player.OpenFile(Properties.Paths.CurrentKdvrFile);

                Scene.Instance.Duration = Kinect.Instance.Player.Duration;
                Scene.Instance.InitTimeLine();

                foreach (Person person in Scene.Instance.Persons)
                {
                    if (!person.HasBeenTracked)
                    {
                        continue;
                    }
                    //person.generatePostureIntervals();
                    //person.View.repaintIntervalGroups();
                    //MainWindow.Instance().timeLineContentGrid.Children.Add(person.View.postureGroupsGrid);
                }
                Interaction.Instance.GenerateIntervalGroups();
                Scene.Instance.Interaction = Interaction.Instance;
                var db = BackupDataContext.CreateConnection(Properties.Paths.CurrentDataFile);
                db.Database.EnsureCreated();
                //db.Scene.Add(Scene.Instance);
                //db.SaveChanges();

                MainWindow.Instance().FromSceneRadioButton.IsChecked = true;

                System.Windows.Forms.DialogResult dialogResult =
                    System.Windows.Forms.MessageBox.Show(
                        "Escena grabada con éxito!",
                        "Grabación");
            }
        }