Пример #1
0
        private void UpdateTrigger()//更新触发模式
        {
            string[] szMode = new string[4] {
                "Internal", "External", "Software", "Fixed Frame Rate"
            };
            int nMin = 0;
            int nMax = 0;

            KSJApiBase.KSJ_GetParamRange(m_nDeviceCurSel, KSJApiBase.KSJ_PARAM.KSJRIGGER_MODE, ref nMin, ref nMax);
            int i = 0;

            for (i = 0; i < 4; i++)
            {
                comboBox_TriggerMode.Items.Insert(i, szMode[i]);
            }

            if (nMax == 4)
            {
                comboBox_TriggerMode.Items.Insert(i, "High Low Fixed Frame Rate");
            }

            KSJApiTriggerMode.KSJ_TriggerModeGet(m_nDeviceCurSel, ref m_TriggerMode);
            comboBox_TriggerMode.SelectedIndex = (int)m_TriggerMode;

            string[] szMethod = new string[4] {
                "Falling Edge", "Rising Edge", "High Level", "Low Level"
            };
            for (i = 0; i < 4; i++)
            {
                comboBox_TriggerMethod.Items.Insert(i, szMethod[i]);
            }

            KSJApiTriggerMode.KSJ_TriggerMethodGet(m_nDeviceCurSel, ref m_TriggerMethod);
            comboBox_TriggerMethod.SelectedIndex = (int)m_TriggerMethod;

            KSJApiTriggerMode.KSJ_GetFixedFrameRateEx(m_nDeviceCurSel, ref m_fFixedFrameRate);
            FrameRate.Value = (decimal)m_fFixedFrameRate;
        }
Пример #2
0
        public void UpdateInterface()
        {
            if (m_nDeviceCurSel == -1)
            {
                return;
            }

            // Initial Exposure Time
            int nMin = 0;
            int nMax = 0;
            int nCur = 0;

            KSJApiBase.KSJ_GetParamRange(m_nDeviceCurSel, KSJApiBase.KSJ_PARAM.KSJ_EXPOSURE, ref nMin, ref nMax);
            KSJApiBase.KSJ_GetParam(m_nDeviceCurSel, KSJApiBase.KSJ_PARAM.KSJ_EXPOSURE, ref nCur);
            NumericUpDown_EXPOSURE_TIME_MS.Minimum = nMin;
            NumericUpDown_EXPOSURE_TIME_MS.Maximum = nMax;
            NumericUpDown_EXPOSURE_TIME_MS.Value   = nCur;
            string szText = String.Format("{0}-{1} ms ({2}sec, {3}min)", nMin, nMax, (float)nMin / 1000.0f, (float)nMax / 60000.0f);

            Label_EXPOSURE_TIME_RANGE.Text = szText;

            KSJApiBase.KSJ_GetParamRange(m_nDeviceCurSel, KSJApiBase.KSJ_PARAM.KSJ_EXPOSURE_LINES, ref nMin, ref nMax);
            KSJApiBase.KSJ_GetParam(m_nDeviceCurSel, KSJApiBase.KSJ_PARAM.KSJ_EXPOSURE_LINES, ref nCur);
            NumericUpDown_EXPOSURE_LINES.Minimum = nMin;
            NumericUpDown_EXPOSURE_LINES.Maximum = nMax;
            NumericUpDown_EXPOSURE_LINES.Value   = nCur;
            szText = String.Format("{0}-{1} Lines", nMin, nMax);
            Label_EXPOSURE_LINES_RANGE.Text = szText;

            // GAIN, Because R,G,B Gain has same range.
            KSJApiBase.KSJ_GetParamRange(m_nDeviceCurSel, KSJApiBase.KSJ_PARAM.KSJ_RED, ref nMin, ref nMax);
            KSJApiBase.KSJ_GetParam(m_nDeviceCurSel, KSJApiBase.KSJ_PARAM.KSJ_RED, ref nCur);
            NumericUpDown_GAIN.Minimum = nMin;
            NumericUpDown_GAIN.Maximum = nMax;
            NumericUpDown_GAIN.Value   = nCur;
            szText = String.Format("{0}-{1} Lines", nMin, nMax);
            Label_GAIN_RANGE.Text = szText;

            // FOV
            int nColStart = 0;
            int nRowStart = 0;
            int nColSize  = 0;
            int nRowSize  = 0;

            KSJApiBase.KSJ_ADDRESSMODE ColAddressMode = KSJApiBase.KSJ_ADDRESSMODE.KSJ_SKIPNONE;
            KSJApiBase.KSJ_ADDRESSMODE RowAddressMode = KSJApiBase.KSJ_ADDRESSMODE.KSJ_SKIPNONE;
            KSJApiBase.KSJ_PreviewGetDefaultFieldOfView(m_nDeviceCurSel, ref nColStart, ref nRowStart, ref nColSize, ref nRowSize, ref ColAddressMode, ref RowAddressMode);
            // Preview, Capture they are same, so you should get one is ok!
            szText = String.Format("{0}-{1} Lines", nColSize, nRowSize);
            Label_FOV_RANGE.Text = szText;

            TextBox_PREVIEW_COL_START.Text = nColStart.ToString();
            TextBox_PREIVEW_ROW_START.Text = nRowStart.ToString();
            TextBox_PREIVEW_COL_SIZE.Text  = nColSize.ToString();
            TextBox_PREIVEW_ROW_SIZE.Text  = nRowSize.ToString();

            KSJApiBase.KSJ_CaptureGetDefaultFieldOfView(m_nDeviceCurSel, ref nColStart, ref nRowStart, ref nColSize, ref nRowSize, ref ColAddressMode, ref RowAddressMode);
            TextBox_CAPTURE_COL_START.Text = nColStart.ToString();
            TextBox_CAPTURE_ROW_START.Text = nRowStart.ToString();
            TextBox_CAPTURE_COL_SIZE.Text  = nColSize.ToString();
            TextBox_CAPTURE_ROW_SIZE.Text  = nRowSize.ToString();
        }