EquipmentTopView.xaml 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <UserControl x:Class="VirgoUI.Client.Controls.Parts.EquipmentTopView"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:parts="clr-namespace:VirgoUI.Controls.Parts"
  7. xmlns:parts1="clr-namespace:VirgoUI.Client.Controls.Parts"
  8. mc:Ignorable="d"
  9. d:DesignHeight="636" d:DesignWidth="621">
  10. <UserControl.Resources>
  11. <ResourceDictionary>
  12. <ResourceDictionary.MergedDictionaries>
  13. <ResourceDictionary Source="/VirgoUI;component/Themes/Generic.xaml" />
  14. </ResourceDictionary.MergedDictionaries>
  15. </ResourceDictionary>
  16. </UserControl.Resources>
  17. <Canvas Margin="0">
  18. <Canvas.Resources>
  19. <Storyboard x:Key="ATMDoor_Open">
  20. <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Height)" >
  21. <EasingDoubleKeyFrame KeyTime="0" Value="38"/>
  22. <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="5"/>
  23. </DoubleAnimationUsingKeyFrames>
  24. </Storyboard>
  25. <Storyboard x:Key="ATMDoor_Close">
  26. <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Height)" >
  27. <EasingDoubleKeyFrame KeyTime="0" Value="5"/>
  28. <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="38"/>
  29. </DoubleAnimationUsingKeyFrames>
  30. </Storyboard>
  31. <Style TargetType="{x:Type Rectangle}" x:Key="SlitValveA_Animation" >
  32. <Style.Triggers>
  33. <DataTrigger Binding="{Binding PMASlitValveIsOpen}" Value="true">
  34. <DataTrigger.EnterActions>
  35. <BeginStoryboard Storyboard="{StaticResource ATMDoor_Open}"/>
  36. </DataTrigger.EnterActions>
  37. <DataTrigger.ExitActions>
  38. <BeginStoryboard Storyboard="{StaticResource ATMDoor_Close}"/>
  39. </DataTrigger.ExitActions>
  40. </DataTrigger>
  41. </Style.Triggers>
  42. </Style>
  43. <Style TargetType="{x:Type Rectangle}" x:Key="SlitValveB_Animation" >
  44. <Style.Triggers>
  45. <DataTrigger Binding="{Binding PMBSlitValveIsOpen}" Value="true">
  46. <DataTrigger.EnterActions>
  47. <BeginStoryboard Storyboard="{StaticResource ATMDoor_Open}"/>
  48. </DataTrigger.EnterActions>
  49. <DataTrigger.ExitActions>
  50. <BeginStoryboard Storyboard="{StaticResource ATMDoor_Close}"/>
  51. </DataTrigger.ExitActions>
  52. </DataTrigger>
  53. </Style.Triggers>
  54. </Style>
  55. </Canvas.Resources>
  56. <Image Source="/VirgoUI;component/Controls/Assets/Images/overview.png" Height="636"/>
  57. <Path Data="M204.5,180 L187.5,185 154.5,92.5 269,51.5 302.5,142 286.5,148 294,161 321.5,151 278,33 135.5,84 178.5,202 209.5,191 z" Fill="{Binding PMABackground}" Opacity="0.7" Height="169" Canvas.Left="139" Stretch="Fill" Canvas.Top="34.5" Width="186"/>
  58. <Path Data="M361.75,148 L347.25,142.75 381.5,50.25 496.5,91.75 463.5,183.5 446.25,176.75 441.25,190.25 471.75,201.5 514.5,83 372.5,31.25 330,150 357,160 z" Fill="{Binding PMBBackground}" Opacity="0.7" Height="170.25" Canvas.Left="330" Stretch="Fill" Canvas.Top="34" Width="184.5"/>
  59. <parts:WaferCtrl Width="66" Height="66" Canvas.Left="120" Canvas.Top="258" WaferData="{Binding Cooling2Wafer}" />
  60. <parts:WaferCtrl Width="66" Height="66" Canvas.Left="120" Canvas.Top="362" WaferData="{Binding Cooling1Wafer}" />
  61. <parts:WaferCtrl Width="66" Height="66" Canvas.Left="474" Canvas.Top="258" WaferData="{Binding Aligner2Wafer}" />
  62. <parts:WaferCtrl Width="66" Height="66" Canvas.Left="474" Canvas.Top="362" WaferData="{Binding Aligner1Wafer}" />
  63. <parts:WaferCtrl Width="66" Height="66" Canvas.Left="203" Canvas.Top="93" WaferData="{Binding PMAWafer}" />
  64. <parts:WaferCtrl Width="66" Height="66" Canvas.Left="386" Canvas.Top="93" WaferData="{Binding PMBWafer}" />
  65. <TextBlock Text="Cooling 1" Canvas.Left="125" Canvas.Top="440"></TextBlock>
  66. <TextBlock Text="Cooling 2" Canvas.Left="125" Canvas.Top="230"></TextBlock>
  67. <TextBlock Text="Aligner 1" Canvas.Left="481" Canvas.Top="440"></TextBlock>
  68. <TextBlock Text="Aligner 2" Canvas.Left="481" Canvas.Top="230"></TextBlock>
  69. <TextBlock Text="LP1" Canvas.Left="236" Canvas.Top="610"></TextBlock>
  70. <TextBlock Text="LP2" Canvas.Left="405" Canvas.Top="610"></TextBlock>
  71. <TextBlock Text="{Binding PMALabel}" Width="120" TextAlignment="Center" Canvas.Left="139" Canvas.Top="43" RenderTransformOrigin="0.5,0.5">
  72. <TextBlock.RenderTransform>
  73. <TransformGroup>
  74. <ScaleTransform/>
  75. <SkewTransform/>
  76. <RotateTransform Angle="-18.706"/>
  77. <TranslateTransform/>
  78. </TransformGroup>
  79. </TextBlock.RenderTransform></TextBlock>
  80. <TextBlock Text="{Binding PMBLabel}" Width="120" TextAlignment="Center" Canvas.Left="392" Canvas.Top="40" RenderTransformOrigin="0.5,0.5">
  81. <TextBlock.RenderTransform>
  82. <TransformGroup>
  83. <ScaleTransform/>
  84. <SkewTransform/>
  85. <RotateTransform Angle="20.875"/>
  86. <TranslateTransform/>
  87. </TransformGroup>
  88. </TextBlock.RenderTransform></TextBlock>
  89. <Grid x:Name="Slit_valve" Width="8" Height="76" Canvas.Left="261" Canvas.Top="163" RenderTransformOrigin="0.5,0.5" >
  90. <Grid.RenderTransform>
  91. <TransformGroup>
  92. <ScaleTransform/>
  93. <SkewTransform/>
  94. <RotateTransform Angle="70"/>
  95. <TranslateTransform/>
  96. </TransformGroup>
  97. </Grid.RenderTransform>
  98. <Rectangle x:Name="SlitValve_Top" Style="{StaticResource SlitValveA_Animation}" Fill="DimGray" Width="8" VerticalAlignment="Top" Height="38" />
  99. <Rectangle x:Name="SlitValve_Bottom" Style="{StaticResource SlitValveA_Animation}" Fill="DimGray" Width="8" VerticalAlignment="Bottom" Height="38" />
  100. </Grid>
  101. <Grid x:Name="Slit_valve1" Width="8" Height="76" Canvas.Left="388" Canvas.Top="162" RenderTransformOrigin="0.5,0.5" >
  102. <Grid.RenderTransform>
  103. <TransformGroup>
  104. <ScaleTransform/>
  105. <SkewTransform/>
  106. <RotateTransform Angle="109"/>
  107. <TranslateTransform/>
  108. </TransformGroup>
  109. </Grid.RenderTransform>
  110. <Rectangle x:Name="SlitValve_Top1" Style="{StaticResource SlitValveB_Animation}" Fill="DimGray" Width="8" VerticalAlignment="Top" Height="38" />
  111. <Rectangle x:Name="SlitValve_Bottom1" Style="{StaticResource SlitValveB_Animation}" Fill="DimGray" Width="8" VerticalAlignment="Bottom" Height="38" />
  112. </Grid>
  113. <parts1:Foup IdleVisibility="{Binding Foup1Idle, Converter={StaticResource BoolVisibilityConverter}}"
  114. ErrorVisibility="{Binding Foup1Error, Converter={StaticResource BoolVisibilityConverter}}"
  115. BusyVisibility="{Binding Foup1Busy, Converter={StaticResource BoolVisibilityConverter}}"
  116. CompleteVisibility="{Binding Foup1Complete, Converter={StaticResource BoolVisibilityConverter}}"
  117. Visibility="{Binding Foup1Present, Converter={StaticResource BoolVisibilityConverter}}" Width="70" Height="70" Canvas.Left="219" Canvas.Top="507"/>
  118. <parts1:Foup
  119. IdleVisibility="{Binding Foup2Idle, Converter={StaticResource BoolVisibilityConverter}}"
  120. ErrorVisibility="{Binding Foup2Error, Converter={StaticResource BoolVisibilityConverter}}"
  121. BusyVisibility="{Binding Foup2Busy, Converter={StaticResource BoolVisibilityConverter}}"
  122. CompleteVisibility="{Binding Foup2Complete, Converter={StaticResource BoolVisibilityConverter}}"
  123. Visibility="{Binding Foup2Present, Converter={StaticResource BoolVisibilityConverter}}" Width="70" Height="70" Canvas.Left="368" Canvas.Top="506"/>
  124. </Canvas>
  125. </UserControl>