测量工具使用前检查图像是否已加载,使用HexMessageBox弹框提示
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
using Prism.Commands;
|
using Prism.Commands;
|
||||||
using Prism.Events;
|
using Prism.Events;
|
||||||
using Prism.Ioc;
|
using Prism.Ioc;
|
||||||
using Prism.Mvvm;
|
using Prism.Mvvm;
|
||||||
@@ -14,6 +14,7 @@ using XplorePlane.ViewModels.Cnc;
|
|||||||
using XplorePlane.Views;
|
using XplorePlane.Views;
|
||||||
using XplorePlane.Views.Cnc;
|
using XplorePlane.Views.Cnc;
|
||||||
using XP.Common.Logging.Interfaces;
|
using XP.Common.Logging.Interfaces;
|
||||||
|
using XP.Common.GeneralForm.Views;
|
||||||
using XP.Common.PdfViewer.Interfaces;
|
using XP.Common.PdfViewer.Interfaces;
|
||||||
using XP.Hardware.MotionControl.Abstractions;
|
using XP.Hardware.MotionControl.Abstractions;
|
||||||
|
|
||||||
@@ -449,32 +450,49 @@ namespace XplorePlane.ViewModels
|
|||||||
|
|
||||||
#region 测量命令实现
|
#region 测量命令实现
|
||||||
|
|
||||||
|
private bool CheckImageLoaded()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var viewportVm = _containerProvider.Resolve<ViewportPanelViewModel>();
|
||||||
|
if (viewportVm?.ImageSource != null) return true;
|
||||||
|
}
|
||||||
|
catch { }
|
||||||
|
HexMessageBox.Show("请先加载图像", MessageBoxButton.OK, MessageBoxImage.Information);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
private void ExecutePointDistanceMeasure()
|
private void ExecutePointDistanceMeasure()
|
||||||
{
|
{
|
||||||
|
if (!CheckImageLoaded()) return;
|
||||||
_logger.Info("点点距测量功能已触发");
|
_logger.Info("点点距测量功能已触发");
|
||||||
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.PointDistance);
|
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.PointDistance);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ExecutePointLineDistanceMeasure()
|
private void ExecutePointLineDistanceMeasure()
|
||||||
{
|
{
|
||||||
|
if (!CheckImageLoaded()) return;
|
||||||
_logger.Info("点线距测量功能已触发");
|
_logger.Info("点线距测量功能已触发");
|
||||||
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.PointLineDistance);
|
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.PointLineDistance);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ExecuteAngleMeasure()
|
private void ExecuteAngleMeasure()
|
||||||
{
|
{
|
||||||
|
if (!CheckImageLoaded()) return;
|
||||||
_logger.Info("角度测量功能已触发");
|
_logger.Info("角度测量功能已触发");
|
||||||
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.Angle);
|
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.Angle);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ExecuteThroughHoleFillRateMeasure()
|
private void ExecuteThroughHoleFillRateMeasure()
|
||||||
{
|
{
|
||||||
|
if (!CheckImageLoaded()) return;
|
||||||
_logger.Info("通孔填锡率测量功能已触发");
|
_logger.Info("通孔填锡率测量功能已触发");
|
||||||
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.ThroughHoleFillRate);
|
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.ThroughHoleFillRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ExecuteBgaVoidMeasure()
|
private void ExecuteBgaVoidMeasure()
|
||||||
{
|
{
|
||||||
|
if (!CheckImageLoaded()) return;
|
||||||
_logger.Info("BGA空隙测量功能已触发");
|
_logger.Info("BGA空隙测量功能已触发");
|
||||||
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.BgaVoid);
|
_eventAggregator.GetEvent<MeasurementToolEvent>().Publish(MeasurementToolMode.BgaVoid);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user