Beispiel #1
0
        public static bool kollaKamera( FMain frmMain, eosPresets.PresetType pt )
        {
            if ( s_fKameraInst_VarnaInte )
                return true;

            var camera = frmMain.Camera;

            if (!s_fKamera_HarTagitNågonBild)
                switch (camera.CameraType)
                {
                    case CameraType.EOS_5D:
                    case CameraType.EOS_5D_MarkII:
                        const string info =
                            "Plåta kan för närvarande inte kontrollera vissa viktiga inställningar på en 5D-kamera. " +
                            "Snälla, kontrollera följande inställning:\r\n" +
                            " * Färgrymd ska vara \"sRGB\"\r\n" +
                            "Stämmer detta?";
                        if (Global.askMsgBox(frmMain, info, true) != DialogResult.Yes)
                        {
                            Global.showMsgBox(frmMain, "Ändra inställningen och ta om bilden!");
                            return false;
                        }
                        break;
                }
            s_fKamera_HarTagitNågonBild = true;

            if ( pt==eosPresets.PresetType.IndoorPortrait && !s_fKamera_HarTagitPorträtt )
            {
                s_fKamera_HarTagitPorträtt = true;
                if ( Global.askMsgBox( frmMain, "Har du fotograferat ett gråkort och ställt vitbalansen efter det?", true ) != DialogResult.Yes )
                {
                    Global.showMsgBox( frmMain, "Gör det först!" );
                    return false;
                }
            }

            var currentSettings = eosPresets.Preset.GetCurrentCameraSettings(camera);
            var astrCurrent = cameraSettingsToText(camera,getDefaultSettings(pt, camera.CameraType));
            var astrPreset = cameraSettingsToText(camera, currentSettings);
            var fDiff = false;
            for (var i = 0; i < astrCurrent.Length; i++)
                if ( i != 7 && astrCurrent[i].Length!=0 && astrCurrent[i] != "N/A" )
                    if ( string.Compare(astrCurrent[i],astrPreset[i])!=0 )
                        fDiff = true;
            if ( fDiff )
                using ( var dlg = new FKollaKamera(astrCurrent,astrPreset) )
                {
                    dlg.ShowDialog(frmMain);
                    switch ( dlg.Svar )
                    {
                        case AnvändarensSvar.OK_ändra_inte_standard:
                            return true;
                        case AnvändarensSvar.OK_ändra_standard:
                            if ( s_hashDefaultSettings.ContainsKey(pt) )
                                s_hashDefaultSettings.Remove( pt );
                            s_hashDefaultSettings.Add( pt, currentSettings );
                            return true;
                        case AnvändarensSvar.OK_varna_inte_alls:
                            s_fKameraInst_VarnaInte = true;
                            return true;
                        default:
                            //kasta bilden
                            return false;
                    }
                }
            return true;
        }
Beispiel #2
0
        private static string[] cameraSettingsToText( vdCamera.vdCamera camera, eosPresets.Preset preset )
        {
            var result = new string[9];

            var tr = camera.Translation;
            result[0] = tr.ShutterSpeed.Text(preset.TV, string.Empty);
            result[1] = tr.Aperture.Text(preset.AV, string.Empty);
            result[2] = tr.ISO.Text(preset.ISO);
            result[3] = tr.WhiteBalance.Text(preset.WB);
            result[4] = preset.KelvinText;
            result[5] = tr.ShootingMode.Text(preset.Mode);
            result[6] = string.Format("{0}/{1}/{2}/{3}/{4}", tr.Parameters.Text(preset.ParameterSet), preset.SharpnessText, preset.ContrastText, preset.SaturationText, preset.ColorToneText);
            result[7] = tr.ColorMatrix.Text(preset.ColorMatrix);
            result[8] = preset.ImageTypeSize;
            return result;
        }
Beispiel #3
0
 private static eosPresets.Preset getDefaultSettings( eosPresets.PresetType pt, vdCamera.CameraType cameraType )
 {
     if ( s_hashDefaultSettings.ContainsKey(pt) )
         return (eosPresets.Preset)s_hashDefaultSettings[pt];
     return eosPresets.GetPreset( pt, cameraType );
 }
        private void loadPresets( eosPresets.PresetType pt )
        {
            var p = eosPresets.GetPreset( pt, _cameraType );
            var tr = _camera.Translation;

            var tim = tr.ShutterSpeed.Map(p.TV);
            if ( tim!=null )
                cboSlutartid.SelectedItem = tim;
            tim = tr.Aperture.Map(p.AV);
            if ( tim!=null )
                cboBländarsteg.SelectedItem = tim;
            tim = tr.ISO.Map(p.ISO);
            if ( tim!=null )
                cboISO.SelectedItem = tim;
            tim = tr.ShootingMode.Map(p.Mode);
            if ( tim!=null )
                cboMode.SelectedItem = tim;
            tim = tr.WhiteBalance.Map(p.WB);
            txtKelvin1.Text = p.KelvinText;
            if ( tim!=null )
                cboVitbalans.SelectedItem = tim;
            tim = tr.Parameters.Map(p.ParameterSet);
            if ( tim!=null )
                cboParameter.SelectedItem = tim;
            txtSkärpa1.Text = p.SharpnessText;
            txtKontrast1.Text = p.ContrastText;
            txtMättnad1.Text = p.SaturationText;
            txtFärgton1.Text = p.ColorToneText;
            tim = tr.ColorMatrix.Map(p.ColorMatrix);
            if ( tim!=null )
                cboColorMatrix.SelectedItem = tim;

            txtFilformat1.Text = p.ImageTypeSize;
        }