导航相机相关Log改为英文;添加一些图标
This commit is contained in:
+27
-30
@@ -166,12 +166,12 @@ namespace XplorePlane
|
||||
{
|
||||
var cameraVm = bootstrapper.Container.Resolve<NavigationPropertyPanelViewModel>();
|
||||
cameraVm?.Dispose();
|
||||
Log.Information("导航相机 ViewModel 已释放");
|
||||
Log.Information("Navigation camera ViewModel has been released");
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Error(ex, "导航相机 ViewModel 释放失败");
|
||||
Log.Error(ex, "Navigation camera ViewModel release failed");
|
||||
}
|
||||
|
||||
// 释放导航相机服务资源
|
||||
@@ -182,12 +182,12 @@ namespace XplorePlane
|
||||
{
|
||||
var cameraService = bootstrapper.Container.Resolve<ICameraService>();
|
||||
cameraService?.Dispose();
|
||||
Log.Information("导航相机服务资源已释放");
|
||||
Log.Information("Navigation camera service resources have been released");
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Error(ex, "导航相机服务资源释放失败");
|
||||
Log.Error(ex, "Navigation camera service resource release failed");
|
||||
}
|
||||
|
||||
// 释放主界面探测器帧流水线资源
|
||||
@@ -320,9 +320,6 @@ namespace XplorePlane
|
||||
// 主窗口加载完成后再连接相机,确保所有模块和原生 DLL 已完成初始化
|
||||
shell.Loaded += (s, e) =>
|
||||
{
|
||||
// [DEV] 导航相机连接已屏蔽,开发阶段跳过以加快启动速度
|
||||
TryConnectCamera();
|
||||
|
||||
// 初始化主界面探测器帧流水线,开始接收探测器图像事件
|
||||
try
|
||||
{
|
||||
@@ -333,21 +330,22 @@ namespace XplorePlane
|
||||
Log.Error(ex, "初始化主界面探测器帧流水线失败");
|
||||
}
|
||||
|
||||
// [DEV] 相机状态通知已屏蔽
|
||||
try
|
||||
{
|
||||
var cameraVm = Container.Resolve<NavigationPropertyPanelViewModel>();
|
||||
cameraVm.OnCameraReady();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Error(ex, "通知相机 ViewModel 失败");
|
||||
}
|
||||
// [DEV] 导航相机连接已屏蔽,开发阶段跳过以加快启动速度
|
||||
//TryConnectCamera();
|
||||
//try
|
||||
//{
|
||||
// var cameraVm = Container.Resolve<NavigationPropertyPanelViewModel>();
|
||||
// cameraVm.OnCameraReady();
|
||||
//}
|
||||
//catch (Exception ex)
|
||||
//{
|
||||
// Log.Error(ex, "Failed to notify the camera ViewModel");
|
||||
//}
|
||||
|
||||
if (_cameraError != null)
|
||||
{
|
||||
HexMessageBox.Show(_cameraError, MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
}
|
||||
//if (_cameraError != null)
|
||||
//{
|
||||
// HexMessageBox.Show(_cameraError, MessageBoxButton.OK, MessageBoxImage.Error);
|
||||
//}
|
||||
};
|
||||
|
||||
return shell;
|
||||
@@ -364,17 +362,17 @@ namespace XplorePlane
|
||||
try
|
||||
{
|
||||
var info = camera.Open();
|
||||
Log.Information("导航相机已连接: {ModelName} (SN: {SerialNumber})", info.ModelName, info.SerialNumber);
|
||||
Log.Information("Navigation camera connected: {ModelName} (SN: {SerialNumber})", info.ModelName, info.SerialNumber);
|
||||
}
|
||||
catch (DeviceNotFoundException)
|
||||
{
|
||||
Log.Warning("未检测到导航相机");
|
||||
_cameraError = "未检测到导航相机,请检查连接后重启软件。";
|
||||
Log.Warning("Navigation camera not detected");
|
||||
_cameraError = "Navigation camera not detected,Please check the connection and restart the software.。";
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Warning(ex, "导航相机自动连接失败: {Message}", ex.Message);
|
||||
_cameraError = $"导航相机连接失败: {ex.Message}";
|
||||
Log.Warning(ex, "Automatic connection of navigation camera failed: {Message}", ex.Message);
|
||||
_cameraError = $"Navigation camera connection failed: {ex.Message}";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -408,7 +406,6 @@ namespace XplorePlane
|
||||
containerRegistry.RegisterSingleton<IImageProcessingService, ImageProcessingService>();
|
||||
containerRegistry.Register<ImageProcessingViewModel>();
|
||||
|
||||
|
||||
// 注册流水线服务(单例,共享 IImageProcessingService)
|
||||
containerRegistry.RegisterSingleton<IPipelineExecutionService, PipelineExecutionService>();
|
||||
containerRegistry.RegisterSingleton<IPipelinePersistenceService, PipelinePersistenceService>();
|
||||
@@ -477,9 +474,9 @@ namespace XplorePlane
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Warning(ex, "读取 CameraType 配置失败,使用默认值 Hikvision");
|
||||
Log.Warning(ex, "Failed to read CameraType configuration, using default value Hikvision");
|
||||
}
|
||||
Log.Information("相机类型: {CameraType}", cameraType);
|
||||
Log.Information("Camera Type: {CameraType}", cameraType);
|
||||
return new CameraFactory().CreateController(cameraType);
|
||||
});
|
||||
containerRegistry.RegisterSingleton<ICameraService, CameraService>();
|
||||
@@ -505,4 +502,4 @@ namespace XplorePlane
|
||||
base.ConfigureModuleCatalog(moduleCatalog);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 778 B |
Binary file not shown.
|
After Width: | Height: | Size: 583 B |
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
@@ -165,7 +165,7 @@
|
||||
Size="Medium"
|
||||
SmallImage="/Assets/Icons/crosshair.png"
|
||||
Text="辅助线" />
|
||||
<telerik:RadRibbonToggleButton
|
||||
<telerik:RadRibbonToggleButton
|
||||
telerik:ScreenTip.Description="显示/隐藏图像比例尺"
|
||||
telerik:ScreenTip.Title="比例尺"
|
||||
IsChecked="{Binding IsScaleBarVisible, Mode=TwoWay}"
|
||||
@@ -192,13 +192,6 @@
|
||||
Size="Medium"
|
||||
SmallImage="/Assets/Icons/film-darken.png"
|
||||
Text="黑底检测" />
|
||||
<telerik:RadRibbonButton
|
||||
telerik:ScreenTip.Description="框选模板、调参并在当前图像上试跑旋转模板匹配"
|
||||
telerik:ScreenTip.Title="模板匹配助手"
|
||||
Command="{Binding OpenTemplateMatchAssistantCommand}"
|
||||
Size="Medium"
|
||||
SmallImage="/Assets/Icons/dynamic-range.png"
|
||||
Text="模板助手" />
|
||||
</StackPanel>
|
||||
<StackPanel>
|
||||
<telerik:RadRibbonButton
|
||||
@@ -213,13 +206,6 @@
|
||||
Size="Medium"
|
||||
SmallImage="/Assets/Icons/dynamic-range.png"
|
||||
Text="增强" />
|
||||
<telerik:RadRibbonButton
|
||||
telerik:ScreenTip.Description="沿搜索线放置卡尺检测边缘点并拟合直线"
|
||||
telerik:ScreenTip.Title="直线拟合"
|
||||
Command="{Binding EdgeLineFitCommand}"
|
||||
Size="Medium"
|
||||
SmallImage="/Assets/Icons/ptol.png"
|
||||
Text="直线拟合" />
|
||||
</StackPanel>
|
||||
</telerik:RadRibbonGroup>
|
||||
|
||||
@@ -517,6 +503,45 @@
|
||||
Text="坐标标定" />
|
||||
</StackPanel>
|
||||
</telerik:RadRibbonGroup>
|
||||
<telerik:RadRibbonGroup
|
||||
telerik:ScreenTip.Description="Show the Alignment tab of the Format Cells dialog box."
|
||||
telerik:ScreenTip.Title="Format Cells: Alignment"
|
||||
DialogLauncherCommand="{Binding Path=ShowFormatCellsDialog.Command}"
|
||||
DialogLauncherCommandParameter="Alignment"
|
||||
DialogLauncherVisibility="{Binding Path=ShowFormatCellsDialog.IsEnabled, Converter={StaticResource BoolToVisibilityValueConverter}}"
|
||||
Header="识别定位"
|
||||
IsEnabled="{Binding Path=AlignmentGroup.IsEnabled}">
|
||||
<telerik:RadRibbonGroup.Variants>
|
||||
<telerik:GroupVariant Priority="0" Variant="Large" />
|
||||
</telerik:RadRibbonGroup.Variants>
|
||||
<telerik:RadRibbonGroup.Resources>
|
||||
<spreadsheetControls:RadHorizontalAlignmentToBooleanConverter x:Key="horizontalAlignmentToBooleanConverter" />
|
||||
<spreadsheetControls:RadVerticalAlignmentToBooleanConverter x:Key="verticalAlignmentToBooleanConverter" />
|
||||
</telerik:RadRibbonGroup.Resources>
|
||||
<StackPanel />
|
||||
<StackPanel>
|
||||
<telerik:RadRibbonButton
|
||||
telerik:ScreenTip.Description="框选模板、调参并在当前图像上试跑旋转模板匹配"
|
||||
telerik:ScreenTip.Title="模板匹配助手"
|
||||
Command="{Binding OpenTemplateMatchAssistantCommand}"
|
||||
Size="Medium"
|
||||
SmallImage="/Assets/Icons/Matching.png"
|
||||
Text="模板助手" />
|
||||
<telerik:RadRibbonButton
|
||||
telerik:ScreenTip.Description="沿搜索线放置卡尺检测边缘点并拟合直线"
|
||||
telerik:ScreenTip.Title="拟合直线"
|
||||
Command="{Binding EdgeLineFitCommand}"
|
||||
Size="Medium"
|
||||
SmallImage="/Assets/Icons/FittedLine.png"
|
||||
Text="拟合直线" />
|
||||
<telerik:RadRibbonButton
|
||||
telerik:ScreenTip.Description="沿搜索线放置卡尺检测边缘点并拟合圆"
|
||||
telerik:ScreenTip.Title="拟合圆"
|
||||
Size="Medium"
|
||||
SmallImage="/Assets/Icons/FittedCircle.png"
|
||||
Text="拟合圆" />
|
||||
</StackPanel>
|
||||
</telerik:RadRibbonGroup>
|
||||
|
||||
<telerik:RadRibbonGroup Header="多语言">
|
||||
<telerik:RadRibbonGroup.Variants>
|
||||
|
||||
Reference in New Issue
Block a user