Parcourir la source

设备界面修改

reconfiguration
pry il y a 3 mois
Parent
révision
acd9cffb19
27 fichiers modifiés avec 2058 ajouts et 0 suppressions
  1. +7
    -0
      BPASmartClient.Academy/App.xaml.cs
  2. +188
    -0
      BPASmartClient.Academy/View/Device.xaml
  3. +28
    -0
      BPASmartClient.Academy/View/Device.xaml.cs
  4. +12
    -0
      BPASmartClient.CustomResource/BPASmartClient.CustomResource.csproj
  5. +31
    -0
      BPASmartClient.CustomResource/Converters/ColorLightConverter.cs
  6. +50
    -0
      BPASmartClient.CustomResource/Converters/VisibilityConverter.cs
  7. BIN
     
  8. BIN
     
  9. BIN
     
  10. BIN
     
  11. BIN
     
  12. BIN
     
  13. +107
    -0
      BPASmartClient.CustomResource/UserControls/Control/Condenser.xaml
  14. +28
    -0
      BPASmartClient.CustomResource/UserControls/Control/Condenser.xaml.cs
  15. +396
    -0
      BPASmartClient.CustomResource/UserControls/Control/HandValve.xaml
  16. +79
    -0
      BPASmartClient.CustomResource/UserControls/Control/HandValve.xaml.cs
  17. +177
    -0
      BPASmartClient.CustomResource/UserControls/Control/JAR.xaml
  18. +28
    -0
      BPASmartClient.CustomResource/UserControls/Control/JAR.xaml.cs
  19. +411
    -0
      BPASmartClient.CustomResource/UserControls/Control/Joint.xaml
  20. +28
    -0
      BPASmartClient.CustomResource/UserControls/Control/Joint.xaml.cs
  21. +110
    -0
      BPASmartClient.CustomResource/UserControls/Control/MotorHousing.xaml
  22. +28
    -0
      BPASmartClient.CustomResource/UserControls/Control/MotorHousing.xaml.cs
  23. +12
    -0
      BPASmartClient.CustomResource/UserControls/Control/MotorTwo.xaml
  24. +95
    -0
      BPASmartClient.CustomResource/UserControls/Control/MotorTwo.xaml.cs
  25. +184
    -0
      BPASmartClient.CustomResource/UserControls/Control/Tanks.xaml
  26. +28
    -0
      BPASmartClient.CustomResource/UserControls/Control/Tanks.xaml.cs
  27. +31
    -0
      BPASmartClient.CustomResource/UserControls/Enum/MotorColor.cs

+ 7
- 0
BPASmartClient.Academy/App.xaml.cs Voir le fichier

@@ -172,6 +172,13 @@ namespace BPASmartClient.Academy
AssemblyName = "BPASmartClient.Academy",
ToggleWindowPath = "View.DeviceMotionView"
});
DeviceMonitor.Add(new SubMenumodel()
{
SubMenuName = "设备",
SubMenuPermission = new Permission[] { Permission.管理员, Permission.操作员, Permission.观察员, Permission.技术员 },
AssemblyName = "BPASmartClient.Academy",
ToggleWindowPath = "View.Device"
});
MenuManage.GetInstance.menuModels.Add(new MenuModel()
{
MainMenuIcon = "",


+ 188
- 0
BPASmartClient.Academy/View/Device.xaml Voir le fichier

@@ -0,0 +1,188 @@
<UserControl
x:Class="BPASmartClient.Academy.View.Device"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:bpa="clr-namespace:BPASmartClient.CustomResource.UserControls;assembly=BPASmartClient.CustomResource"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BPASmartClient.Academy.View"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DesignHeight="450"
d:DesignWidth="800"
mc:Ignorable="d">
<Viewbox Stretch="Uniform">
<Canvas Width="800" Height="450">

<StackPanel
Canvas.Left="56"
Canvas.Top="35"
Orientation="Horizontal">
<bpa:MotorTwo
Width="60"
Height="30"
Margin="0,-20,0,0" />
<bpa:MotorHousing
Width="50"
Height="50"
Margin="-20,0,0,0" />
</StackPanel>

<StackPanel
Canvas.Left="87"
Canvas.Top="150"
Width="70"
Height="120">
<bpa:PipeLineV
Width="15"
Height="80"
Direction="0" />
<bpa:PipeLineTR
Width="30"
Margin="0,-1,-15,0"
Direction="0" />
</StackPanel>

<StackPanel
Canvas.Left="90"
Canvas.Top="65"
Width="65"
Height="130">
<bpa:JAR Width="65" Height="65" />
<bpa:HandValve
Width="45"
Height="65"
Margin="0,-20,-12,0"
RenderTransformOrigin="0.5,0.5">
<bpa:HandValve.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="0.926" ScaleY="1.08" />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</bpa:HandValve.RenderTransform>
</bpa:HandValve>
</StackPanel>

<bpa:PipeLineH Width="198" Height="8" Canvas.Left="229" Canvas.Top="208" Direction="0"/>
<bpa:PipeLineTL Width="16" Margin="0 0 0 -8" Canvas.Left="427" Canvas.Top="200" Direction="0" />
<bpa:PipeLineV Width="8" Height="23" Canvas.Left="435" Canvas.Top="177" Direction="0" />
<bpa:PipeLineV Width="8" Height="100" Canvas.Left="584" Canvas.Top="185" Direction="0" />
<bpa:PipeLineV Width="8" Height="50" Canvas.Left="596" Canvas.Top="300" Direction="0" />
<bpa:Tanks Width="60" Height="60" Margin="0 -5 -15 0" Canvas.Left="570" Canvas.Top="250"/>
<bpa:HandValve Width="25" Canvas.Left="591" Canvas.Top="350" RenderTransformOrigin="0.5,0.5">
<bpa:HandValve.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="0.926" ScaleY="1.08" />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</bpa:HandValve.RenderTransform>
</bpa:HandValve>

<StackPanel Orientation="Horizontal" Canvas.Left="435" Canvas.Top="160">
<bpa:PipeLineBR Width="16" Margin="0 0 0 -8" Direction="0" />
<bpa:PipeLineH Width="50" Height="8" Direction="0"/>
<bpa:HandValve Width="25" Margin="-1 -7 0 0" Panel.ZIndex="1"/>
<bpa:PipeLineH Width="50" Height="8" Margin="-6 0 0 0" Panel.ZIndex="0" Direction="0"/>
</StackPanel>

<StackPanel Orientation="Horizontal" Canvas.Left="427" Canvas.Top="200">
<bpa:PipeLineH Width="73" Height="8" Direction="0"/>
<bpa:HandValve Width="25" Margin="-1 -7 0 0" Panel.ZIndex="1"/>
<bpa:PipeLineH Width="120" Height="8" Margin="-6 0 0 0" Panel.ZIndex="0" Direction="0"/>
<bpa:PipeLineTL Width="16" Margin="0 0 0 8" Direction="0" />
</StackPanel>

<bpa:PipeLineV Width="8" Height="30" Canvas.Left="646" Canvas.Top="170" Direction="0" />
<bpa:PipeLineBL Width="16" Canvas.Left="638" Canvas.Top="154" Direction="0" />
<bpa:PipeLineH Width="31" Height="8" Canvas.Left="607" Canvas.Top="154" Direction="0"/>

<bpa:PipeLineH Width="65" Height="15" Canvas.Left="144" Canvas.Top="244" Direction="0"/>
<bpa:PipeLineH Width="65" Height="15" Canvas.Left="258" Canvas.Top="244" Direction="0"/>
<bpa:PipeLineTL Width="30" Canvas.Left="321" Canvas.Top="229" Direction="0" />
<bpa:PipeLineV Width="15" Height="50" Canvas.Left="336" Canvas.Top="180" Direction="0" />
<bpa:PipeLineV Width="15" Height="110" Canvas.Left="336" Canvas.Top="40" Direction="0" />
<bpa:PipeLineBR Width="30" Canvas.Left="336" Canvas.Top="10" Direction="0" />
<bpa:PipeLineH Width="200" Height="15" Canvas.Left="366" Canvas.Top="10" Direction="0"/>
<bpa:HandValve Width="45" Height="65" Canvas.Left="327" Canvas.Top="136" RenderTransformOrigin="0.5,0.5">
<bpa:HandValve.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="0.926" ScaleY="1.08" />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</bpa:HandValve.RenderTransform>
</bpa:HandValve>

<StackPanel Canvas.Left="555" Canvas.Top="10">
<bpa:PipeLineBL Width="30" Direction="0" />
<bpa:Condenser Width="65" Height="80" Margin="0 0 -15 0"/>
<bpa:PipeLineV Width="8" Height="20" Margin="0 -4 -15 0" Direction="0" />
<bpa:Tanks Width="60" Height="60" Margin="0 -5 -15 0" />
</StackPanel>

<StackPanel
Canvas.Left="200"
Canvas.Top="175"
Width="65"
Height="150">
<bpa:MotorTwo Width="40" Height="30" Margin="0 0 0 -1" RenderTransformOrigin="0.5,0.5">
<bpa:MotorTwo.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</bpa:MotorTwo.RenderTransform>
</bpa:MotorTwo>
<bpa:Joint Width="40" Height="30" Margin="0 0 0 -3"/>
<bpa:JAR Width="65" Height="65" />
<bpa:HandValve
Width="45"
Height="65"
Margin="0,-20,-12,0"
RenderTransformOrigin="0.5,0.5">
<bpa:HandValve.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="0.926" ScaleY="1.08" />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</bpa:HandValve.RenderTransform>
</bpa:HandValve>
</StackPanel>



<bpa:PipeLineV Margin="418,58,362,194" Direction="0" />
<bpa:PipeLineH Width="65" Margin="333,276,402,154" />

<bpa:PipeLineH Width="65" Margin="458,19,277,411" />
<bpa:PipeLineV Margin="543,310,237,104" Direction="0" />
<bpa:PipeLineV Margin="543,160,237,255" Direction="0" />
<bpa:PipeLineV Margin="543,251,237,164" Direction="0" />
<bpa:MotorTwo Margin="253,222,465,184" RenderTransformOrigin="0.5,0.5">
<bpa:MotorTwo.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</bpa:MotorTwo.RenderTransform>
</bpa:MotorTwo>

</Canvas>
</Viewbox>

</UserControl>

+ 28
- 0
BPASmartClient.Academy/View/Device.xaml.cs Voir le fichier

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace BPASmartClient.Academy.View
{
/// <summary>
/// Device.xaml 的交互逻辑
/// </summary>
public partial class Device : UserControl
{
public Device()
{
InitializeComponent();
}
}
}

+ 12
- 0
BPASmartClient.CustomResource/BPASmartClient.CustomResource.csproj Voir le fichier

@@ -76,6 +76,12 @@
<None Remove="Image\logo\椭圆 22 副本 3.png" />
<None Remove="Image\logo\椭圆 23.png" />
<None Remove="Image\logo\菠萝精灵.png" />
<None Remove="Image\Motor\MotorGray.png" />
<None Remove="Image\Motor\MotorGreen.png" />
<None Remove="Image\Motor\MotorRed.png" />
<None Remove="Image\Motor\MotorYellow.png" />
<None Remove="Image\Motor\RSCorPumpOff.png" />
<None Remove="Image\Motor\RSCorPumpOn.png" />
<None Remove="Image\Pop_bg.png" />
<None Remove="Image\Scroll_←.png" />
<None Remove="Image\Scroll_↑.png" />
@@ -345,6 +351,12 @@
<Resource Include="Image\leftback.png" />
<Resource Include="Image\leftImage.png" />
<Resource Include="Image\Login.png" />
<Resource Include="Image\Motor\MotorGray.png" />
<Resource Include="Image\Motor\MotorGreen.png" />
<Resource Include="Image\Motor\MotorRed.png" />
<Resource Include="Image\Motor\MotorYellow.png" />
<Resource Include="Image\Motor\RSCorPumpOff.png" />
<Resource Include="Image\Motor\RSCorPumpOn.png" />
<Resource Include="Image\textBox.png" />
<Resource Include="Image\WindowImages.png" />
<Resource Include="Image\上箭头.png" />


+ 31
- 0
BPASmartClient.CustomResource/Converters/ColorLightConverter.cs Voir le fichier

@@ -0,0 +1,31 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;
using System.Windows.Media;

namespace BPASmartClient.CustomResource.Converters
{
public class ColorLightConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
Color color = (Color)value;
int degree = 40;
bool flag = parameter != null;
if (flag)
{
degree = System.Convert.ToInt32(parameter);
}
return Color.FromRgb((byte)((int)color.R + (int)(byte.MaxValue - color.R) * degree / 100), (byte)((int)color.G + (int)(byte.MaxValue - color.G) * degree / 100), (byte)((int)color.B + (int)(byte.MaxValue - color.B) * degree / 100));
}

public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return value;
}
}
}

+ 50
- 0
BPASmartClient.CustomResource/Converters/VisibilityConverter.cs Voir le fichier

@@ -0,0 +1,50 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;
using System.Windows;

namespace BPASmartClient.CustomResource.Converters
{
public class VisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
bool flag = parameter == null;
object result;
if (flag)
{
bool flag2 = System.Convert.ToBoolean(value);
if (flag2)
{
result = Visibility.Visible;
}
else
{
result = Visibility.Hidden;
}
}
else
{
bool flag3 = System.Convert.ToBoolean(value);
if (flag3)
{
result = Visibility.Hidden;
}
else
{
result = Visibility.Visible;
}
}
return result;
}

public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
}







+ 107
- 0
BPASmartClient.CustomResource/UserControls/Control/Condenser.xaml Voir le fichier

@@ -0,0 +1,107 @@
<UserControl
x:Class="BPASmartClient.CustomResource.UserControls.Condenser"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BPASmartClient.CustomResource.UserControls"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DesignHeight="64"
d:DesignWidth="64"
mc:Ignorable="d">
<Viewbox
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:s="clr-namespace:System;assembly=mscorlib"
Stretch="Uniform"
ToolTip="Tank 8">
<Viewbox.Tag>
<s:Int64>1403279722</s:Int64>
</Viewbox.Tag>
<Canvas
Name="Group_Tank_8"
Width="56.254"
Height="112.5"
HorizontalAlignment="Left"
VerticalAlignment="Top"
LayoutTransform="Identity"
Tag="#00000000,#FF0080FF,Original,0,None"
UseLayoutRounding="False">
<Canvas
Name="Group_TankBody"
Canvas.Left="0.002"
Canvas.Top="-0.5"
Width="56.25"
Height="112.5"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="17.55"
Canvas.Top="0"
Width="21.15"
Height="9.357"
Data="M17.552,8.857L38.702,8.857 38.702,-0.5 17.552,-0.5z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="14.962"
Width="56.25"
Height="79.594"
Data="F1M0.002,20.65L27.209,14.462 56.252,20.65 56.252,87.475 28.127,94.056 0.002,87.475z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="8.775"
Width="56.25"
Height="12.375"
Data="F1M0.002,20.65L17.552,8.27500000000001 38.702,8.27500000000001 56.252,20.65z"
Stretch="Fill">
<Path.Fill>
<RadialGradientBrush Center="0.5,0.5" GradientOrigin="0.5,0.5" RadiusX="0.362" RadiusY="1.645">
<RadialGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF6C6D70" />
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="87.75"
Width="56.25"
Height="24.75"
Data="F1M0.002,87.25L28.127,112 56.252,87.25z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="1,0.5" EndPoint="0,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF4C4C4C" />
<GradientStop Offset="0.52" Color="#FFBCBEC0" />
<GradientStop Offset="1" Color="#FF656565" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
</Canvas>
</Canvas>
</Viewbox>
</UserControl>

+ 28
- 0
BPASmartClient.CustomResource/UserControls/Control/Condenser.xaml.cs Voir le fichier

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace BPASmartClient.CustomResource.UserControls
{
/// <summary>
/// Condenser.xaml 的交互逻辑
/// </summary>
public partial class Condenser : UserControl
{
public Condenser()
{
InitializeComponent();
}
}
}

+ 396
- 0
BPASmartClient.CustomResource/UserControls/Control/HandValve.xaml Voir le fichier

@@ -0,0 +1,396 @@
<UserControl
x:Class="BPASmartClient.CustomResource.UserControls.HandValve"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:con="clr-namespace:BPASmartClient.CustomResource.Converters"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BPASmartClient.CustomResource.UserControls"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DesignHeight="450"
d:DesignWidth="800"
mc:Ignorable="d">
<UserControl.Resources>
<ResourceDictionary>
<con:VisibilityConverter x:Key="visibilityConverter" />
<con:ColorLightConverter x:Key="colorLightConverter" />
</ResourceDictionary>
</UserControl.Resources>
<Grid>
<Viewbox>
<Canvas
Name="Group_Hand_valve_3"
Width="112.5"
Height="81.19"
HorizontalAlignment="Left"
VerticalAlignment="Top"
LayoutTransform="Identity"
UseLayoutRounding="False">
<Canvas
Name="Group_Horizontal_Pipe"
Width="61"
Height="37.049"
Left="15.584"
Tag="#00000000,#FF008000,Original,0,None"
Top="36.409">
<Path
Canvas.Left="0"
Canvas.Top="0"
Width="61"
Height="37.049"
Data="M76.584,73.458 L15.584,73.458 L15.584,36.409 L76.584,36.409"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="{Binding Path=EdgeColor, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type local:HandValve}}}" />
<GradientStop Offset="0.45" Color="{Binding Path=EdgeColor, Converter={StaticResource colorLightConverter}, ConverterParameter=80, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type local:HandValve}}}" />
<GradientStop Offset="0.77" Color="{Binding Path=EdgeColor, Converter={StaticResource colorLightConverter}, ConverterParameter=50, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type local:HandValve}}}" />
<GradientStop Offset="1" Color="{Binding Path=EdgeColor, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type local:HandValve}}}" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
</Canvas>
<Canvas
Name="Group_Bolt"
Width="90.541"
Height="46.283"
Left="0.45"
Tag="#00000000,#FF008000,Original,0,None"
Top="31.792">
<Path
Canvas.Left="71.96"
Canvas.Top="39.414"
Width="18.581"
Height="6.869"
Data="F1 M88.738,71.206 L74.775,71.206 L72.41,71.771 L72.41,77.513 L74.775,78.075 L88.738,78.075 L90.991,77.513 L90.991,71.771"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
<Path
Canvas.Left="71.96"
Canvas.Top="19.707"
Width="18.581"
Height="6.869"
Data="F1 M88.626,51.499 L74.775,51.499 L72.41,52.062 L72.41,57.806 L74.775,58.368 L88.626,58.368 L90.991,57.806 L90.991,52.062"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
<Path
Canvas.Left="71.96"
Canvas.Top="0"
Width="18.581"
Height="6.869"
Data="F1 M88.738,31.792 L74.775,31.792 L72.41,32.242 L72.41,38.098 L74.775,38.661 L88.738,38.661 L90.991,38.098 L90.991,32.242"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
<Path
Canvas.Left="0.113"
Canvas.Top="0"
Width="18.581"
Height="6.869"
Data="F1 M16.779,31.792 L2.928,31.792 L0.563,32.242 L0.563,38.098 L2.928,38.661 L16.779,38.661 L19.144,38.098 L19.144,32.242"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="19.707"
Width="18.694"
Height="6.869"
Data="F1 M16.779,51.499 L2.815,51.499 L0.45,52.062 L0.45,57.806 L2.815,58.368 L16.779,58.368 L19.144,57.806 L19.144,52.062"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
<Path
Canvas.Left="0.113"
Canvas.Top="39.414"
Width="18.581"
Height="6.869"
Data="F1 M16.779,71.206 L2.928,71.206 L0.563,71.771 L0.563,77.513 L2.928,78.075 L16.779,78.075 L19.144,77.513 L19.144,71.771"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
</Canvas>
<Canvas
Name="Group_Flange"
Width="85.923"
Height="51.573"
Left="2.815"
Tag="#00000000,#FF008000,Original,0,None"
Top="29.427">
<Path
Canvas.Left="0"
Canvas.Top="0"
Width="13.964"
Height="51.573"
Data="M2.815,81 L16.779,81 L16.779,29.427 L2.815,29.427"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
<Path
Canvas.Left="71.847"
Canvas.Top="0"
Width="14.076"
Height="51.573"
Data="M74.662,81 L88.738,81 L88.738,29.427 L74.662,29.427"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
<Path
Canvas.Left="6.298"
Canvas.Top="0"
Width="0.943"
Height="51.573"
Data="F1 M9.113,81 L10.056,81 L10.056,29.427 L9.113,29.427"
Fill="#FF4C4C4C"
Stretch="Fill" />
<Path
Canvas.Left="78.414"
Canvas.Top="0"
Width="0.943"
Height="51.573"
Data="F1 M81.229,81 L82.172,81 L82.172,29.427 L81.229,29.427"
Fill="#FF4C4C4C"
Stretch="Fill" />
</Canvas>
<Canvas
Name="Group_Handle"
Width="74.888"
Height="8.334"
Left="37.05"
Tag="#00000000,#FF008000,Original,0,None"
Top="0.26"
Visibility="{Binding Path=OpenEnable, Converter={StaticResource visibilityConverter}, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type local:HandValve}}}">
<Path
Canvas.Left="0"
Canvas.Top="1.352"
Width="21.396"
Height="6.982"
Data="F1 M37.0498,8.5937 L37.7248,5.6657 L52.2528,5.6657 L54.5048,1.6117 L58.4458,1.6117 L58.4458,3.8637 L55.5178,3.8637 L53.3788,8.1427 L39.3018,8.1427 L39.3018,8.5937"
Fill="#FFCCCCCC"
Stretch="Fill" />
<Path
Canvas.Left="1.126"
Canvas.Top="2.478"
Width="20.27"
Height="5.856"
Data="F1 M38.1758,8.5937 L38.8518,6.7917 L52.7028,6.7917 L55.0678,2.7377 L58.4458,2.7377 L58.4458,3.8637 L55.5178,3.8637 L53.3788,8.1427 L39.3018,8.1427 L39.3018,8.5937"
Fill="#FF666666"
Stretch="Fill" />
<Path
Canvas.Left="21.396"
Canvas.Top="0"
Width="53.492"
Height="4.73"
Data="M111.938,4.98999999999999 L58.446,4.98999999999999 L58.446,0.259999999999991 L111.938,0.259999999999991"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
</Canvas>
<Canvas
Name="Group_Vertical_Pipe"
Width="49.211"
Height="39.415"
Left="21.172"
Tag="#00000000,#FF008000,Original,0,None"
Top="8.594">
<Path
Canvas.Left="6.756"
Canvas.Top="0"
Width="36.148"
Height="39.415"
Data="F1 M27.928,8.59399999999999 L27.928,36.229 L27.928,36.889 C27.928,43.03 36.02,48.009 46.002,48.009 L46.002,48.009 C55.984,48.009 64.076,43.03 64.076,36.889 L64.076,36.889 L64.076,36.229 L64.076,8.59399999999999"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="5.743"
Width="49.211"
Height="7.996"
Data="M21.172,22.333 L70.383,22.333 L70.383,14.337 L21.172,14.337"
Stretch="Fill">
<Shape.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
</Canvas>
<Canvas
Name="Group_Handle_Bolt"
Width="7.094"
Height="6.952"
Left="42.23"
Tag="#00000000,#FF008000,Original,0,None"
Top="2.288">
<Path
Canvas.Left="0.676"
Canvas.Top="0"
Width="5.743"
Height="6.952"
Data="F1 M48.649,9.23999999999999 L42.906,9.23999999999999 L42.906,2.288 L48.649,2.288"
Fill="#FFE5E5E5"
Stretch="Fill" />
<Path
Canvas.Left="0"
Canvas.Top="0.45"
Width="1.812"
Height="6.502"
Data="F1 M44.042,9.23999999999999 L42.23,9.23999999999999 L42.23,2.738 L44.042,2.738"
Fill="#FFB2B2B2"
Stretch="Fill" />
<Path
Canvas.Left="5.292"
Canvas.Top="0.45"
Width="1.802"
Height="6.502"
Data="F1 M49.324,9.23999999999999 L47.522,9.23999999999999 L47.522,2.738 L49.324,2.738"
Fill="#FFB2B2B2"
Stretch="Fill" />
</Canvas>
<Canvas
Name="Group_Handle2"
Width="74.888"
Height="8.334"
Left="37.05"
Tag="#00000000,#FF008000,Original,0,None"
Top="0.26"
Visibility="{Binding Path=OpenEnable, Converter={StaticResource visibilityConverter}, ConverterParameter=NOT, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type local:HandValve}}}">
<Path
Canvas.Left="-8.125"
Canvas.Top="19.26"
Width="33.438"
Height="4.73"
Data="M111.938,4.98999999999999 L58.446,4.98999999999999 L58.446,0.259999999999991 L111.938,0.259999999999991"
RenderTransformOrigin="0.5,0.5"
Stretch="Fill">
<UIElement.RenderTransform>
<TransformGroup>
<ScaleTransform />
<SkewTransform />
<RotateTransform Angle="90" />
<TranslateTransform />
</TransformGroup>
</UIElement.RenderTransform>
<Shape.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<GradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Shape.Fill>
</Path>
</Canvas>
<Label
Canvas.Left="8"
Canvas.Top="41"
Width="77"
Height="28"
HorizontalContentAlignment="Center"
VerticalContentAlignment="Center"
Content="{Binding Path=Text, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type local:HandValve}}}" />
</Canvas>
</Viewbox>
</Grid>
</UserControl>

+ 79
- 0
BPASmartClient.CustomResource/UserControls/Control/HandValve.xaml.cs Voir le fichier

@@ -0,0 +1,79 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace BPASmartClient.CustomResource.UserControls
{
/// <summary>
/// HandValve.xaml 的交互逻辑
/// </summary>
public partial class HandValve : UserControl
{
public HandValve()
{
InitializeComponent();
}

public static readonly DependencyProperty OpenEnableProperty = DependencyProperty.Register("OpenEnable", typeof(bool), typeof(HandValve), new PropertyMetadata(true));

public static readonly DependencyProperty EdgeColorProperty = DependencyProperty.Register("EdgeColor", typeof(Color), typeof(HandValve), new PropertyMetadata(Color.FromArgb(byte.MaxValue, 91, 92, 95)));

public static readonly DependencyProperty TextProperty = DependencyProperty.Register("Text", typeof(string), typeof(HandValve), new PropertyMetadata(""));

/// <summary>
/// 获取或设置当前的阀门的开关状态
/// </summary>
public bool OpenEnable
{
get
{
return (bool)GetValue(OpenEnableProperty);
}
set
{
SetValue(OpenEnableProperty, value);
}
}

/// <summary>
/// 边缘的颜色
/// </summary>
public Color EdgeColor
{
get
{
return (Color)GetValue(EdgeColorProperty);
}
set
{
SetValue(EdgeColorProperty, value);
}
}

/// <summary>
/// 获取或设置控件的显示颜色
/// </summary>
public string Text
{
get
{
return (string)GetValue(TextProperty);
}
set
{
SetValue(TextProperty, value);
}
}
}
}

+ 177
- 0
BPASmartClient.CustomResource/UserControls/Control/JAR.xaml Voir le fichier

@@ -0,0 +1,177 @@
<UserControl
x:Class="BPASmartClient.CustomResource.UserControls.JAR"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BPASmartClient.CustomResource.UserControls"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DesignHeight="64"
d:DesignWidth="64"
mc:Ignorable="d">
<Viewbox
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:s="clr-namespace:System;assembly=mscorlib"
Stretch="Uniform"
ToolTip="Hopper 3">
<Viewbox.Tag>
<s:Int64>724925612</s:Int64>
</Viewbox.Tag>
<Canvas
Name="Group_Hopper_3"
Width="94.918"
Height="112.5"
HorizontalAlignment="Left"
VerticalAlignment="Top"
LayoutTransform="Identity"
Tag="#00000000,#FF0080FF,Original,0,None"
UseLayoutRounding="False">
<Canvas
Name="Group_Hopper"
Canvas.Left="0.295"
Canvas.Top="-0.5"
Width="94.057"
Height="112.5"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="0.27"
Canvas.Top="4.396"
Width="93.787"
Height="56.588"
Data="M0.565,3.896L94.352,3.896 94.352,60.484 0.565,60.484z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF808285" />
<GradientStop Offset="0.5" Color="#FFF6F6F6" />
<GradientStop Offset="1" Color="#FF808285" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0.27"
Canvas.Top="60.25"
Width="93.787"
Height="28.802"
Data="F1M0.565,59.783L0.565,60.484 33.368,88.552 61.55,88.552 94.352,60.484 94.352,59.75z M0.565,59.783C0.845,59.754,1.15,59.75,1.459,59.75L1.459,59.75C1.15,59.75,0.845,59.754,0.565,59.783"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF808285" />
<GradientStop Offset="0.19" Color="#FF95979A" />
<GradientStop Offset="0.5" Color="#FFF6F6F6" />
<GradientStop Offset="0.77" Color="#FF949699" />
<GradientStop Offset="1" Color="#FF808285" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="33.069"
Canvas.Top="98.993"
Width="28.344"
Height="13.507"
Data="F1M33.364,98.493L33.394,106.982C33.394,110.336,39.731,112,47.551,112L47.551,112C55.369,112,61.708,110.336,61.708,106.982L61.708,106.982 61.632,98.493z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF8A8C8E" />
<GradientStop Offset="0.5" Color="#FFF6F6F6" />
<GradientStop Offset="1" Color="#FF8A8C8E" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="33.048"
Canvas.Top="89.929"
Width="28.317"
Height="11.819"
Data="M33.343,101.248L61.66,101.248 61.66,89.429 33.343,89.429z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF8A8C8E" />
<GradientStop Offset="0.5" Color="#FFF6F6F6" />
<GradientStop Offset="1" Color="#FF8A8C8E" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="0"
Width="93.993"
Height="12.389"
Data="F1M47.241,-0.5C21.313,-0.5,0.295,1.02500000000001,0.295,4.102L0.295,4.102 0.547,11.889 94.288,11.889 94.19,4.102C94.19,1.02500000000001,73.172,-0.5,47.241,-0.5z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF808285" />
<GradientStop Offset="0.5" Color="#FFF6F6F6" />
<GradientStop Offset="1" Color="#FF808285" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
</Canvas>
<Canvas
Name="Group_Hopper_Winding"
Canvas.Left="0.002"
Canvas.Top="2.995"
Width="94.914"
Height="86.798"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="0"
Canvas.Top="0"
Width="94.914"
Height="2.367"
Data="F1M0.002,2.995L94.916,2.995 94.916,5.36200000000001 0.002,5.36200000000001z"
Fill="#FFD9D9D9"
Stretch="Fill" />
<Path
Canvas.Left="-0.125"
Canvas.Top="-0.125"
Width="95.164"
Height="2.617"
Data="M0.002,2.995L94.916,2.995 94.916,5.36200000000001 0.002,5.36200000000001z"
Stretch="Fill"
Stroke="#FF4C4C4C"
StrokeThickness="0.25" />
<Path
Canvas.Left="0"
Canvas.Top="56.249"
Width="94.914"
Height="2.367"
Data="F1M0.002,59.244L94.916,59.244 94.916,61.611 0.002,61.611z"
Fill="#FFD9D9D9"
Stretch="Fill" />
<Path
Canvas.Left="-0.125"
Canvas.Top="56.124"
Width="95.164"
Height="2.617"
Data="M0.002,59.244L94.916,59.244 94.916,61.611 0.002,61.611z"
Stretch="Fill"
Stroke="#FF4C4C4C"
StrokeThickness="0.25" />
<Path
Canvas.Left="31.437"
Canvas.Top="84.306"
Width="31.926"
Height="2.617"
Data="M31.564,87.426L63.24,87.426 63.24,89.793 31.564,89.793z"
Fill="#FFD9D9D9"
Stretch="Fill"
Stroke="#FF4C4C4C"
StrokeThickness="0.25" />
</Canvas>
</Canvas>
</Viewbox>
</UserControl>

+ 28
- 0
BPASmartClient.CustomResource/UserControls/Control/JAR.xaml.cs Voir le fichier

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace BPASmartClient.CustomResource.UserControls
{
/// <summary>
/// JAR.xaml 的交互逻辑
/// </summary>
public partial class JAR : UserControl
{
public JAR()
{
InitializeComponent();
}
}
}

+ 411
- 0
BPASmartClient.CustomResource/UserControls/Control/Joint.xaml Voir le fichier

@@ -0,0 +1,411 @@
<UserControl
x:Class="BPASmartClient.CustomResource.UserControls.Joint"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BPASmartClient.CustomResource.UserControls"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DesignHeight="64"
d:DesignWidth="64"
mc:Ignorable="d">
<Viewbox
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:s="clr-namespace:System;assembly=mscorlib"
Stretch="Uniform"
ToolTip="Safety shutoff valve">
<Viewbox.Tag>
<s:Int64>1750970588</s:Int64>
</Viewbox.Tag>
<Canvas
Name="Group_Safety_shutoff_valve"
Width="83.89"
Height="70"
HorizontalAlignment="Left"
VerticalAlignment="Top"
LayoutTransform="Identity"
Tag="#00000000,#FF0080FF,Original,0,None"
UseLayoutRounding="False">
<!--<Canvas Name="Group_BodyAndPort" Tag="#00000000,#FF0080FF,Original,0,None" Width="64.188" Height="48.197" Canvas.Left="9.796" Canvas.Top="63.801">
<Path Data="F1M29.391,63.801C29.391,63.801,29.947,69.562,28.49,72.248L28.49,72.248C27.679,73.744,25.447,75.813,22.86,76.076L22.86,76.076C19.601,76.409,9.796,77.09,9.796,77.09L9.796,77.09 9.796,96.909C9.796,96.909,21.697,97,24.887,98.373L24.887,98.373C28.845,100.077,29.279,103.44,29.279,103.44L29.279,103.44 29.391,111.998 54.391,111.998 54.391,104.791C54.391,104.791,54.379,101.562,57.769,99.049L57.769,99.049C60.197,97.25,73.984,96.909,73.984,96.909L73.984,96.909 73.984,77.09C73.984,77.09,65.196,76.535,62.385,76.301L62.385,76.301C58.76,76,56.75,74.032,56.192,73.373L56.192,73.373C53.76,70.5,54.391,63.801,54.391,63.801L54.391,63.801z" Stretch="Fill" Width="64.188" Height="48.197" Canvas.Left="0" Canvas.Top="0">
<Path.Fill>
<RadialGradientBrush Center="0.5,0.5" RadiusX="0.442" RadiusY="0.589" GradientOrigin="0.5,0.5">
<RadialGradientBrush.GradientStops>
<GradientStop Color="#FFECECED" Offset="0" />
<GradientStop Color="#FF6C6D70" Offset="1" />
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</Path.Fill>
</Path>
</Canvas>-->
<!--<Canvas Name="Group_Port2" Tag="#00000000,#FF0080FF,Original,0,None" Width="9.91" Height="42.791" Canvas.Left="73.985" Canvas.Top="65.604">
<Path Data="M82.093,108.395L73.985,108.395 73.985,65.604 82.093,65.604z" Stretch="Fill" Width="8.108" Height="42.791" Canvas.Left="0" Canvas.Top="0">
<Path.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF5B5C5F" Offset="0" />
<GradientStop Color="#FFECECED" Offset="0.5" />
<GradientStop Color="#FF5B5C5F" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path Data="M82.093,73.486L83.895,73.486 83.895,100.287 82.093,100.287z" Stretch="Fill" Width="1.802" Height="26.801" Canvas.Left="8.108" Canvas.Top="7.882">
<Path.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF5B5C5F" Offset="0" />
<GradientStop Color="#FFB1B3B6" Offset="0.51" />
<GradientStop Color="#FF5B5C5F" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
</Canvas>-->
<!--<Canvas Name="Group_Port1" Tag="#00000000,#FF0080FF,Original,0,None" Width="9.797" Height="42.791" Canvas.Left="0" Canvas.Top="65.604">
<Path Data="M9.797,108.395L1.689,108.395 1.689,65.604 9.797,65.604z" Stretch="Fill" Width="8.108" Height="42.791" Canvas.Left="1.689" Canvas.Top="0">
<Path.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF5B5C5F" Offset="0" />
<GradientStop Color="#FFECECED" Offset="0.5" />
<GradientStop Color="#FF5B5C5F" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path Data="M0,100.287L1.689,100.287 1.689,73.486 0,73.486z" Stretch="Fill" Width="1.689" Height="26.801" Canvas.Left="0" Canvas.Top="7.882">
<Path.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF5B5C5F" Offset="0" />
<GradientStop Color="#FFB1B3B6" Offset="0.51" />
<GradientStop Color="#FF5B5C5F" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
</Canvas>-->
<!--<Canvas Name="Group_Shutoff" Tag="#00000000,#FF0080FF,Original,0,None" Width="46.62" Height="18.918" Canvas.Left="18.581" Canvas.Top="75.288">
<Path Data="F1M41.103,86.999L42.68,86.999 42.68,75.288 41.103,75.288z" Stretch="Fill" Fill="#FF333333" Width="1.577" Height="11.711" Canvas.Left="22.522" Canvas.Top="0" />
<Path Data="F1M62.498,93.3057L21.283,93.3057 18.693,91.0527 18.581,90.6027 20.382,88.0127 21.283,87.9007 62.498,87.9007 65.201,89.9277 65.201,90.6027 62.949,93.1937z" Stretch="Fill" Fill="#FF333333" Width="46.62" Height="5.405" Canvas.Left="0" Canvas.Top="12.613" />
<Path Data="F1M39.301,77.99L44.481,77.99 44.481,80.693 39.301,80.693z" Stretch="Fill" Fill="#FF999999" Width="5.18" Height="2.703" Canvas.Left="20.72" Canvas.Top="2.702" />
<Path Data="F1M38.4,85.197L45.382,85.197 45.382,86.999 38.4,86.999z" Stretch="Fill" Fill="#FF999999" Width="6.982" Height="1.802" Canvas.Left="19.819" Canvas.Top="9.909" />
<Path Data="F1M38.4,80.693L45.382,80.693 45.382,84.297 38.4,84.297z" Stretch="Fill" Fill="#FF666666" Width="6.982" Height="3.604" Canvas.Left="19.819" Canvas.Top="5.405" />
<Path Data="F1M36.598,86.999L47.183,86.999 47.183,94.206 36.598,94.206z" Stretch="Fill" Fill="#FF666666" Width="10.585" Height="7.207" Canvas.Left="18.017" Canvas.Top="11.711" />
</Canvas>-->
<!--<Canvas Name="Group_Handle" Tag="#00000000,#FF0080FF,Original,0,None" Width="19.594" Height="3.603" Canvas.Left="32.094" Canvas.Top="71.685">
<Path Data="F1M47.1836,72.585L48.9856,72.585 42.6796,75.288 41.1026,75.288 34.7966,72.585 36.5986,72.585 41.1026,74.387 41.1026,72.585 42.6796,72.585 42.6796,74.387z" Stretch="Fill" Fill="#FF990000" Width="14.189" Height="2.703" Canvas.Left="2.703" Canvas.Top="0.9" />
<Path Data="F1M32.094,71.685L51.688,71.685 51.688,72.764 32.094,72.764z" Stretch="Fill" Fill="#FFFF0000" Width="19.594" Height="1.079" Canvas.Left="0" Canvas.Top="0" />
</Canvas>-->
<Canvas
Name="Group_Port3"
Canvas.Left="62.865"
Canvas.Top="-0.5"
Width="19.228"
Height="39.302"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="2.336"
Canvas.Top="10.474"
Width="16.892"
Height="18.018"
Data="M65.201,9.974L82.093,9.974 82.093,27.992 65.201,27.992z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.51" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="7.741"
Canvas.Top="0.001"
Width="6.082"
Height="39.301"
Data="F1M75.787,6.596L75.787,-0.498999999999995 73.084,-0.498999999999995 70.606,-0.498999999999995 70.606,38.802 73.084,38.802 75.787,38.802 75.787,31.595 76.688,31.595 76.688,6.596z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.51" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="7.096"
Width="2.336"
Height="25"
Data="M62.865,6.596L65.201,6.596 65.201,31.596 62.865,31.596z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0.5,1" EndPoint="0.5,0">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.51" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="12.922"
Canvas.Top="34.797"
Width="0.9"
Height="2.703"
Data="F1M75.787,37L76.687,37 76.687,34.297 75.787,34.297z"
Fill="#FF4C4C4C"
Stretch="Fill" />
<Path
Canvas.Left="12.922"
Canvas.Top="11.375"
Width="0.9"
Height="2.703"
Data="F1M75.787,13.578L76.687,13.578 76.687,10.875 75.787,10.875z"
Fill="#FF4C4C4C"
Stretch="Fill" />
<Path
Canvas.Left="12.922"
Canvas.Top="24.888"
Width="0.9"
Height="2.702"
Data="F1M75.787,27.09L76.687,27.09 76.687,24.388 75.787,24.388z"
Fill="#FF4C4C4C"
Stretch="Fill" />
<Path
Canvas.Left="9.904"
Canvas.Top="0"
Width="0.878"
Height="39.302"
Data="M72.769,38.802L73.647,38.802 73.647,-0.5 72.769,-0.5z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="-0.001,0.5" EndPoint="0.999,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.51" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="12.797"
Canvas.Top="1.565"
Width="1.15"
Height="2.953"
Data="M75.787,3.893L76.687,3.893 76.687,1.19 75.787,1.19z"
Fill="#FF4C4C4C"
Stretch="Fill"
Stroke="#FF4C4C4C"
StrokeThickness="0.25" />
</Canvas>
<Canvas
Name="Group_Midlayer"
Canvas.Left="18.58"
Canvas.Top="44.784"
Width="46.622"
Height="20.82"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="7.208"
Canvas.Top="0"
Width="32.207"
Height="3.703"
Data="F1M25.788,44.784L57.995,44.784 57.995,48.487 25.788,48.487z"
Fill="#FF4D4D4D"
Stretch="Fill" />
<Path
Canvas.Left="2.703"
Canvas.Top="1.902"
Width="6.306"
Height="18.918"
Data="M21.283,65.604L27.589,65.604 27.589,46.686 21.283,46.686z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.5" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="14.414"
Canvas.Top="1.902"
Width="6.306"
Height="18.918"
Data="M32.995,65.604L39.301,65.604 39.301,46.686 32.995,46.686z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.5" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="25.899"
Canvas.Top="1.902"
Width="6.307"
Height="18.918"
Data="M44.48,65.604L50.787,65.604 50.787,46.686 44.48,46.686z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.5" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="37.612"
Canvas.Top="1.902"
Width="6.306"
Height="18.918"
Data="M56.192,65.604L62.498,65.604 62.498,46.686 56.192,46.686z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.5" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="3.703"
Width="46.621"
Height="15.315"
Data="M18.581,63.802L65.202,63.802 65.202,48.487 18.581,48.487z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.5" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="8.392"
Width="46.621"
Height="0.878"
Data="F1M18.5805,54.0544L65.2015,54.0544 65.2015,53.1764 18.5805,53.1764z"
Fill="#FF4C4C4C"
Stretch="Fill" />
</Canvas>
<Canvas
Name="Group_MotorBox"
Canvas.Left="20.382"
Canvas.Top="2.992"
Width="43.017"
Height="42.792"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="0"
Canvas.Top="0"
Width="43.017"
Height="42.792"
Data="F1M20.382,2.992L63.399,2.992 63.399,45.784 20.382,45.784z"
Fill="#FF999999"
Stretch="Fill" />
</Canvas>
<Canvas
Name="Group_Bolt"
Canvas.Left="22.38"
Canvas.Top="4.778"
Width="38.815"
Height="39.816"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="0"
Canvas.Top="0"
Width="2.815"
Height="2.815"
Data="F1M23.799,7.593L22.785,7.188 22.38,6.197 22.785,5.184 23.799,4.77800000000001 24.79,5.184 25.195,6.197 24.79,7.188z"
Stretch="Fill">
<Path.Fill>
<RadialGradientBrush Center="0.5,0.5" GradientOrigin="0.5,0.5" RadiusX="0.5" RadiusY="0.5">
<RadialGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FFE2E3E4" />
<GradientStop Offset="0.5" Color="#FFC7C8CA" />
<GradientStop Offset="1" Color="#FF626365" />
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="36"
Canvas.Top="37"
Width="2.815"
Height="2.816"
Data="F1M59.799,44.594L58.785,44.187 58.38,43.197 58.785,42.184 59.799,41.778 60.789,42.184 61.195,43.197 60.789,44.187z"
Stretch="Fill">
<Path.Fill>
<RadialGradientBrush Center="0.5,0.5" GradientOrigin="0.5,0.5" RadiusX="0.5" RadiusY="0.5">
<RadialGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FFE2E3E4" />
<GradientStop Offset="0.5" Color="#FFC7C8CA" />
<GradientStop Offset="1" Color="#FF626365" />
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</Path.Fill>
</Path>
</Canvas>
<Canvas
Name="Group_Label2"
Canvas.Left="48.985"
Canvas.Top="6.596"
Width="10.811"
Height="5.18"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="0"
Canvas.Top="0"
Width="10.811"
Height="5.18"
Data="F1M48.985,6.596L59.796,6.596 59.796,11.776 48.985,11.776z"
Fill="#FFCCCCCC"
Stretch="Fill" />
</Canvas>
<Canvas
Name="Group_Label1"
Canvas.Left="36.598"
Canvas.Top="56.595"
Width="10.585"
Height="5.405"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="0"
Canvas.Top="0"
Width="10.585"
Height="5.405"
Data="F1M36.598,56.595L47.183,56.595 47.183,62 36.598,62z"
Fill="#FF777777"
Stretch="Fill" />
</Canvas>
</Canvas>
</Viewbox>
</UserControl>

+ 28
- 0
BPASmartClient.CustomResource/UserControls/Control/Joint.xaml.cs Voir le fichier

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace BPASmartClient.CustomResource.UserControls
{
/// <summary>
/// Joint.xaml 的交互逻辑
/// </summary>
public partial class Joint : UserControl
{
public Joint()
{
InitializeComponent();
}
}
}

+ 110
- 0
BPASmartClient.CustomResource/UserControls/Control/MotorHousing.xaml Voir le fichier

@@ -0,0 +1,110 @@
<UserControl
x:Class="BPASmartClient.CustomResource.UserControls.MotorHousing"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BPASmartClient.CustomResource.UserControls"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DesignHeight="64"
d:DesignWidth="64"
mc:Ignorable="d">
<Viewbox Stretch="Uniform" ToolTip="Oxygen transmitter" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:s="clr-namespace:System;assembly=mscorlib">
<Viewbox.Tag>
<s:Int64>1349210213</s:Int64>
</Viewbox.Tag>
<Canvas UseLayoutRounding="False" Name="Group_Oxygen_transmitter" Tag="#00000000,#FF0080FF,Original,0,None" LayoutTransform="Identity" Width="56.195" Height="112.5" HorizontalAlignment="Left" VerticalAlignment="Top">
<Canvas Name="Group_Bolts" Tag="#00000000,#FF0080FF,Original,0,None" Width="56.444" Height="8.246" Canvas.Left="-0.124" Canvas.Top="40.592">
<Path Data="M52.5908,43.5322L52.5908,40.7172 48.0868,40.7172 48.0868,48.7132 56.1948,48.7132 56.1948,40.7172 52.5898,40.7172 52.5898,43.5322 53.7158,43.7572 54.5048,44.7712 54.1668,46.0092 53.3778,46.6852 52.2518,46.7982 51.4638,46.2352 50.9018,45.1092 51.4638,44.0962 52.2518,43.5332 52.5908,43.5332 52.5908,43.5322z" Stretch="Fill" Fill="#FF7F7F7F" Stroke="#FF7F7F7F" StrokeThickness="0.25" Width="8.358" Height="8.246" Canvas.Left="48.086" />
<Path Data="F1M3.4922,43.5322L3.4922,40.7172 7.9962,40.7172 7.9962,48.7132 0.00119999999999987,48.7132 0.00119999999999987,40.7172 3.4922,40.7172 3.4922,43.5322 2.3662,43.7572 1.6902,44.7712 1.9152,46.0092 2.8162,46.6852 3.8302,46.7982 4.7302,46.2352 5.1802,45.1092 4.7302,44.0962 3.8302,43.5332 3.4922,43.5332z" Stretch="Fill" Fill="#FF7F7F7F" Width="7.995" Height="7.996" Canvas.Left="0.125" Canvas.Top="0.125" />
<Path Data="M3.4922,43.5322L3.4922,40.7172 7.9962,40.7172 7.9962,48.7132 0.00119999999999987,48.7132 0.00119999999999987,40.7172 3.4922,40.7172 3.4922,43.5322 2.3662,43.7572 1.6902,44.7712 1.9152,46.0092 2.8162,46.6852 3.8302,46.7982 4.7302,46.2352 5.1802,45.1092 4.7302,44.0962 3.8302,43.5332 3.4922,43.5332 3.4922,43.5322z" Stretch="Fill" Stroke="#FF7F7F7F" StrokeThickness="0.25" Width="8.245" Height="8.246">
<Path.Clip>
<PathGeometry Figures="M0,-0.5L56.195,-0.5 56.195,112 0,112z" Transform="1,0,0,1,0.123800002038479,-40.5922012329102" />
</Path.Clip>
</Path>
</Canvas>
<Canvas Name="Group_Transmitter" Tag="#00000000,#FF0080FF,Original,0,None" Width="56.192" Height="42.118" Canvas.Left="0.001" Canvas.Top="-0.5">
<Path Data="F1M3.492,41.617L0.339,40.378 0.001,39.14 0.001,38.239 0.001,37.113 0.001,2.991 1.127,-0.162000000000006 2.591,-0.5 3.492,-0.5 5.068,-0.5 52.59,-0.5 55.743,0.626000000000005 56.193,2.09 56.193,2.991 56.193,4.117 56.193,38.239 54.955,41.167 53.491,41.505 52.59,41.618 51.015,41.618 3.492,41.618z" Stretch="Fill" Width="56.192" Height="42.118" Canvas.Left="0" Canvas.Top="0">
<Path.Fill>
<LinearGradientBrush StartPoint="0.922,1.063" EndPoint="0.076,-0.066">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF494A4B" Offset="0.01" />
<GradientStop Color="#FFC7C8CA" Offset="0.51" />
<GradientStop Color="#FF494A4B" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path Data="M3.4922,41.6172L0.3392,40.3782 0.00119999999999987,39.1402 0.00119999999999987,38.2392 0.00119999999999987,37.1132 0.00119999999999987,2.9912 1.1272,-0.161800000000007 2.5912,-0.4998 3.4922,-0.4998 5.0682,-0.4998 52.5902,-0.4998 55.7432,0.626199999999997 56.1932,2.0902 56.1932,2.9912 56.1932,4.1172 56.1932,38.2392 54.9552,41.1672 53.4912,41.5052 52.5902,41.6182 51.0142,41.6182 3.4922,41.6182 3.4922,41.6172z" Stretch="Fill" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="56.442" Height="42.368" Canvas.Left="-0.125" Canvas.Top="-0.125" />
<Path Data="M0.001,2.99120000000001L56.194,2.99120000000001" Stretch="Fill" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="56.443" Height="0.25" Canvas.Left="-0.125" Canvas.Top="3.366" />
<Path Data="M56.1953,8.2842L0.00130000000000052,8.2842" Stretch="Fill" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="56.444" Height="0.25" Canvas.Left="-0.125" Canvas.Top="8.659" />
</Canvas>
<Canvas Name="Group_Meter" Tag="#00000000,#FF0080FF,Original,0,None" Width="52.929" Height="24.662" Canvas.Left="1.577" Canvas.Top="13.577">
<Path Data="M1.577,13.577L54.506,13.577 54.506,38.239 1.577,38.239z" Stretch="Fill" Fill="#FF666666" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="53.179" Height="24.912" Canvas.Left="-0.125" Canvas.Top="-0.125" />
</Canvas>
<Canvas Name="Group_Oxygen_Box" Tag="#00000000,#FF0080FF,Original,0,None" Width="42.343" Height="45.721" Canvas.Left="6.87" Canvas.Top="41.617">
<Path Data="M6.87,41.617L49.213,41.617 49.213,87.338 6.87,87.338z" Stretch="Fill" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="42.593" Height="45.971" Canvas.Left="-0.125" Canvas.Top="-0.125">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF76777A" Offset="0.01" />
<GradientStop Color="#FFE2E3E4" Offset="0.51" />
<GradientStop Color="#FF76777A" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
</Canvas>
<Canvas Name="Group_Plate" Tag="#00000000,#FF0080FF,Original,0,None" Width="24.662" Height="6.982" Canvas.Left="15.768" Canvas.Top="76.752">
<Path Data="M15.768,76.752L40.43,76.752 40.43,83.734 15.768,83.734z" Stretch="Fill" Fill="#FF999999" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="24.912" Height="7.232" Canvas.Left="-0.125" Canvas.Top="-0.125" />
</Canvas>
<Canvas Name="Group_Oxygen_Cylinder_Support" Tag="#00000000,#FF0080FF,Original,0,None" Width="28.041" Height="24.662" Canvas.Left="14.077" Canvas.Top="87.338">
<Path Data="M14.979,87.338L20.159,87.338 20.159,92.518 14.979,92.518z" Stretch="Fill" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="5.43" Height="5.43" Canvas.Left="0.777" Canvas.Top="-0.125">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF76777A" Offset="0.01" />
<GradientStop Color="#FFE2E3E4" Offset="0.51" />
<GradientStop Color="#FF76777A" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path Data="M35.925,87.338L41.217,87.338 41.217,92.518 35.925,92.518z" Stretch="Fill" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="5.542" Height="5.43" Canvas.Left="21.723" Canvas.Top="-0.125">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF76777A" Offset="0.01" />
<GradientStop Color="#FFE2E3E4" Offset="0.51" />
<GradientStop Color="#FF76777A" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path Data="M14.077,112L21.06,112 21.06,92.518 14.077,92.518z" Stretch="Fill" Width="6.983" Height="19.482" Canvas.Left="0" Canvas.Top="5.18">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF494A4B" Offset="0.01" />
<GradientStop Color="#FFC7C8CA" Offset="0.51" />
<GradientStop Color="#FF494A4B" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path Data="M14.077,92.518L21.059,92.518 21.059,112 14.077,112z" Stretch="Fill" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="7.232" Height="19.732" Canvas.Left="-0.125" Canvas.Top="5.055" />
<Path Data="M35.137,112L42.118,112 42.118,92.518 35.137,92.518z" Stretch="Fill" Width="6.981" Height="19.482" Canvas.Left="21.06" Canvas.Top="5.18">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FF494A4B" Offset="0.01" />
<GradientStop Color="#FFC7C8CA" Offset="0.51" />
<GradientStop Color="#FF494A4B" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path Data="M35.137,92.518L42.118,92.518 42.118,112 35.137,112z" Stretch="Fill" Stroke="#FF4C4C4C" StrokeThickness="0.25" Width="7.231" Height="19.732" Canvas.Left="20.935" Canvas.Top="5.055" />
</Canvas>
</Canvas>
</Viewbox>
</UserControl>

+ 28
- 0
BPASmartClient.CustomResource/UserControls/Control/MotorHousing.xaml.cs Voir le fichier

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace BPASmartClient.CustomResource.UserControls
{
/// <summary>
/// MotorHousing.xaml 的交互逻辑
/// </summary>
public partial class MotorHousing : UserControl
{
public MotorHousing()
{
InitializeComponent();
}
}
}

+ 12
- 0
BPASmartClient.CustomResource/UserControls/Control/MotorTwo.xaml Voir le fichier

@@ -0,0 +1,12 @@
<UserControl x:Class="BPASmartClient.CustomResource.UserControls.MotorTwo"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BPASmartClient.CustomResource.UserControls"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800">
<Grid>
</Grid>
</UserControl>

+ 95
- 0
BPASmartClient.CustomResource/UserControls/Control/MotorTwo.xaml.cs Voir le fichier

@@ -0,0 +1,95 @@
using BPASmartClient.CustomResource.UserControls.Enum;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace BPASmartClient.CustomResource.UserControls
{
/// <summary>
/// MotorTwo.xaml 的交互逻辑
/// </summary>
public partial class MotorTwo : UserControl
{
public MotorTwo()
{
InitializeComponent();
}

public static DependencyProperty MotorColorsProperty = DependencyProperty.Register("MotorColors", typeof(MotorColor), typeof(MotorTwo), new FrameworkPropertyMetadata(MotorColor.Gray, FrameworkPropertyMetadataOptions.AffectsRender));

public static readonly DependencyProperty ValueProperty = DependencyProperty.Register("Value", typeof(bool), typeof(MotorTwo), new PropertyMetadata(false));

public static readonly DependencyProperty PLCAddressValueProperty = DependencyProperty.Register("PLCAddressValue", typeof(string), typeof(MotorTwo), new FrameworkPropertyMetadata("0"));

private ImageSource imageSource;

[Category("HMI")]
public MotorColor MotorColors
{
get
{
return (MotorColor)GetValue(MotorColorsProperty);
}
set
{
SetValue(MotorColorsProperty, value);
}
}

/// <summary>
/// 重绘整个呈现的过程
/// </summary>
/// <param name="drawingContext"></param>
protected override void OnRender(DrawingContext drawingContext)
{
double actualWidth = base.ActualWidth;
double actualHeight = base.ActualHeight;
switch (MotorColors)
{
case MotorColor.Gray:
imageSource = new BitmapImage(new Uri("pack://application:,,,/BPASmartClient.CustomResource;component/Image/Motor/MotorGray.png"));
drawingContext.DrawImage(imageSource, new Rect(0.0, 0.0, actualWidth, actualHeight));
break;
case MotorColor.Green:
imageSource = new BitmapImage(new Uri("pack://application:,,,/BPASmartClient.CustomResource;component/Image/Motor/MotorGreen.png"));
drawingContext.DrawImage(imageSource, new Rect(0.0, 0.0, actualWidth, actualHeight));
break;
case MotorColor.Red:
imageSource = new BitmapImage(new Uri("pack://application:,,,/BPASmartClient.CustomResource;component/Image/Motor/MotorRed.png"));
drawingContext.DrawImage(imageSource, new Rect(0.0, 0.0, actualWidth, actualHeight));
break;
case MotorColor.Yellow:
imageSource = new BitmapImage(new Uri("pack://application:,,,/BPASmartClient.CustomResource;component/Image/Motor/MotorYellow.png"));
drawingContext.DrawImage(imageSource, new Rect(0.0, 0.0, actualWidth, actualHeight));
break;
default:
imageSource = new BitmapImage(new Uri("pack://application:,,,/BPASmartClient.CustomResource;component/Image/Motor/MotorGray.png"));
drawingContext.DrawImage(imageSource, new Rect(0.0, 0.0, actualWidth, actualHeight));
break;
}
}

protected override void OnInitialized(EventArgs e)
{
base.OnInitialized(e);
bool flag = LicenseManager.UsageMode == LicenseUsageMode.Designtime;
bool flag2 = Process.GetCurrentProcess().ProcessName == "devenv";
if (!(flag || flag2))
{
}
}
}
}

+ 184
- 0
BPASmartClient.CustomResource/UserControls/Control/Tanks.xaml Voir le fichier

@@ -0,0 +1,184 @@
<UserControl
x:Class="BPASmartClient.CustomResource.UserControls.Tanks"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:BPASmartClient.CustomResource.UserControls"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
d:DesignHeight="64"
d:DesignWidth="64"
mc:Ignorable="d">
<Viewbox
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:s="clr-namespace:System;assembly=mscorlib"
Stretch="Uniform"
ToolTip="Tank 36">
<Viewbox.Tag>
<s:Int64>119814915</s:Int64>
</Viewbox.Tag>
<Canvas
Name="Group_Tank_36"
Width="59.35"
Height="90"
HorizontalAlignment="Left"
VerticalAlignment="Top"
LayoutTransform="Identity"
Tag="#00000000,#FF0080FF,Original,0,None"
UseLayoutRounding="False">
<Canvas
Name="Group_FrontLegs"
Canvas.Left="2.366"
Canvas.Top="81.5"
Width="54.731"
Height="30.5"
Tag="#00000000,#FF0080FF,Original,0,None"
Visibility="Collapsed">
<Path
Canvas.Left="3.266"
Canvas.Top="1.334"
Width="13.064"
Height="13.063"
Data="F1M17.3438,82.834L18.6958,84.185 6.9838,95.897 5.6318,94.545z"
Fill="#FF666666"
Stretch="Fill" />
<Path
Canvas.Left="38.513"
Canvas.Top="1.559"
Width="13.063"
Height="13.063"
Data="F1M53.9424,94.7705L52.5904,96.1215 40.8794,84.4105 42.2314,83.0585z"
Fill="#FF666666"
Stretch="Fill" />
<Path
Canvas.Left="47.748"
Canvas.Top="0"
Width="5.631"
Height="29.148"
Data="M50.114,81.5L55.745,81.5 55.745,110.648 50.114,110.648z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="1.464"
Canvas.Top="0"
Width="5.631"
Height="29.148"
Data="M3.83,81.5L9.461,81.5 9.461,110.648 3.83,110.648z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.45" Color="#FFECECED" />
<GradientStop Offset="0.77" Color="#FFB1B3B6" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="26.445"
Width="8.446"
Height="4.055"
Data="M2.366,112L10.812,112 10.812,107.945 2.366,107.945z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF454446" />
<GradientStop Offset="0.45" Color="#FFA7A9AC" />
<GradientStop Offset="0.77" Color="#FF8A8C8E" />
<GradientStop Offset="1" Color="#FF454446" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="46.397"
Canvas.Top="26.445"
Width="8.334"
Height="4.055"
Data="M48.763,112L57.097,112 57.097,107.945 48.763,107.945z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF454446" />
<GradientStop Offset="0.45" Color="#FFA7A9AC" />
<GradientStop Offset="0.77" Color="#FF8A8C8E" />
<GradientStop Offset="1" Color="#FF454446" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
</Canvas>
<Canvas
Name="Group_TankBody"
Canvas.Left="0.001"
Canvas.Top="-0.5"
Width="59.348"
Height="88.852"
Tag="#00000000,#FF0080FF,Original,0,None">
<Path
Canvas.Left="0"
Canvas.Top="7.477"
Width="59.348"
Height="74.523"
Data="F1M0.001,10.536L0.001,77.293 31.044,81.5 59.349,77.293 59.349,10.536 29.675,6.977z"
Stretch="Fill">
<Path.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FF5B5C5F" />
<GradientStop Offset="0.5" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF5B5C5F" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0"
Canvas.Top="77.816"
Width="59.348"
Height="11.036"
Data="F1M0.001,77.316C0.001,77.316,1.517,88.352,29.674,88.352L29.674,88.352C57.554,88.352,59.349,77.316,59.349,77.316L59.349,77.316z"
Stretch="Fill">
<Path.Fill>
<RadialGradientBrush Center="0.5,0.5" GradientOrigin="0.5,0.5" RadiusX="0.36" RadiusY="2.514">
<RadialGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF6C6D70" />
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</Path.Fill>
</Path>
<Path
Canvas.Left="0.001"
Canvas.Top="0"
Width="59.347"
Height="11.036"
Data="F1M29.676,-0.5C1.796,-0.5,0.002,10.536,0.002,10.536L0.002,10.536 59.349,10.536C59.349,10.536,57.832,-0.5,29.676,-0.5z"
Stretch="Fill">
<Path.Fill>
<RadialGradientBrush Center="0.5,0.5" GradientOrigin="0.5,0.5" RadiusX="0.36" RadiusY="2.514">
<RadialGradientBrush.GradientStops>
<GradientStop Offset="0" Color="#FFECECED" />
<GradientStop Offset="1" Color="#FF6C6D70" />
</RadialGradientBrush.GradientStops>
</RadialGradientBrush>
</Path.Fill>
</Path>
</Canvas>
</Canvas>
</Viewbox>
</UserControl>

+ 28
- 0
BPASmartClient.CustomResource/UserControls/Control/Tanks.xaml.cs Voir le fichier

@@ -0,0 +1,28 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace BPASmartClient.CustomResource.UserControls
{
/// <summary>
/// Tanks.xaml 的交互逻辑
/// </summary>
public partial class Tanks : UserControl
{
public Tanks()
{
InitializeComponent();
}
}
}

+ 31
- 0
BPASmartClient.CustomResource/UserControls/Enum/MotorColor.cs Voir le fichier

@@ -0,0 +1,31 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPASmartClient.CustomResource.UserControls.Enum
{
/// <summary>
/// 获取或设置当前电机的颜色信息
/// </summary>
public enum MotorColor
{
/// <summary>
/// 灰色的电机
/// </summary>
Gray,
/// <summary>
/// 绿色的电机
/// </summary>
Green,
/// <summary>
/// 红色的电机
/// </summary>
Red,
/// <summary>
/// 黄色的电机
/// </summary>
Yellow
}
}

Chargement…
Annuler
Enregistrer