private void switchEnable_ValueChanged(object sender, bool value) { if (_selectedLidar != null) { _selectedLidar.FrequencyChange -= lidar_FrequencyChange; _selectedLidar.NewMeasure -= lidar_NewMeasure; _selectedLidar.StartLoopMeasure(); } if (value) { if ((String)cboLidar.Text == "Ground") { _selectedLidar = AllDevices.LidarGround; } else if ((String)cboLidar.Text == "Avoid") { _selectedLidar = AllDevices.LidarAvoid; } else { _selectedLidar = null; } if (_selectedLidar != null) { _selectedLidar.FrequencyChange += lidar_FrequencyChange; _selectedLidar.NewMeasure += lidar_NewMeasure; _selectedLidar.StartLoopMeasure(); } } }
private void SetLidar(Lidar lidar) { if (_selectedLidar != lidar) { if (_selectedLidar != null) { _selectedLidar.NewMeasure -= lidar_NewMeasure; if (_selectedLidar == AllDevices.LidarGround) { _selectedLidar.StopLoopMeasure(); } } _selectedLidar = lidar; if (_selectedLidar != null) { _selectedLidar.NewMeasure += lidar_NewMeasure; if (_selectedLidar == AllDevices.LidarGround) { _selectedLidar.StartLoopMeasure(); } } _measureObjects = null; _measureBoard = null; picWorld.Invalidate(); } }
public void LidarEnable(bool lidarEnable) { if (_selectedLidar != null && !lidarEnable && _running) { _selectedLidar.NewMeasure -= lidar_NewMeasure; _running = false; } if (lidarEnable && !_running) { if (_selectedLidar != null) { _selectedLidar.NewMeasure += lidar_NewMeasure; if (!_selectedLidar.Activated) { _selectedLidar.StartLoopMeasure(); } _running = true; } } }