Merge branch 'Develop/XP' into turbo-002-cnc

# Conflicts:
#	XplorePlane/App.xaml.cs
#	XplorePlane/ViewModels/Main/MainViewModel.cs
#	XplorePlane/ViewModels/Main/ViewportPanelViewModel.cs
#	XplorePlane/Views/Main/MainWindow.xaml
#	XplorePlane/Views/Main/ViewportPanelView.xaml
This commit is contained in:
zhengxuan.zhang
2026-04-24 14:36:06 +08:00
27 changed files with 2397 additions and 99 deletions
+45 -1
View File
@@ -157,6 +157,7 @@
<StackPanel>
<telerik:RadRibbonButton
telerik:ScreenTip.Title="中心十字线"
Command="{Binding ToggleCrosshairCommand}"
Size="Medium"
SmallImage="/Assets/Icons/crosshair.png"
Text="辅助线" />
@@ -192,7 +193,49 @@
</StackPanel>
</telerik:RadRibbonGroup>
<telerik:RadRibbonGroup Header="测量工具">
<telerik:RadRibbonGroup.Variants>
<telerik:GroupVariant Priority="0" Variant="Large" />
</telerik:RadRibbonGroup.Variants>
<!-- 第一列: 点点距 + 点线距 -->
<StackPanel>
<telerik:RadRibbonButton
telerik:ScreenTip.Description="测量两点之间的距离"
telerik:ScreenTip.Title="点点距测量"
Command="{Binding PointDistanceMeasureCommand}"
Size="Medium"
SmallImage="/Assets/Icons/crosshair.png"
Text="点点距测量" />
<telerik:RadRibbonButton
telerik:ScreenTip.Description="测量点到直线的距离"
telerik:ScreenTip.Title="点线距测量"
Command="{Binding PointLineDistanceMeasureCommand}"
Size="Medium"
SmallImage="/Assets/Icons/mark.png"
Text="点线距测量" />
</StackPanel>
<!-- 第二列: 角度 + 通孔填锡率 -->
<StackPanel>
<telerik:RadRibbonButton
telerik:ScreenTip.Description="测量两条线之间的角度"
telerik:ScreenTip.Title="角度测量"
Command="{Binding AngleMeasureCommand}"
Size="Medium"
SmallImage="/Assets/Icons/dynamic-range.png"
Text="角度测量" />
<telerik:RadRibbonButton
telerik:ScreenTip.Description="测量通孔填锡率"
telerik:ScreenTip.Title="通孔填锡率测量"
Command="{Binding ThroughHoleFillRateMeasureCommand}"
Size="Medium"
SmallImage="/Assets/Icons/pores.png"
Text="通孔填锡率" />
</StackPanel>
</telerik:RadRibbonGroup>
<telerik:RadRibbonGroup Header="图像算子" telerik:ScreenTip.Title="图像算子">
<telerik:RadRibbonButton
@@ -325,6 +368,7 @@
Size="Large"
SmallImage="/Assets/Icons/spiral.png" />
</telerik:RadRibbonGroup>
</telerik:RadRibbonTab>
<telerik:RadRibbonTab Header="设置">
<telerik:RadRibbonGroup