CalibrationCameraParams.xaml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200
  1. <UserControl x:Class="TeamAAS_VP.Views.Calibration.CalibrationCameraParams"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:prism="http://prismlibrary.com/"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  7. xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
  8. xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
  9. xmlns:wf="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
  10. xmlns:vp="clr-namespace:Cognex.VisionPro;assembly=Cognex.VisionPro.Controls"
  11. xmlns:vm="clr-namespace:TeamAAS_VP.ViewModels.Calibration"
  12. xmlns:uControl="clr-namespace:TeamAAS_VP.Controls"
  13. xmlns:convert="clr-namespace:TeamAAS_VP.ValueConverter"
  14. xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
  15. xmlns:lex="http://wpflocalizeextension.codeplex.com"
  16. lex:LocalizeDictionary.DesignCulture="zh-CN"
  17. lex:ResxLocalizationProvider.DefaultAssembly="TeamAAS-VP"
  18. lex:ResxLocalizationProvider.DefaultDictionary="Lang"
  19. prism:ViewModelLocator.AutoWireViewModel="True"
  20. mc:Ignorable="d"
  21. d:DataContext="{d:DesignInstance Type=vm:CalibrationCameraParamsViewModel}"
  22. d:Height="600"
  23. d:Width="1024"
  24. d:Background="White"
  25. FontFamily="{DynamicResource DefaultFont}">
  26. <b:Interaction.Triggers>
  27. <b:EventTrigger EventName="Loaded">
  28. <b:InvokeCommandAction Command="{Binding LoadedCommand}" />
  29. </b:EventTrigger>
  30. </b:Interaction.Triggers>
  31. <UserControl.Resources>
  32. <convert:JogConverter x:Key="JogConverter" />
  33. </UserControl.Resources>
  34. <Grid>
  35. <Grid.RowDefinitions>
  36. <RowDefinition Height="auto" />
  37. <RowDefinition Height="*" />
  38. <RowDefinition Height="auto" />
  39. </Grid.RowDefinitions>
  40. <Button Grid.Row="0"
  41. Content="{materialDesign:PackIcon Kind=ArrowLeftCircle}"
  42. Width="50"
  43. HorizontalAlignment="Left"
  44. VerticalAlignment="Top"
  45. ToolTip="{lex:Loc 返回}"
  46. Style="{StaticResource MaterialDesignIconButton}"
  47. Command="{Binding BackCommand}" />
  48. <StackPanel Grid.Row="0"
  49. Orientation="Horizontal"
  50. Margin="50,0"
  51. VerticalAlignment="Center">
  52. <materialDesign:PackIcon Kind="CrosshairsGps"
  53. Width="30"
  54. Height="30" />
  55. <TextBlock Text="{Binding SelectCalibration.Name,Converter={StaticResource StringFormatConverter},ConverterParameter=' [{0}] '}"
  56. VerticalAlignment="Center" />
  57. <TextBlock Text="{lex:Loc 校准相机参数设置,Converter={StaticResource StringFormatConverter},ConverterParameter='- {0}'}"
  58. VerticalAlignment="Center" />
  59. </StackPanel>
  60. <materialDesign:DrawerHost Grid.Row="1"
  61. IsEnabled="{Binding IsAllowEdit}"
  62. OpenMode="Standard"
  63. x:Name="DrawerHost">
  64. <materialDesign:DrawerHost.RightDrawerContent>
  65. <uControl:RobotManual x:Name="robotManual" />
  66. </materialDesign:DrawerHost.RightDrawerContent>
  67. <Grid>
  68. <Grid>
  69. <Grid.ColumnDefinitions>
  70. <ColumnDefinition Width="*" />
  71. <ColumnDefinition Width="auto" />
  72. </Grid.ColumnDefinitions>
  73. <Grid Grid.Column="1">
  74. <Grid.RowDefinitions>
  75. <RowDefinition Height="auto" />
  76. <RowDefinition Height="auto" />
  77. <RowDefinition Height="auto" />
  78. <RowDefinition Height="auto" />
  79. </Grid.RowDefinitions>
  80. <Grid.ColumnDefinitions>
  81. <ColumnDefinition Width="auto" />
  82. <ColumnDefinition Width="*" />
  83. </Grid.ColumnDefinitions>
  84. <TextBlock Text="{lex:Loc 相机参数设置}"
  85. Grid.Row="0"
  86. FontWeight="Bold"
  87. Margin="10"
  88. Grid.ColumnSpan="2" />
  89. <TextBlock Grid.Row="1"
  90. Grid.Column="0"
  91. Margin="5"
  92. VerticalAlignment="Center"
  93. Text="{lex:Loc 曝光时间,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
  94. <mah:NumericUpDown Grid.Row="1"
  95. Grid.Column="1"
  96. Margin="5"
  97. Minimum="35"
  98. Maximum="999985"
  99. Interval="35"
  100. StringFormat="{}{0:N0} us"
  101. Value="{Binding ExposureTime,Mode=TwoWay}" />
  102. <TextBlock Grid.Row="2"
  103. Grid.Column="0"
  104. Margin="5"
  105. VerticalAlignment="Center"
  106. Text="{lex:Loc 增益,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}" />
  107. <mah:NumericUpDown Grid.Row="2"
  108. Grid.Column="1"
  109. Margin="5"
  110. Minimum="0"
  111. Maximum="63"
  112. Interval="1"
  113. StringFormat="{}{0:N2} db"
  114. Value="{Binding Gain,Mode=TwoWay}" />
  115. </Grid>
  116. <wf:WindowsFormsHost Grid.Column="0"
  117. Margin="0,35,0,35">
  118. <vp:CogRecordDisplay x:Name="display" />
  119. </wf:WindowsFormsHost>
  120. <StackPanel Orientation="Horizontal"
  121. Grid.Column="0"
  122. Margin="5"
  123. VerticalAlignment="Top"
  124. Visibility="{Binding IsShowLight,Converter={StaticResource BooleanToVisibilityConverter}}">
  125. <TextBlock Text="{lex:Loc 光源亮度,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}"
  126. VerticalAlignment="Center" />
  127. <Slider x:Name="lightSlider"
  128. Maximum="100"
  129. Minimum="1"
  130. Width="100"
  131. Value="{Binding SelectCalibration.Brightness}"
  132. Height="20"
  133. VerticalAlignment="Top"
  134. Margin="10,0">
  135. <b:Interaction.Triggers>
  136. <b:EventTrigger EventName="ValueChanged">
  137. <b:InvokeCommandAction Command="{Binding LightValueChangedCommand}"
  138. CommandParameter="{Binding ElementName=lightSlider,Path=Value}" />
  139. </b:EventTrigger>
  140. </b:Interaction.Triggers>
  141. </Slider>
  142. <TextBlock Text="{Binding ElementName=lightSlider,Path=Value,Mode=TwoWay,StringFormat={}{0:F0}}"
  143. Foreground="White"
  144. VerticalAlignment="Center" />
  145. </StackPanel>
  146. </Grid>
  147. <StackPanel Grid.Column="0"
  148. HorizontalAlignment="Left"
  149. VerticalAlignment="Bottom"
  150. Orientation="Horizontal">
  151. <Button Grid.Column="0"
  152. Content="{lex:Loc 开始采集}"
  153. IsEnabled="{Binding IsAllowEdit}"
  154. MinWidth="100"
  155. materialDesign:ButtonAssist.CornerRadius="10"
  156. Style="{StaticResource MaterialDesignRaisedButton}"
  157. Command="{Binding StartGrabbingCommand}" />
  158. <Button Grid.Column="0"
  159. Content="{lex:Loc 停止采集}"
  160. IsEnabled="{Binding IsAllowEdit}"
  161. MinWidth="100"
  162. Margin="10,0"
  163. materialDesign:ButtonAssist.CornerRadius="10"
  164. Style="{StaticResource MaterialDesignRaisedButton}"
  165. Command="{Binding StopGrabbingCommand}" />
  166. </StackPanel>
  167. </Grid>
  168. </materialDesign:DrawerHost>
  169. <StackPanel Orientation="Horizontal"
  170. HorizontalAlignment="Right"
  171. VerticalAlignment="Bottom">
  172. <ToggleButton materialDesign:ToggleButtonAssist.OnContent="{materialDesign:PackIcon Kind=ArrowRight}"
  173. Content="{materialDesign:PackIcon Kind=RobotIndustrial}"
  174. IsEnabled="{Binding IsAllowEdit}"
  175. Style="{StaticResource MaterialDesignActionToggleButton}"
  176. ToolTip="{lex:Loc 机器人步进}"
  177. Margin="2,0"
  178. IsChecked="{Binding IsRightDrawerOpen,ElementName=DrawerHost}" />
  179. </StackPanel>
  180. <StackPanel Grid.Row="2"
  181. Orientation="Horizontal"
  182. HorizontalAlignment="Center"
  183. VerticalAlignment="Center"
  184. Margin="20">
  185. <Button Content="{lex:Loc 下一步}"
  186. IsEnabled="{Binding IsAllowEdit}"
  187. MinWidth="150"
  188. Margin="10,0"
  189. HorizontalAlignment="Center"
  190. VerticalAlignment="Center"
  191. materialDesign:ButtonAssist.CornerRadius="10"
  192. Style="{StaticResource MaterialDesignRaisedButton}"
  193. Command="{Binding NextCommand}" />
  194. </StackPanel>
  195. </Grid>
  196. </UserControl>