华睿MVP:C#脚本的应用一

一、根据匹配模板输出模板中心数组

  • in_center:模板匹配的信息数组
  • out_point:模板匹配的中心坐标点数组
  • 注意:这里面需要注意的是MVP里面的数组Array都是<key,value>的形式
程序块
cs 复制代码
PatternMatchInfoArray mypoint;	
Point2DfArray outpoint = new Point2DfArray();
int i = 0;
TryGetInputParam("in_center",out mypoint);
foreach(var item in mypoint.Values)
{
	outpoint.Add("point"+ i.ToString(),item.center);
	i++;
}
SetOutputParam("out_point",outpoint);

二、从已知坐标点里输出y值最大的点

  • in_point:坐标点数组
  • out_x:最高点的x值
  • out_y:最高点的y值
  • out_msg:是否有输入点
程序块
cs 复制代码
Point2DfArray mypoint;
Double x = 0;
Double y = 0;
bool msg = false;
TryGetInputParam("in_point",out mypoint);
if(mypoint.Count > 0)
{
	msg = true;
	foreach(var item in mypoint.Values)
	{
		if(item.y > y)
		{
			y = item.y;
			x = item.x;
		}
	}
}
SetOutputParam("out_x",x);
SetOutputParam("out_y",y);
SetOutputParam("out_msg",msg);

三、求两点的中点(可用内置程序块)

  • start_point:起始点
  • end_point:终点
  • center_point:中点
程序块
cs 复制代码
Point2Df my_start_point;
Point2Df my_end_point;
Point2Df my_out_point;
TryGetInputParam("start_point",out my_start_point);
TryGetInputParam("end_point",out my_end_point);
var start_x = my_start_point.x;
var start_y = my_start_point.y;
var end_x = my_end_point.x;
var end_y = my_end_point.y;
var mid_x = (my_start_point.x + my_end_point.x) / 2.0;
var mid_y = (my_start_point.y + my_end_point.y) / 2.0;
my_out_point = new Point2Df(mid_x,mid_y);
SetOutputParam("center_point",my_out_point);
相关推荐
CoderIsArt3 小时前
C#中UI 线程与 Dispatcher
开发语言·ui·c#
sakiko_9 小时前
Swift学习笔记42-SwiftUI的属性包装器(讲解+面试)
笔记·学习·ios·swiftui·swift
自小吃多9 小时前
器件移动、旋转、镜像、对齐、等间距操作笔记
笔记·嵌入式硬件
存在morning10 小时前
【Paimon 学习笔记 三】工作流程:Paimon 的批写、流写、批读与流读
笔记·学习
老当益壮梁奶奶12 小时前
Linux软件编程学习笔记(八):进程间通信详解(1)
linux·c语言·笔记·学习·算法
weixin_4660681113 小时前
《十分钟冥想》精读笔记(上):每天10分钟,给大脑做一次“系统减负”
笔记
凯尔萨厮14 小时前
Java学习笔记十(注解)
java·笔记·学习
一条破秋裤15 小时前
STM32 学习笔记:GPIO 输出实验——LED 闪烁、流水灯与蜂鸣器
笔记·stm32·学习
存在morning16 小时前
【Paimon 学习笔记 二】存储架构:快照、manifest、LSM 树、bucket
笔记·学习·架构
双眼鈹16 小时前
周报8.31
笔记·学习