Exemplo n.º 1
0
        public preferencesForm(BaseTypes.Settings settings)
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();
            localSettingsInstance=new FinalApp1.BaseTypes.Settings();
            InitializeValues(settings);

            //
            // TODO: Add any constructor code after InitializeComponent call
            //
        }
Exemplo n.º 2
0
        //OK
        //Event handling
        private void InitializeValues(BaseTypes.Settings settings)
        {
            localSettingsInstance = settings;
            this.neuralNetworksInitialLearningDurationTB.Text=Convert.ToString(settings.neuralNetworkTrainingIterations);
            this.trainingRateTB.Text=Convert.ToString(settings.neuralNetworkTrainingRate);
            this.maxWeightTB.Text=Convert.ToString(settings.neuralNetworkMaximumWeight);
            this.minWeightTB.Text=Convert.ToString(settings.neuralNetworkMinimumWeight);
            this.hiddenLayersCountTB.Text=Convert.ToString(settings.neuralNetworkHiddenLayersCount);
            this.hiddenLayersSizeTB.Text=Convert.ToString(settings.neuralNetworkHiddenLayersSize);
            this.scalingFactorTB.Text=Convert.ToString(settings.viewportXYScalingFactor);
            this.horizontalResTB.Text=Convert.ToString(settings.viewportXYHorizontalRes);
            this.verticalResTB.Text=Convert.ToString(settings.viewportXYVerticalRes);
            this.scanAreaOffsetTB.Text=Convert.ToString(settings.scanAreaOffset);
            this.preciseAcceptanceThresholdTB.Text=Convert.ToString(settings.preciseAcceptanceThreshold);
            this.frameIteratorTB.Text=Convert.ToString(settings.frameIterator);
            this.minimumTrackingPointRadiusTB.Text=Convert.ToString(settings.minimumOrientPointRadius);
            this.maximumTrackingPointRadiusTB.Text=Convert.ToString(settings.maximumOrientPointRadius);

            if (settings.viewportXYScalingType==BaseTypes.scalingType.Native)
                this.keepNativeSizeRB.Checked=true; else if
               (settings.viewportXYScalingType==BaseTypes.scalingType.ScaleBy)
                this.scaleByRB.Checked=true; else this.customResolutionRB.Checked=true;
        }
Exemplo n.º 3
0
        //handles closing project (to re-implement)
        private void CloseCurrentProject()
        {
            if (app_status.GetStatus()>=_app_status.project_active)
            {
                saveQuery();
                trackingPoints=null;
                projectSettings=null;

                viewportXY.Dispose();
                viewportXZ.Dispose();
                viewportYZ.Dispose();
                tempTrackingPoint=null;
                tf=null;
                trackingPointsBasicInfo=null;
                trackingPoints=null;
                totalTrackingPoints=0;

                trackingHist = null;
                viewportXY=null;
                viewportXZ=null;
                viewportYZ=null;
                trackingPointsLB.Items.Clear();
                app_status.SetStatus(_app_status.started);
            }
            else Message("No active project detected");
        }
Exemplo n.º 4
0
        //handles preferences window (dialog)
        private void OpenPreferences()
        {
            if (projectSettings!=null)
                using (preferencesForm xForm = new preferencesForm(projectSettings))
                {
                    Message("Opening preferences window...");
                    if (xForm.ShowDialog(this)==DialogResult.OK)
                    {

                        //if ( (projectSettings.viewportXYScalingType!=xForm.localSettingsInstance.viewportXYScalingType) ||
                        //	(projectSettings.viewportXZScalingType!=xForm.localSettingsInstance.viewportXZScalingType) ||
                        //	(projectSettings.viewportYZScalingType!=xForm.localSettingsInstance.viewportYZScalingType) )

                        //{
                        //TU MA BYÆ OSTRZE¯ENIE O RESKALOWANIU!!!
                        viewportXY.Dispose();
                        viewportXZ.Dispose();
                        viewportYZ.Dispose();

                        InitializeViewports();

                        if (xForm.localSettingsInstance.viewportXYScalingType==BaseTypes.scalingType.Custom)
                            viewportXY.loadMedia(xForm.localSettingsInstance.viewportXYFileName,(int)xForm.localSettingsInstance.viewportXYHorizontalRes,(int)xForm.localSettingsInstance.viewportXYVerticalRes);
                        else if (xForm.localSettingsInstance.viewportXYScalingType==BaseTypes.scalingType.ScaleBy)
                            viewportXY.loadMedia(xForm.localSettingsInstance.viewportXYFileName,xForm.localSettingsInstance.viewportXYScalingFactor);
                        else viewportXY.loadMedia(xForm.localSettingsInstance.viewportXYFileName);

                        if (xForm.localSettingsInstance.viewportXZScalingType==BaseTypes.scalingType.Custom)
                            viewportXZ.loadMedia(xForm.localSettingsInstance.viewportXZFileName,(int)xForm.localSettingsInstance.viewportXZHorizontalRes,(int)xForm.localSettingsInstance.viewportXZVerticalRes);
                        else if (xForm.localSettingsInstance.viewportXZScalingType==BaseTypes.scalingType.ScaleBy)
                            viewportXZ.loadMedia(xForm.localSettingsInstance.viewportXZFileName,xForm.localSettingsInstance.viewportXZScalingFactor);
                        else viewportXZ.loadMedia(xForm.localSettingsInstance.viewportXZFileName);

                        if (xForm.localSettingsInstance.viewportYZScalingType==BaseTypes.scalingType.Custom)
                            viewportYZ.loadMedia(xForm.localSettingsInstance.viewportYZFileName,(int)xForm.localSettingsInstance.viewportYZHorizontalRes,(int)xForm.localSettingsInstance.viewportYZVerticalRes);
                        else if (xForm.localSettingsInstance.viewportYZScalingType==BaseTypes.scalingType.ScaleBy)
                            viewportYZ.loadMedia(xForm.localSettingsInstance.viewportYZFileName,xForm.localSettingsInstance.viewportYZScalingFactor);
                        else viewportYZ.loadMedia(xForm.localSettingsInstance.viewportYZFileName);

                        projectSettings=xForm.localSettingsInstance;

                        viewportXY.setStartFrame(projectSettings.viewportXYStartFrame);
                        viewportXZ.setStartFrame(projectSettings.viewportXZStartFrame);
                        viewportYZ.setStartFrame(projectSettings.viewportYZStartFrame);

                        viewportXY.capMode();
                        viewportXZ.capMode();
                        viewportYZ.capMode();

                        visualizePoints();
                    }
                    Message("Updating preferences complete");
                    projectSaved=false;
                }
            else Message("No project active - load or create new project first");
        }
Exemplo n.º 5
0
        //handles loading project
        private void LoadProject()
        {
            Message("Loading project");

            loadProjectD.Filter = "Motion capture project files (*.mcp)|*.mcp";

            if((loadProjectD.ShowDialog() == System.Windows.Forms.DialogResult.OK) &&
                (loadProjectD.FileName!=""))
            {

                if (viewportXY!=null || viewportXZ!=null || viewportYZ!=null)
                    CloseCurrentProject();

                InitializeSettings("temp");
                IFormatter formatter = new BinaryFormatter();
                Stream stream = new FileStream(loadProjectD.FileName, FileMode.Open, FileAccess.Read, FileShare.Read);
                projectSettings = new BaseTypes.Settings();
                projectSettings= (BaseTypes.Settings)formatter.Deserialize(stream);
                stream.Close();
                InitializeViewports();
                trackingPoints = new ArrayList();
                app_status.SetStatus(_app_status.project_active);

                if (projectSettings.viewportXYScalingType==BaseTypes.scalingType.Custom)
                    viewportXY.loadMedia(projectSettings.viewportXYFileName,(int)projectSettings.viewportXYHorizontalRes,(int)projectSettings.viewportXYVerticalRes);
                else if (projectSettings.viewportXYScalingType==BaseTypes.scalingType.ScaleBy)
                    viewportXY.loadMedia(projectSettings.viewportXYFileName,projectSettings.viewportXYScalingFactor);
                else viewportXY.loadMedia(projectSettings.viewportXYFileName);

                if (projectSettings.viewportXZScalingType==BaseTypes.scalingType.Custom)
                    viewportXZ.loadMedia(projectSettings.viewportXZFileName,(int)projectSettings.viewportXZHorizontalRes,(int)projectSettings.viewportXZVerticalRes);
                else if (projectSettings.viewportXZScalingType==BaseTypes.scalingType.ScaleBy)
                    viewportXZ.loadMedia(projectSettings.viewportXZFileName,projectSettings.viewportXZScalingFactor);
                else viewportXZ.loadMedia(projectSettings.viewportXZFileName);

                if (projectSettings.viewportYZScalingType==BaseTypes.scalingType.Custom)
                    viewportYZ.loadMedia(projectSettings.viewportYZFileName,(int)projectSettings.viewportYZHorizontalRes,(int)projectSettings.viewportYZVerticalRes);
                else if (projectSettings.viewportYZScalingType==BaseTypes.scalingType.ScaleBy)
                    viewportYZ.loadMedia(projectSettings.viewportYZFileName,projectSettings.viewportYZScalingFactor);
                else viewportYZ.loadMedia(projectSettings.viewportYZFileName);

                viewportXY.setStartFrame(projectSettings.viewportXYStartFrame);
                viewportXZ.setStartFrame(projectSettings.viewportXZStartFrame);
                viewportYZ.setStartFrame(projectSettings.viewportYZStartFrame);
                viewportXY.grayscale=projectSettings.viewportXYGreyScale;
                viewportXY.brightnessCorrection=projectSettings.viewportXYBrightnessCorrectionValue;
                viewportXY.contrastCorrection=projectSettings.viewportXYContrastCorrectionValue;
                viewportXZ.grayscale=projectSettings.viewportXZGreyScale;
                viewportXZ.brightnessCorrection=projectSettings.viewportXZBrightnessCorrectionValue;
                viewportXZ.contrastCorrection=projectSettings.viewportXZContrastCorrectionValue;
                viewportYZ.grayscale=projectSettings.viewportYZGreyScale;
                viewportYZ.brightnessCorrection=projectSettings.viewportYZBrightnessCorrectionValue;
                viewportYZ.contrastCorrection=projectSettings.viewportYZContrastCorrectionValue;
                app_status.SetStatus(_app_status.viewports_ready);

                if (File.Exists(loadProjectD.FileName+"th"))
                {
                    formatter = new BinaryFormatter();
                    stream = new FileStream(loadProjectD.FileName+"th", FileMode.Open, FileAccess.Read, FileShare.Read);
                    trackingHist = new BaseTypes.trackingHistory();
                    trackingHist= (BaseTypes.trackingHistory)formatter.Deserialize(stream);
                    stream.Close();
                    foreach (BaseTypes.trackingPointLite tpp in trackingHist.initialTrackingPointsSet)
                    {

                        trackingPoint tempTrackingPoint  = new trackingPoint(tpp.pName,tpp.xyCoordX,tpp.xyCoordY,tpp.xzCoordX,tpp.xzCoordZ,tpp.yzCoordY,tpp.yzCoordZ,tpp.xyRadius,tpp.xzRadius,tpp.yzRadius, tpp.pColor);
                        trackingPoints.Add(tempTrackingPoint);

                        if (trackingPointsBasicInfo==null) trackingPointsBasicInfo = new ArrayList();
                        trackingPointsBasicInfo.Add(tpp);

                    }
                    vprtsChngMode(); //visualizePoints() doesn't work in playback mode
                    visualizePoints();
                    trackingPointsLB.Items.Clear();
                    foreach (trackingPoint tp in trackingPoints)
                        trackingPointsLB.Items.Add(tp.PName);

                    app_status.SetStatus(_app_status.distance_calibrated);
                    app_status.SetStatus(_app_status.points_defined);

                } else

                    if (projectSettings.viewportXY1pxDistance!=-1 && projectSettings.viewportXZ1pxDistance!=-1 && projectSettings.viewportYZ1pxDistance!=-1)
                     app_status.SetStatus(_app_status.distance_calibrated);

                this.Text="LW3d Motion Capture Utility : "+projectSettings.projectName;

                Message("New project loaded: "+loadProjectD.FileName);

            }
            else Message("New project aborted");
        }
Exemplo n.º 6
0
        //create and initialize new settings object
        private int InitializeSettings(string projectName)
        {
            projectSettings = new BaseTypes.Settings();

            projectSettings.projectName=projectName;

            projectSettings.viewportXY1pxDistance=-1;
            projectSettings.viewportXZ1pxDistance=-1;
            projectSettings.viewportYZ1pxDistance=-1;

            projectSettings.neuralNetworkHiddenLayersCount=2;
            projectSettings.neuralNetworkHiddenLayersSize=80;
            projectSettings.neuralNetworkMaximumWeight=4;
            projectSettings.neuralNetworkMinimumWeight=-4;
            projectSettings.neuralNetworkTrainingIterations=2300;
            projectSettings.neuralNetworkTrainingRate=0.1;

            projectSettings.frameIterator=1;
            projectSettings.defaultRadius=4;

            projectSettings.viewportXYBrightnessCorrectionValue=0;
            projectSettings.viewportXYContrastCorrectionValue=0;
            projectSettings.viewportXYFileName=null;
            projectSettings.viewportXYGreyScale=false;
            projectSettings.viewportXYHorizontalRes=320;
            projectSettings.viewportXYScalingFactor=100;
            projectSettings.viewportXYScalingType=BaseTypes.scalingType.Native;
            projectSettings.viewportXYStartFrame=0;
            projectSettings.viewportXYVerticalRes=240;

            projectSettings.viewportXZBrightnessCorrectionValue=0;
            projectSettings.viewportXZContrastCorrectionValue=0;
            projectSettings.viewportXZFileName=null;
            projectSettings.viewportXZGreyScale=false;
            projectSettings.viewportXZHorizontalRes=320;
            projectSettings.viewportXZScalingFactor=100;
            projectSettings.viewportXZScalingType=BaseTypes.scalingType.Native;
            projectSettings.viewportXZStartFrame=0;
            projectSettings.viewportXZVerticalRes=240;

            projectSettings.viewportYZBrightnessCorrectionValue=0;
            projectSettings.viewportYZContrastCorrectionValue=0;
            projectSettings.viewportYZFileName=null;
            projectSettings.viewportYZGreyScale=false;
            projectSettings.viewportYZHorizontalRes=320;
            projectSettings.viewportYZScalingFactor=100;
            projectSettings.viewportYZScalingType=BaseTypes.scalingType.Native;
            projectSettings.viewportYZStartFrame=0;
            projectSettings.viewportYZVerticalRes=240;

            projectSettings.minimumOrientPointRadius=4;
            projectSettings.maximumOrientPointRadius=25;

            projectSettings.scanAreaOffset=10;
            projectSettings.preciseAcceptanceThreshold=80;
            projectSettings.fineAcceptanceThreshold=60;
            projectSettings.lowAcceptanceThreshold=50;

            this.Text="LW3d Motion Capture Utility : "+projectName;
            return 1;
        }