| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- <UserControl x:Class="Plugins.Vpp.Engines.VppCalibrationPage"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- Background="Transparent">
- <Grid Margin="4">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="*"/>
- <ColumnDefinition Width="8"/>
- <ColumnDefinition Width="320"/>
- </Grid.ColumnDefinitions>
- <!-- 左:标定图像区 -->
- <Border Grid.Column="0" Background="Black" CornerRadius="6">
- <Grid>
- <Image x:Name="CalibImage" Stretch="Uniform"/>
- <TextBlock x:Name="ImagePlaceholder" Text="拖入标定图片或点击右侧“载入图片”"
- Foreground="#888" HorizontalAlignment="Center" VerticalAlignment="Center"/>
- </Grid>
- </Border>
- <!-- 右:标定操作区 -->
- <Border Grid.Column="2" Background="{DynamicResource RegionBrush}"
- BorderBrush="{DynamicResource BorderBrush}" BorderThickness="1" CornerRadius="6" Padding="10,8">
- <DockPanel>
- <!-- 标定类型 -->
- <StackPanel DockPanel.Dock="Top" Orientation="Horizontal" Margin="0,0,0,8">
- <RadioButton Content="九点标定" IsChecked="True" Margin="0,0,16,0" GroupName="CalibType"
- Checked="NinePoint_Checked"/>
- <RadioButton Content="旋转中心" GroupName="CalibType" Checked="RotationCenter_Checked"/>
- </StackPanel>
- <!-- 图片操作 -->
- <StackPanel DockPanel.Dock="Top" Orientation="Horizontal" Margin="0,0,0,8">
- <Button Content="载入图片" Click="LoadImage_Click" Padding="10,3" Margin="0,0,8,0"/>
- <Button Content="清空点位" Click="ClearPoints_Click" Padding="10,3"/>
- </StackPanel>
- <!-- 点位表 -->
- <DataGrid DockPanel.Dock="Top" ItemsSource="{Binding Points}" AutoGenerateColumns="False"
- CanUserAddRows="False" HeadersVisibility="Column" Height="240"
- GridLinesVisibility="Horizontal" BorderThickness="1">
- <DataGrid.Columns>
- <DataGridTextColumn Header="#" Binding="{Binding Index}" IsReadOnly="True" Width="30"/>
- <DataGridTextColumn Header="机器人X" Binding="{Binding RobotX}" Width="*"/>
- <DataGridTextColumn Header="机器人Y" Binding="{Binding RobotY}" Width="*"/>
- <DataGridTextColumn Header="像素X" Binding="{Binding PixelX}" Width="*"/>
- <DataGridTextColumn Header="像素Y" Binding="{Binding PixelY}" Width="*"/>
- </DataGrid.Columns>
- </DataGrid>
- <!-- 计算与结果 -->
- <StackPanel DockPanel.Dock="Top" Orientation="Horizontal" Margin="8,8,0,0">
- <Button Content="计算标定" Click="Calculate_Click" Padding="14,4" Margin="0,0,8,0"/>
- <Button Content="添加一行" Click="AddRow_Click" Padding="10,4"/>
- </StackPanel>
- <TextBox x:Name="ResultText" DockPanel.Dock="Top" Margin="8,8,0,0" MinHeight="110"
- IsReadOnly="True" TextWrapping="Wrap" VerticalScrollBarVisibility="Auto"
- FontFamily="Consolas" FontSize="12"/>
- </DockPanel>
- </Border>
- </Grid>
- </UserControl>
|