Commit b7cccb54 by 王永辉

feat

parents

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("VIZ.FGOUT.Common")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("China")]
[assembly: AssemblyProduct("VIZ.FGOUT.Common")]
[assembly: AssemblyCopyright("Copyright © China 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("c6c13293-b97b-4ddc-bb47-0a2e674dc751")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:VIZ.FGOUT.Common">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="VIZ.FGOUT.Common;component/Widgets/FootballFieldPanel/FootballFieldPanel.xaml"></ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{C6C13293-B97B-4DDC-BB47-0A2E674DC751}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>VIZ.FGOUT.Common</RootNamespace>
<AssemblyName>VIZ.FGOUT.Common</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
<PlatformTarget>x64</PlatformTarget>
<OutputPath>bin\x64\Debug\</OutputPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
<PlatformTarget>x64</PlatformTarget>
<OutputPath>bin\x64\Release\</OutputPath>
</PropertyGroup>
<ItemGroup>
<Reference Include="log4net, Version=2.0.14.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<HintPath>..\packages\log4net.2.0.14\lib\net45\log4net.dll</HintPath>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.Web" />
<Reference Include="System.Xaml" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Widgets\FootballFieldPanel\FootballFieldPanel.cs" />
<Compile Include="Widgets\FootballFieldPanel\FootballFieldPanelModel.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Page Include="Themes\Generic.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="Widgets\FootballFieldPanel\FootballFieldPanel.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\VIZ.Framework\VIZ.Framework.Core\VIZ.Framework.Core.csproj">
<Project>{75b39591-4bc3-4b09-bd7d-ec9f67efa96e}</Project>
<Name>VIZ.Framework.Core</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
\ No newline at end of file
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 VIZ.FGOUT.Common
{
/// <summary>
/// 足球边线面板
/// </summary>
public class FootballFieldPanel : Control
{
static FootballFieldPanel()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(FootballFieldPanel), new FrameworkPropertyMetadata(typeof(FootballFieldPanel)));
}
#region Orientation -- 布局方式
/// <summary>
/// 布局方式
/// </summary>
public Orientation Orientation
{
get { return (Orientation)GetValue(OrientationProperty); }
set { SetValue(OrientationProperty, value); }
}
/// <summary>
/// Using a DependencyProperty as the backing store for Orientation. This enables animation, styling, binding, etc...
/// </summary>
public static readonly DependencyProperty OrientationProperty =
DependencyProperty.Register("Orientation", typeof(Orientation), typeof(FootballFieldPanel), new PropertyMetadata(Orientation.Horizontal));
#endregion
#region FootballFieldWidth -- 球场宽度
/// <summary>
/// 球场宽度
/// </summary>
public GridLength FootballFieldWidth
{
get { return (GridLength)GetValue(FootballFieldWidthProperty); }
set { SetValue(FootballFieldWidthProperty, value); }
}
/// <summary>
/// Using a DependencyProperty as the backing store for FootballFieldWidth. This enables animation, styling, binding, etc...
/// </summary>
public static readonly DependencyProperty FootballFieldWidthProperty =
DependencyProperty.Register("FootballFieldWidth", typeof(GridLength), typeof(FootballFieldPanel), new PropertyMetadata(new GridLength(200d)));
#endregion
#region FootballFieldHeight -- 球场高度
/// <summary>
/// 球场高度
/// </summary>
public GridLength FootballFieldHeight
{
get { return (GridLength)GetValue(FootballFieldHeightProperty); }
set { SetValue(FootballFieldHeightProperty, value); }
}
/// <summary>
/// Using a DependencyProperty as the backing store for FootballFieldHeight. This enables animation, styling, binding, etc...
/// </summary>
public static readonly DependencyProperty FootballFieldHeightProperty =
DependencyProperty.Register("FootballFieldHeight", typeof(GridLength), typeof(FootballFieldPanel), new PropertyMetadata(new GridLength(120d)));
#endregion
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VIZ.Framework.Core;
namespace VIZ.FGOUT.Common
{
/// <summary>
/// 足球场边线面板模型
/// </summary>
public class FootballFieldPanelModel : ModelBase
{
#region IsTopSelected -- 顶部是否选中
private bool isTopSelected;
/// <summary>
/// 顶部是否选中
/// </summary>
public bool IsTopSelected
{
get { return isTopSelected; }
set { isTopSelected = value; this.RaisePropertyChanged(nameof(IsTopSelected)); }
}
#endregion
#region IsBottomSelected -- 底部是否选中
private bool isBottomSelected;
/// <summary>
/// 底部是否选中
/// </summary>
public bool IsBottomSelected
{
get { return isBottomSelected; }
set { isBottomSelected = value; this.RaisePropertyChanged(nameof(IsBottomSelected)); }
}
#endregion
#region IsLeftSelected -- 左侧是否选中
private bool isLeftSelected;
/// <summary>
/// 左侧是否选中
/// </summary>
public bool IsLeftSelected
{
get { return isLeftSelected; }
set { isLeftSelected = value; this.RaisePropertyChanged(nameof(IsLeftSelected)); }
}
#endregion
#region IsRightSelected -- 右侧是否选中
private bool isRightSelected;
/// <summary>
/// 右侧是否选中
/// </summary>
public bool IsRightSelected
{
get { return isRightSelected; }
set { isRightSelected = value; this.RaisePropertyChanged(nameof(IsRightSelected)); }
}
#endregion
/// <summary>
/// 是否有选中的项
/// </summary>
/// <returns>是否有选中的项</returns>
public bool HasSelected()
{
return this.IsTopSelected || this.IsBottomSelected || this.IsLeftSelected || this.IsRightSelected;
}
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace XamlGeneratedNamespace {
/// <summary>
/// GeneratedInternalTypeHelper
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
public sealed class GeneratedInternalTypeHelper : System.Windows.Markup.InternalTypeHelper {
/// <summary>
/// CreateInstance
/// </summary>
protected override object CreateInstance(System.Type type, System.Globalization.CultureInfo culture) {
return System.Activator.CreateInstance(type, ((System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic)
| (System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.CreateInstance)), null, null, culture);
}
/// <summary>
/// GetPropertyValue
/// </summary>
protected override object GetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, System.Globalization.CultureInfo culture) {
return propertyInfo.GetValue(target, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// SetPropertyValue
/// </summary>
protected override void SetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, object value, System.Globalization.CultureInfo culture) {
propertyInfo.SetValue(target, value, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// CreateDelegate
/// </summary>
protected override System.Delegate CreateDelegate(System.Type delegateType, object target, string handler) {
return ((System.Delegate)(target.GetType().InvokeMember("_CreateDelegate", (System.Reflection.BindingFlags.InvokeMethod
| (System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)), null, target, new object[] {
delegateType,
handler}, null)));
}
/// <summary>
/// AddEventHandler
/// </summary>
protected override void AddEventHandler(System.Reflection.EventInfo eventInfo, object target, System.Delegate handler) {
eventInfo.AddEventHandler(target, handler);
}
}
}
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VIZ.FGOUT.Common.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VIZ.FGOUT.Common.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\log4net.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VIZ.Framework.Core.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\SharpDX.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VizConnectC.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\NvAPIWrapper.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\AltaxoCore.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\Newtonsoft.Json.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\System.Memory.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\System.Numerics.Vectors.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\System.Buffers.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VIZ.Framework.Core.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\log4net.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\SharpDX.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\NvAPIWrapper.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\AltaxoCore.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\AltaxoCore.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\Newtonsoft.Json.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.csproj.AssemblyReference.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\GeneratedInternalTypeHelper.g.cs
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common_MarkupCompile.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common_MarkupCompile.lref
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\Themes\Generic.baml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\Widgets\FootballFieldPanel\FootballFieldPanel.baml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.g.resources
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.csproj.CoreCompileInputs.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.csproj.CopyComplete
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VIZ.FGOUT.Common.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VIZ.FGOUT.Common.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\log4net.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VIZ.Framework.Core.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\SharpDX.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VizConnectC.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\NvAPIWrapper.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\AltaxoCore.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\Newtonsoft.Json.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\System.Memory.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\System.Numerics.Vectors.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\System.Buffers.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\VIZ.Framework.Core.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\log4net.xml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\SharpDX.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\NvAPIWrapper.xml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\AltaxoCore.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\AltaxoCore.xml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\Debug\Newtonsoft.Json.xml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.csproj.AssemblyReference.cache
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\GeneratedInternalTypeHelper.g.cs
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common_MarkupCompile.cache
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common_MarkupCompile.lref
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\Themes\Generic.baml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\Widgets\FootballFieldPanel\FootballFieldPanel.baml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.g.resources
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.csproj.CoreCompileInputs.cache
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.csproj.CopyComplete
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\VIZ.FGOUT.Common.pdb
VIZ.FGOUT.Common
library
C#
.cs
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\
VIZ.FGOUT.Common
none
false
DEBUG;TRACE
2-725104376
3947974750
17-166953674
Themes\Generic.xaml;Widgets\FootballFieldPanel\FootballFieldPanel.xaml;
False
VIZ.FGOUT.Common
library
C#
.cs
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\
VIZ.FGOUT.Common
none
false
DEBUG;TRACE
21870986562
4-1008477605
17-1545242694
Themes\Generic.xaml;Widgets\FootballFieldPanel\FootballFieldPanel.xaml;
False
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\Debug\GeneratedInternalTypeHelper.g.cs
FD:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\Themes\Generic.xaml;;
FD:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\Widgets\FootballFieldPanel\FootballFieldPanel.xaml;;
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")]
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace XamlGeneratedNamespace {
/// <summary>
/// GeneratedInternalTypeHelper
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
public sealed class GeneratedInternalTypeHelper : System.Windows.Markup.InternalTypeHelper {
/// <summary>
/// CreateInstance
/// </summary>
protected override object CreateInstance(System.Type type, System.Globalization.CultureInfo culture) {
return System.Activator.CreateInstance(type, ((System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic)
| (System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.CreateInstance)), null, null, culture);
}
/// <summary>
/// GetPropertyValue
/// </summary>
protected override object GetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, System.Globalization.CultureInfo culture) {
return propertyInfo.GetValue(target, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// SetPropertyValue
/// </summary>
protected override void SetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, object value, System.Globalization.CultureInfo culture) {
propertyInfo.SetValue(target, value, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// CreateDelegate
/// </summary>
protected override System.Delegate CreateDelegate(System.Type delegateType, object target, string handler) {
return ((System.Delegate)(target.GetType().InvokeMember("_CreateDelegate", (System.Reflection.BindingFlags.InvokeMethod
| (System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)), null, target, new object[] {
delegateType,
handler}, null)));
}
/// <summary>
/// AddEventHandler
/// </summary>
protected override void AddEventHandler(System.Reflection.EventInfo eventInfo, object target, System.Delegate handler) {
eventInfo.AddEventHandler(target, handler);
}
}
}
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.FGOUT.Common.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.FGOUT.Common.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\log4net.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.Framework.Core.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\SharpDX.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VizConnectC.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\NvAPIWrapper.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\Newtonsoft.Json.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\System.Memory.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\System.Numerics.Vectors.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\System.Buffers.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.Framework.Core.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\log4net.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\SharpDX.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\NvAPIWrapper.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\Newtonsoft.Json.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.AssemblyReference.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\GeneratedInternalTypeHelper.g.cs
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common_MarkupCompile.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common_MarkupCompile.lref
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\Themes\Generic.baml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\Widgets\FootballFieldPanel\FootballFieldPanel.baml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.g.resources
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.CoreCompileInputs.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.CopyComplete
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.FGOUT.Common.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.FGOUT.Common.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\log4net.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.Framework.Core.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\SharpDX.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VizConnectC.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\NvAPIWrapper.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\Newtonsoft.Json.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\System.Memory.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\System.Numerics.Vectors.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\System.Buffers.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.Framework.Core.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\log4net.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\SharpDX.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\NvAPIWrapper.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.pdb
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\Newtonsoft.Json.xml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.AssemblyReference.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\GeneratedInternalTypeHelper.g.cs
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common_MarkupCompile.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common_MarkupCompile.lref
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\Themes\Generic.baml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\Widgets\FootballFieldPanel\FootballFieldPanel.baml
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.g.resources
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.CoreCompileInputs.cache
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.CopyComplete
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.dll
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.FGOUT.Common.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.FGOUT.Common.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\log4net.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.Framework.Core.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\SharpDX.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VizConnectC.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\NvAPIWrapper.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\Newtonsoft.Json.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\VIZ.Framework.Core.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\log4net.xml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\SharpDX.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\NvAPIWrapper.xml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.pdb
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\AltaxoCore.xml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\bin\x64\Debug\Newtonsoft.Json.xml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.AssemblyReference.cache
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\GeneratedInternalTypeHelper.g.cs
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common_MarkupCompile.cache
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common_MarkupCompile.lref
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\Themes\Generic.baml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\Widgets\FootballFieldPanel\FootballFieldPanel.baml
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.g.resources
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.CoreCompileInputs.cache
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.csproj.CopyComplete
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.dll
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\VIZ.FGOUT.Common.pdb
VIZ.FGOUT.Common
library
C#
.cs
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\
VIZ.FGOUT.Common
none
false
2-725104376
3947974750
17-1153682303
Themes\Generic.xaml;Widgets\FootballFieldPanel\FootballFieldPanel.xaml;
False
VIZ.FGOUT.Common
library
C#
.cs
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\
VIZ.FGOUT.Common
none
false
21870986562
4-1204812239
17974055870
Themes\Generic.xaml;Widgets\FootballFieldPanel\FootballFieldPanel.xaml;
True
D:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\GeneratedInternalTypeHelper.g.i.cs
FD:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\Themes\Generic.xaml;;
FD:\Projects\VIZ.FGOUT\VIZ.FGOUT.Common\Widgets\FootballFieldPanel\FootballFieldPanel.xaml;;
D:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\obj\x64\Debug\GeneratedInternalTypeHelper.g.cs
FD:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\Themes\Generic.xaml;;
FD:\wyh\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Common\Widgets\FootballFieldPanel\FootballFieldPanel.xaml;;
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="log4net" version="2.0.14" targetFramework="net48" />
</packages>
\ No newline at end of file
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("VIZ.FGOUT.Connection")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("China")]
[assembly: AssemblyProduct("VIZ.FGOUT.Connection")]
[assembly: AssemblyCopyright("Copyright © China 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("28617559-ca3f-493a-886e-7436d9c17549")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法数据包基类
/// </summary>
public class AlgorithmPackageBase
{
/// <summary>
/// 型号所属视图ID
/// 格式: mac地址+视图编号
/// </summary>
public string id { get; set; }
/// <summary>
/// 信号
/// <see cref="AlgorithmPackageSignal"/>
/// </summary>
public virtual string signal { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using log4net;
using VIZ.Framework.Connection;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法单条消息为json的解析器
/// </summary>
public class AlgorithmPackageProvider : ConnSingleJsonPackageProvider
{
/// <summary>
/// 日志
/// </summary>
private static ILog log = LogManager.GetLogger(typeof(AlgorithmPackageProvider));
public AlgorithmPackageProvider()
{
// AlgorithmRecvPackage__detect package = Newtonsoft.Json.JsonConvert.DeserializeObject<AlgorithmRecvPackage__detect>("{\"signal\": \"detect\", \"bboxes\": [[3392, 576, 3834, 1421], [755, 916, 1195, 1292], [3675, 710, 3839, 1103]]}");
// 算法初始化完成
this.providers.Add(new AlgorithmProvider__checked_ok());
// 算法裁切
this.providers.Add(new AlgorithmProvider__crop_roi());
// 算法检测
this.providers.Add(new AlgorithmProvider__detect());
}
/// <summary>
/// 算法数据包处理器
/// </summary>
private List<IAlgorithmPackageProvider> providers = new List<IAlgorithmPackageProvider>();
/// <summary>
/// 执行
/// </summary>
/// <param name="info">信息</param>
protected override void Execute(ConnSingleJsonInfo info)
{
Task.Run(() =>
{
try
{
AlgorithmPackageBase @base = Newtonsoft.Json.JsonConvert.DeserializeObject<AlgorithmPackageBase>(info.Json);
foreach (IAlgorithmPackageProvider provider in this.providers)
{
if (string.Equals(provider.Signal, @base.signal))
{
provider.Execute(info);
break;
}
}
}
catch (Exception ex)
{
log.Error(ex);
}
});
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法自动模式 命令
/// </summary>
public static class AlgorithmAutoModeCmd
{
/// <summary>
/// 检测
/// </summary>
/// <remarks>
/// 1. 单人机位 Single
/// </remarks>
public const string detect = "detect";
/// <summary>
/// 跟踪
/// </summary>
/// <remarks>
/// 1. 单人机位 Single
/// </remarks>
public const string tracking = "tracking";
/// <summary>
/// 设置参数
/// </summary>
/// <remarks>
/// 1. 目前只有单人机位生效
/// </remarks>
public const string set_params = "set_params";
/// <summary>
/// 边线检测
/// <see cref="VIZ.H2V.Storage.AlgorithmStrategyType"/>
/// </summary>
/// <remarks>
/// 1. 近景机位 Near
/// 2. 16米机位 Sixteen
/// 3. 战术机位 Tactics
/// </remarks>
public const string borderline_correction = "borderline_correction";
/// <summary>
/// 手动校准
/// <see cref="VIZ.H2V.Storage.AlgorithmStrategyType"/>
/// </summary>
/// <remarks>
/// 除单人机位外的其他机位支持
/// 1. 单人机位 Single
/// </remarks>
public const string manual_correction = "manual_correction";
/// <summary>
/// 错误标记
/// </summary>
public const string wrong_target = "wrong_target";
/// <summary>
/// 取消错误标记
/// </summary>
public const string reset = "reset";
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法数据包场景
/// </summary>
public static class AlgorithmPackageSence
{
/// <summary>
/// 单人
/// </summary>
public const string single_person = "single_person";
/// <summary>
/// 近景
/// </summary>
public const string close_up = "close_up";
/// <summary>
/// 16米
/// </summary>
public const string _16m = "16m";
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法数据包信号
/// </summary>
public static class AlgorithmPackageSignal
{
// ----------------------------------------------------------------
// 接收
/// <summary>
/// 算法初始化完成
/// </summary>
public const string checked_ok = "checked_ok";
/// <summary>
/// 检测
/// </summary>
public const string detect = "detect";
/// <summary>
/// 裁切
/// </summary>
public const string crop_roi = "crop_roi";
// ----------------------------------------------------------------
// 发送
/// <summary>
/// 居中模式
/// </summary>
public const string center_mode = "center_mode";
/// <summary>
/// 手动模式
/// </summary>
public const string manual_mode = "manual";
/// <summary>
/// 自动模式
/// </summary>
public const string auto_mode = "auto";
/// <summary>
/// 不裁切
/// </summary>
public const string no_mode = "no_mode";
/// <summary>
/// 停止算法
/// </summary>
public const string stop = "stop";
/// <summary>
/// 抠图命令
/// </summary>
public const string mat_image_cmd = "mat_image_cmd";
/// <summary>
/// 自动区域
/// </summary>
public const string auto_Place = "auto_Place";
/// <summary>
/// 抠图命令开始
/// </summary>
public const string matt_start = "matt_start";
/// <summary>
/// 抠图命令结束
/// </summary>
public const string matt_end = "matt_end";
/// <summary>
/// 返回跟踪
/// </summary>
public const string track = "track";
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VIZ.Framework.Core;
using VIZ.Framework.Connection;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法包解析器
/// </summary>
public interface IAlgorithmPackageProvider
{
/// <summary>
/// 信号
/// <see cref="AlgorithmPackageSignal"/>
/// </summary>
string Signal { get; }
/// <summary>
/// 执行
/// </summary>
/// <param name="info">信息</param>
void Execute(ConnSingleJsonInfo info);
}
}
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VIZ.Framework.Core;
using VIZ.Framework.Connection;
using VIZ.FGOUT.Domain;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法解释器 -- 算法初始化完成
/// </summary>
public class AlgorithmProvider__checked_ok : IAlgorithmPackageProvider
{
/// <summary>
/// 信号
/// <see cref="AlgorithmPackageSignal"/>
/// </summary>
public string Signal { get; } = AlgorithmPackageSignal.checked_ok;
/// <summary>
/// 执行
/// </summary>
/// <param name="info">信息</param>
public void Execute(ConnSingleJsonInfo info)
{
AlgorithmRecvPackage__checked_ok package = Newtonsoft.Json.JsonConvert.DeserializeObject<AlgorithmRecvPackage__checked_ok>(info.Json);
AlgorithmMessage__checked_ok message = new AlgorithmMessage__checked_ok();
message.AlgorithmID = package.id;
ApplicationDomainEx.MessageManager.Send(message);
}
}
}
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VIZ.Framework.Core;
using VIZ.Framework.Connection;
using VIZ.FGOUT.Domain;
using SharpDX.Mathematics.Interop;
using log4net;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法解释器 -- 裁切
/// </summary>
public class AlgorithmProvider__crop_roi : IAlgorithmPackageProvider
{
/// <summary>
/// 日志
/// </summary>
private static readonly ILog log = LogManager.GetLogger(typeof(AlgorithmProvider__crop_roi));
/// <summary>
/// 信号
/// <see cref="AlgorithmPackageSignal"/>
/// </summary>
public string Signal { get; } = AlgorithmPackageSignal.track;
/// <summary>
/// 执行
/// </summary>
/// <param name="info">信息</param>
public void Execute(ConnSingleJsonInfo info)
{
//AlgorithmRecvPackage__crop_roi package = Newtonsoft.Json.JsonConvert.DeserializeObject<AlgorithmRecvPackage__crop_roi>(info.Json);
//AlgorithmMessage__crop_roi message = new AlgorithmMessage__crop_roi();
//message.AlgorithmID = package.id;
//message.timecode = package.timecode;
//if (package.roi != null && package.roi.Count == 4)
//{
// message.roi = new RawRectangleF(package.roi[0], package.roi[1], package.roi[2], package.roi[3]);
//}
//message.center_x = package.center_x;
//message.center_y = package.center_y;
//if (package.target_bbox != null && package.target_bbox.Count == 4)
//{
// message.target_bbox = new RawRectangleF(package.target_bbox[0], package.target_bbox[1], package.target_bbox[2], package.target_bbox[3]);
//}
//message.borderline = package.borderline;
//message.field_border = package.field_border;
//message.correction_area = package.correction_area;
//ApplicationDomainEx.MessageManager.Send(message);
AlgorithmRecvPackage__detect package = Newtonsoft.Json.JsonConvert.DeserializeObject<AlgorithmRecvPackage__detect>(info.Json);
AlgorithmMessage__detect message = new AlgorithmMessage__detect();
message.AlgorithmID = package.id;
message.timecode = package.timecode;
// message.timecode = package.timecode;
if (package.signal == "track")
{
if (package.box != null)
{
RawRectangleF target = new RawRectangleF(package.box[0], package.box[1], package.box[2], package.box[3]);
message.bboxes.Add(target);
}
}
ApplicationDomainEx.MessageManager.Send(message);
}
}
}
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VIZ.Framework.Core;
using VIZ.Framework.Connection;
using VIZ.FGOUT.Domain;
using SharpDX.Mathematics.Interop;
using VIZ.Framework.Storage;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法解释器 -- 目标检测
/// </summary>
public class AlgorithmProvider__detect : IAlgorithmPackageProvider
{
/// <summary>
/// 信号
/// <see cref="AlgorithmPackageSignal"/>
/// </summary>
public string Signal { get; set; } = AlgorithmPackageSignal.detect;
/// <summary>
/// 执行
/// </summary>
/// <param name="info">信息</param>
public void Execute(ConnSingleJsonInfo info)
{
AlgorithmRecvPackage__detect package = Newtonsoft.Json.JsonConvert.DeserializeObject<AlgorithmRecvPackage__detect>(info.Json);
AlgorithmMessage__detect message = new AlgorithmMessage__detect();
message.AlgorithmID = package.id;
message.timecode = package.timecode;
// message.timecode = package.timecode;
if (package.signal == "detect")
{
if (package.bboxes != null && package.bboxes.Count > 0)
{
foreach (List<int> src in package.bboxes)
{
if (src == null || src.Count != 4)
continue;
RawRectangleF target = new RawRectangleF(src[0], src[1], src[2], src[3]);
message.bboxes.Add(target);
}
}
Signal = AlgorithmPackageSignal.detect;
}
else if(package.signal == "track")
{
if(package.box!=null)
{
RawRectangleF target = new RawRectangleF(package.box[0], package.box[1], package.box[2], package.box[3]);
message.bboxes.Add(target);
}
Signal = AlgorithmPackageSignal.track;
}
//if (package.roi != null && package.roi.Count == 4)
//{
// message.roi = new RawRectangleF(package.roi[0], package.roi[1], package.roi[2], package.roi[3]);
//}
// message.center_x = package.center_x;
// message.center_y = package.center_y;
ApplicationDomainEx.MessageManager.Send(message);
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VIZ.Framework.Domain;
using VIZ.Framework.Connection;
using log4net;
using Newtonsoft.Json;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法消息发送器
/// </summary>
public static class AlgorithmSender
{
/// <summary>
/// 停止算法
/// </summary>
/// <param name="manager">UDP终结点管理器</param>
/// <param name="id">算法ID</param>
public static void Stop(UdpEndpointManager manager, string id)
{
AlgorithmPackage__stop package = new AlgorithmPackage__stop();
package.id = id;
manager.SendJson(package);
}
/// <summary>
/// 居中模式
/// </summary>
/// <param name="manager">UDP终结点管理器</param>
/// <param name="id">算法ID</param>
/// <param name="roi">居中裁切坐标</param>
/// <param name="enable_sendto_crop">是否向裁切程序发送坐标</param>
/// <param name="smooth">平滑系数</param>
public static void CenterMode(UdpEndpointManager manager, string id, bool enable_sendto_crop, List<int> roi, double smooth)
{
AlgorithmPackage__center_mode package = new AlgorithmPackage__center_mode();
package.id = id;
package.roi = roi;
package.enable_sendto_crop = enable_sendto_crop ? 1 : 0;
package.smooth = smooth;
manager.SendJson(package);
}
/// <summary>
/// 手动模式
/// </summary>
/// <param name="manager">UDP终结点管理器</param>
/// <param name="id">算法ID</param>
/// <param name="roi">手动裁切坐标</param>
/// <param name="enable_sendto_crop">是否向裁切程序发送坐标</param>
/// <param name="smooth">平滑系数</param>
public static void ManualMode(UdpEndpointManager manager, string id, bool enable_sendto_crop, List<int> roi, double smooth)
{
AlgorithmPackage__manual_mode package = new AlgorithmPackage__manual_mode();
package.id = id;
package.roi = roi;
package.enable_sendto_crop = enable_sendto_crop ? 1 : 0;
package.smooth = smooth;
manager.SendJson(package);
}
/// <summary>
/// 不裁切
/// </summary>
/// <param name="manager">UDP终结点管理器</param>
/// <param name="id">算法ID</param>
/// <param name="enable_sendto_crop">是否向裁切程序发送坐标</param>
public static void NoMode(UdpEndpointManager manager, string id, bool enable_sendto_crop)
{
AlgorithmPackage__no_mode package = new AlgorithmPackage__no_mode();
package.id = id;
package.enable_sendto_crop = enable_sendto_crop ? 1 : 0;
manager.SendJson(package);
}
/// <summary>
/// 算法模式
/// </summary>
/// <param name="manager">UDP终结点管理器</param>
/// <param name="package">设置参数包</param>
/// <param name="id">算法ID</param>
public static void AutoMode(UdpEndpointManager manager, AlgorithmPackage__auto_mode package, AlgorithmSenderOption option)
{
package.id = option.id;
package.enable_sendto_crop = option.enable_sendto_crop ? 1 : 0;
package.target_bbox = option.target_bbox;
package.timecode = option.timecode;
manager.SendJson(package);
}
public static void AutoMode(UdpEndpointManager manager, AlgorithmPackage_Figout_model package, AlgorithmSenderOption option)
{
package.id = option.id;
// package = option.enable_sendto_crop ? 1 : 0;
//package.track_xy = option.target_bbox;
//package.signal = AlgorithmPackageSignal.track;
//手动模式
package.mode = AlgorithmPackageSignal.manual_mode;
package.timecode = option.timecode;
manager.SendJson(package);
}
public static void MatImageCmd(UdpEndpointManager manager, AlgorithmPackage__MatCmd package)
{
manager.SendJson(package);
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VIZ.FGOUT.Domain;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法发送设置
/// </summary>
public class AlgorithmSenderOption
{
/// <summary>
/// 算法实例ID
/// </summary>
public string id { get; set; }
/// <summary>
/// 是否发生裁切信息
/// </summary>
public bool enable_sendto_crop { get; set; }
/// <summary>
/// 手动校准(x,y,r)
/// </summary>
public List<int> correction_area { get; set; }
/// <summary>
/// 错误目标框(left,top,right,bottom)
/// </summary>
public List<int> target_bbox { get; set; }
/// <summary>
/// 时间码
/// </summary>
public long timecode { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法数据包 -- 算法初始化完成
/// </summary>
public class AlgorithmRecvPackage__checked_ok : AlgorithmPackageBase
{
/// <summary>
/// 信号
/// <see cref="AlgorithmPackageSignal"/>
/// </summary>
public override string signal { get; set; } = AlgorithmPackageSignal.checked_ok;
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VIZ.FGOUT.Domain;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法数据包 -- 裁切
/// </summary>
public class AlgorithmRecvPackage__crop_roi : AlgorithmPackageBase
{
/// <summary>
/// 信号
/// <see cref="AlgorithmPackageSignal"/>
/// </summary>
public override string signal { get; set; } = AlgorithmPackageSignal.crop_roi;
/// <summary>
/// 裁切坐标(左上角x,y,右下角x,y)
/// </summary>
public List<int> roi { get; set; }
/// <summary>
/// 中心值X
/// </summary>
public int? center_x { get; set; }
/// <summary>
/// 中心值Y
/// </summary>
public int? center_y { get; set; }
/// <summary>
/// 跟踪目标(左上角x,y,右下角x,y)
/// </summary>
public List<int> target_bbox { get; set; }
/// <summary>
/// 手动校准区域(x,y,半径r)
/// </summary>
public List<int> correction_area { get; set; }
/// <summary>
/// 边线信息
/// </summary>
public AlgorithmInfo_borderline borderline { get; set; }
/// <summary>
/// 边线信息(新的边线检测结果)
/// 例如: [[100,200],[300,400]] 表示 两个点 (100,200) 、(300,400)
/// </summary>
public List<List<int>> field_border { get; set; }
/// <summary>
/// 时间码
/// </summary>
public long timecode { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 算法数据包 -- 检测
/// </summary>
public class AlgorithmRecvPackage__detect : AlgorithmPackageBase
{
/// <summary>
/// 信号
/// <see cref="AlgorithmPackageSignal"/>
/// </summary>
public override string signal { get; set; } = AlgorithmPackageSignal.detect;
///// <summary>
///// 裁切坐标(左上角x,y,右下角x,y)
///// </summary>
//public List<int> roi { get; set; }
///// <summary>
///// 中心值X
///// </summary>
//public int? center_x { get; set; }
///// <summary>
///// 中心值Y
///// </summary>
//public int? center_y { get; set; }
///// <summary>
///// 时间码
///// </summary>
public long timecode { get; set; }
/// <summary>
/// 检测数据框(左上角x,y,右下角x,y)
/// </summary>
public List<List<int>> bboxes { get; set; }
/// <summary>
/// 跟踪框的定义
/// </summary>
public List<int> box { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace VIZ.FGOUT.Connection
{
/// <summary>
/// 时间切片工具包
/// </summary>
public class AlgorithmPackage_Figout_model: AlgorithmPackageBase
{
/// <summary>
/// 是自动还是手动
/// </summary>
public string mode { get; set; }
/// <summary>
/// signal 信号
/// </summary>
public override string signal { get; set; } = "auto_Place";
/// <summary>
/// startPlace
/// </summary>
public List<List<int>> startPlace { get; set; }
/// <summary>
/// endPalce
/// </summary>
public List<List<int>> endPlace { get; set; }
/// <summary>
/// InValidPalce
/// </summary>
public List<List<int>> validPlace { get; set; }
/// <summary>
/// 跟踪框的坐标
/// </summary>
public List<int> track_xy { get; set; }
/// <summary>
/// 暂时留的跟踪框
/// </summary>
public List<List<int>> bbox { get; set; }
/// <summary>
/// 跟踪框进行赋值
/// </summary>
public List<int> box { get; set; }
/// <summary>
/// 时间码
/// </summary>
public long timecode { get; set; }
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment