public bool Open(int opentype)
{
if (camStatus)
return false;
//Open camera
if (ovOpen(0, 0.15f, opentype) == 0)
{
imageSizeW = ovGetImageWidth();
imageSizeH = ovGetImageHeight();
//Create bitmap
imageDataLeft = new Bitmap(imageSizeW, imageSizeH, PixelFormat.Format24bppRgb);
imageDataRight = new Bitmap(imageSizeW, imageSizeH, PixelFormat.Format24bppRgb);
camStatus = true;
}
else
{
camStatus = false;
}
return camStatus;
}
private void runbutton_Click(object sender, EventArgs e) { if (runbutton.Text == "Open Ovrvision") { Ovrvision.useProcessingQuality = COvrvision.OV_CAMQT_DMS; if (Ovrvision.Open(COvrvision.OV_CAMHD_FULL)) { //true statelabel.Text = "State : Opened"; runbutton.Text = "Close Ovrvision"; textBox1.Text = "Ovrvision was opened.\r\n"; cameraPicLeft.Image = Ovrvision.imageDataLeft; //(BGR) cameraPicRight.Image = Ovrvision.imageDataRight; cabliButton.Enabled = true; buttonSetting.Enabled = true; } else { //false statelabel.Text = "State : Open Error."; } //Thread start ThreadEnd = false; UpdateThread = new Thread(new ThreadStart(MForm_UpdateThread)); UpdateThread.Start(); } else { ThreadEnd = true; UpdateThread.Join(); if (Ovrvision.Close()) { statelabel.Text = "State : Closed"; runbutton.Text = "Open Ovrvision"; cabliButton.Text = "Start Calibration"; cameraPicRight.Image = null; cameraPicLeft.Image = null; cabliButton.Enabled = false; buttonSetting.Enabled = false; } } }