|
|
@ -8,6 +8,7 @@ import com.iflytop.profilometer.common.utils.ImageTemplateAlignUtil; |
|
|
|
import com.iflytop.profilometer.common.utils.ShapeDeviationCalculator2; |
|
|
|
import com.iflytop.profilometer.common.utils.UniformShapeSamplerUtil; |
|
|
|
import com.iflytop.profilometer.core.bluetooth.BleDeviceDriver; |
|
|
|
import com.iflytop.profilometer.core.bluetooth.BlePingManager; |
|
|
|
import com.iflytop.profilometer.core.migration.algo.ProfilometerRecorder; |
|
|
|
import com.iflytop.profilometer.core.migration.algo.type.DeviceProfile; |
|
|
|
import com.iflytop.profilometer.core.migration.algo.type.RailProfileMeasureTaskStatus; |
|
|
@ -47,18 +48,23 @@ public class MeasureApi { |
|
|
|
* 开始测量 |
|
|
|
*/ |
|
|
|
public String start() { |
|
|
|
RailProfileMeasureTaskState taskState = SystemService.getInstance().getTaskState(); |
|
|
|
taskState.reset(); |
|
|
|
taskState.setTaskStatus(RailProfileMeasureTaskStatus.WAITING_FOR_RECORD_THE_1ST_SIDE); |
|
|
|
|
|
|
|
RailProfileDrawerService railProfileDrawerService = SystemService.getInstance().getRailProfileDrawerService(); |
|
|
|
ProfilometerRecorder profilometerRecorder = railProfileDrawerService.getProfilometerRecorder(); |
|
|
|
|
|
|
|
BleDeviceDriver bleDeviceDriver = SystemService.getInstance().getBleDeviceDriver(); |
|
|
|
DeviceAppearance appearance = bleDeviceDriver.getDeviceAppearance(); |
|
|
|
|
|
|
|
profilometerRecorder.startRecord(new DeviceProfile(appearance.arm1Length, appearance.arm2Length, appearance.pulleyRadius, appearance.profilometerHight)); |
|
|
|
bleDeviceDriver.startSampling(); |
|
|
|
try{ |
|
|
|
BlePingManager.getInstance().stopPing(); |
|
|
|
RailProfileMeasureTaskState taskState = SystemService.getInstance().getTaskState(); |
|
|
|
taskState.reset(); |
|
|
|
taskState.setTaskStatus(RailProfileMeasureTaskStatus.WAITING_FOR_RECORD_THE_1ST_SIDE); |
|
|
|
|
|
|
|
RailProfileDrawerService railProfileDrawerService = SystemService.getInstance().getRailProfileDrawerService(); |
|
|
|
ProfilometerRecorder profilometerRecorder = railProfileDrawerService.getProfilometerRecorder(); |
|
|
|
|
|
|
|
BleDeviceDriver bleDeviceDriver = SystemService.getInstance().getBleDeviceDriver(); |
|
|
|
DeviceAppearance appearance = bleDeviceDriver.getDeviceAppearance(); |
|
|
|
|
|
|
|
profilometerRecorder.startRecord(new DeviceProfile(appearance.arm1Length, appearance.arm2Length, appearance.pulleyRadius, appearance.profilometerHight)); |
|
|
|
bleDeviceDriver.startSampling(); |
|
|
|
} catch (Exception e) { |
|
|
|
BlePingManager.getInstance().startPing(); |
|
|
|
} |
|
|
|
return Result.success(); |
|
|
|
} |
|
|
|
|
|
|
@ -66,12 +72,17 @@ public class MeasureApi { |
|
|
|
* 停止测量 |
|
|
|
*/ |
|
|
|
public String stop() { |
|
|
|
RailProfileDrawerService railProfileDrawerService = SystemService.getInstance().getRailProfileDrawerService(); |
|
|
|
ProfilometerRecorder profilometerRecorder = railProfileDrawerService.getProfilometerRecorder(); |
|
|
|
profilometerRecorder.stopRecord(); |
|
|
|
|
|
|
|
BleDeviceDriver bleDeviceDriver = SystemService.getInstance().getBleDeviceDriver(); |
|
|
|
bleDeviceDriver.stopSampling(); |
|
|
|
try{ |
|
|
|
BlePingManager.getInstance().startPing(); |
|
|
|
RailProfileDrawerService railProfileDrawerService = SystemService.getInstance().getRailProfileDrawerService(); |
|
|
|
ProfilometerRecorder profilometerRecorder = railProfileDrawerService.getProfilometerRecorder(); |
|
|
|
profilometerRecorder.stopRecord(); |
|
|
|
|
|
|
|
BleDeviceDriver bleDeviceDriver = SystemService.getInstance().getBleDeviceDriver(); |
|
|
|
bleDeviceDriver.stopSampling(); |
|
|
|
} catch (Exception e) { |
|
|
|
BlePingManager.getInstance().stopPing(); |
|
|
|
} |
|
|
|
return Result.success(); |
|
|
|
} |
|
|
|
|
|
|
|