// Connect to Kinect cameras
private bool Connect()
{
bool ret = false;
Cursor = Cursors.WaitCursor;
if (Kinect.DeviceCount != 0)
{
int deviceID = devicesCombo.SelectedIndex;
try
{
kinectDevice = Kinect.GetDevice(deviceID);
if (videoCamera == null)
{
videoCamera = kinectDevice.GetVideoCamera();
videoCamera.CameraMode = (videoModeCombo.SelectedIndex == 0) ? VideoCameraMode.Color :
((videoModeCombo.SelectedIndex == 1) ? VideoCameraMode.Bayer : VideoCameraMode.InfraRed);
videoCameraPlayer.VideoSource = videoCamera;
videoCameraPlayer.Start();
}
if (depthCamera == null)
{
depthCamera = kinectDevice.GetDepthCamera();
depthCameraPlayer.VideoSource = depthCamera;
depthCameraPlayer.Start();
}
ledColorCombo.SelectedIndex = 0;
if (tiltUpDown.Value != 0)
{
tiltUpDown.Value = 0;
}
else
{
kinectDevice.SetMotorTilt((int)tiltUpDown.Value);
}
timer.Start();
ret = true;
}
catch (Exception ex)
{
MessageBox.Show("Failed connecting to Kinect device.\n" + ex.Message,
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
Disconnect();
}
}
Cursor = Cursors.Default;
return ret;
}