襄阳做网站公司电话,wordpress超链接颜色,设计类专业就业前景,网站一键制作效果 这是二次开发的第二个文章#xff0c;所以不重复说明环境配置相关的内容。如果不懂的可以看本专栏的上一个文章。
海康视觉算法平台VisionMaster 4.3.0 C# 二次开发01 加载方案并获取结果-CSDN博客
界面代码
Window x:ClassVmTestWpf.App.MainWindowx…效果 这是二次开发的第二个文章所以不重复说明环境配置相关的内容。如果不懂的可以看本专栏的上一个文章。
海康视觉算法平台VisionMaster 4.3.0 C# 二次开发01 加载方案并获取结果-CSDN博客
界面代码
Window x:ClassVmTestWpf.App.MainWindowxmlnshttp://schemas.microsoft.com/winfx/2006/xaml/presentationxmlns:xhttp://schemas.microsoft.com/winfx/2006/xamlxmlns:dhttp://schemas.microsoft.com/expression/blend/2008xmlns:mchttp://schemas.openxmlformats.org/markup-compatibility/2006xmlns:vmclr-namespace:VMControls.WPF.Release;assemblyVMControls.WPF.Release xmlns:localclr-namespace:VmTestWpf.Appmc:IgnorabledTitleMainWindow Height450 Width900GridGrid.RowDefinitionsRowDefinition/RowDefinition Height45//Grid.RowDefinitionsGrid.ColumnDefinitionsColumnDefinition/ColumnDefinition Width300//Grid.ColumnDefinitions!--显示方案执行结果--vm:VmRenderControl Grid.Row0 Grid.Column0 x:NamevrcRender /!--操作按钮--WrapPanel Grid.Row1 Grid.Column0 Button x:NamebtnLoad ClickbtnLoad_Click Content加载方案 Width100 Height35 HorizontalAlignmentLeft/Button Grid.Row1 Grid.Column1 NamebtnRun ClickbtnRun_Click Content运行 Width80 Height35 HorizontalAlignmentLeftMargin5//WrapPanel!--消息显示--ListBox Grid.Row1 Grid.Column1 x:NamelbRunResult /ListBox/Grid
/Window按钮代码
注意命名空间的引用
using VM.Core; using VM.PlatformSDKCS; using VMControls.Interface;
using IMVSCircleFindModuCs;
using IMVSCircleFindModuCs;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
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;
using VM.Core;
using VM.PlatformSDKCS;
using VMControls.Interface;namespace VmTestWpf.App
{/// summary/// MainWindow.xaml 的交互逻辑/// /summarypublic partial class MainWindow : Window{public MainWindow(){InitializeComponent();Loaded MainWindow_Loaded;}/// summary/// 流程对象/// /summaryVmProcedure _vmProcedure;private void MainWindow_Loaded(object sender, RoutedEventArgs e){}/// summary/// 加载方案/// /summary/// param namesender/param/// param namee/paramprivate void btnLoad_Click(object sender, RoutedEventArgs e){//加载方案VmSolution.Load(F:/二期VM视觉学习/标定相机找圆心20240614.sol, string.Empty);//使用流程名称获取流程对象_vmProcedure (VmProcedure)VmSolution.Instance[流程1];var msg 方案加载成功;lbRunResult.Items.Insert(0, msg);}/// summary/// 获取方案结果/// /summary/// param namesender/param/// param namee/paramprivate void btnGetResult_Click(object sender, RoutedEventArgs e){// 获取应用程序的执行目录//string appDirectory Assembly.GetExecutingAssembly().Location;//appDirectory appDirectory.Substring(0, appDirectory.LastIndexOf(\\) 1);//string imagePathRelative TestProCess/01/12345.sol;//加载方案VmSolution.Load(F:/二期VM视觉学习/标定相机找圆心20240614.sol, string.Empty);//使用流程名称获取流程对象VmProcedure vmProcedure (VmProcedure)VmSolution.Instance[流程1];//运行一次流程才能拿到结果vmProcedure.SyncRun();IMVSCircleFindModuTool circleFitResult (IMVSCircleFindModuTool)VmSolution.Instance[流程1.圆查找1];if (circleFitResult ! null){MessageBox.Show(获取到的圆心坐标:X: circleFitResult.ModuResult.OutputCircle.CenterPoint.X.ToString(0.0000) ,Y: circleFitResult.ModuResult.OutputCircle.CenterPoint.Y.ToString(0.0000));}else{MessageBox.Show(失败);}}/// summary/// 运行/// /summary/// param namesender/param/// param namee/paramprivate void btnRun_Click(object sender, RoutedEventArgs e){if (_vmProcedure ! null){//使用流程名称获取流程对象_vmProcedure (VmProcedure)VmSolution.Instance[流程1];//运行一次流程才能拿到结果//_vmProcedure.SyncRun();_vmProcedure.Run();//获取 圆查找1 结果IMVSCircleFindModuTool circleFitResult (IMVSCircleFindModuTool)VmSolution.Instance[流程1.圆查找1];if (circleFitResult ! null){vrcRender.ModuleSource circleFitResult;var msg 获取到的圆心坐标:X: circleFitResult.ModuResult.OutputCircle.CenterPoint.X.ToString(0.0000) ,Y: circleFitResult.ModuResult.OutputCircle.CenterPoint.Y.ToString(0.0000);lbRunResult.Items.Insert(0, msg);//MessageBox.Show(获取到的圆心坐标:X: circleFitResult.ModuResult.OutputCircle.CenterPoint.X.ToString(0.0000) ,Y: circleFitResult.ModuResult.OutputCircle.CenterPoint.Y.ToString(0.0000));}else{MessageBox.Show(失败);}}else{MessageBox.Show(流程加载失败);}}}
}