声明

HWndCtrl _viewCtrl;
ROIController _roiCtrl;

初始化

_viewCtrl = new HWndCtrl(hWindowControl);
_roiCtrl = new ROIController();
_viewCtrl.useROIController(_roiCtrl);

显示图像

HImage hImage = new HImage(image);
_viewCtrl.addIconicVar(hImage); // 注意不可以是HObject类型
_viewCtrl.resetWindow();
_viewCtrl.repaint();

设置/更改查看图像的模式

// 正常模式(重置)
_viewCtrl.resetAll();
_viewCtrl.repaint();
_viewCtrl.setViewState(HWndCtrl.MODE_VIEW_NONE); // 移动模式
_viewCtrl.setViewState(HWndCtrl.MODE_VIEW_MOVE); // 放大模式
_viewCtrl.setViewState(HWndCtrl.MODE_VIEW_ZOOMWINDOW); // 缩放模式
_viewCtrl.setViewState(HWndCtrl.MODE_VIEW_ZOOM);

创建ROI

// 设定ROI类型,这里以正交长方形为例
ROIRectangle1 rect1 = new ROIRectangle1();
_roiCtrl.setROIShape(rect1); // 添加这段程序,在指定位置创建ROI;假如没有这段程序,则在鼠标点击的地方创建ROI
_roiCtrl.mouseDownAction(x, y);

懂得以上这些就能对这个项目进行基础应用啦,当然这个项目的功能远不止这些,甚至该项目太久没更新了,功能也还不够强大,远远不能满足日益复杂的需求,而这些都需要深入研究该项目的每个成员变量、方法和委托,然后再根据自己的需求完善该项目。

师傅领进门,修行靠个人...我当初都没人领,深知个人苦修不易,便在此抛转引玉,技术,交流才是王道。闭门造车?肤浅!

Halcon 和 C# 联合编程 - 如何使用开源项目 ViewROI的更多相关文章

  1. 有哪些适合学生参与的 C++,网络编程方面的开源项目?

    有哪些适合学生参与的 C++,网络编程方面的开源项目?   Tinyhttpd是一个超轻量型Http Server,使用C语言开发,全部代码只有502行(包括注释),附带一个简单的Client,可以通 ...

  2. C++网络编程方面的开源项目

    Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力. ...

  3. Halcon 和 C# 联合编程 - 图像变量的相互转换(HObject、HImage、Bitmap)

    /// <summary> /// 灰度图像 HObject -> Bitmap /// </summary> public static Bitmap HObject2 ...

  4. Halcon C# 联合编程问题(三)

    因为之前遇到的那个halcon处理的图片要转换成ImageSource的问题,迟迟没有找到好的解决方案, 于是决定直接在wpf中使用halcon提供的HWindowControlWPF,用于显示图片. ...

  5. 用Java开源项目JOONE实现人工智能编程

    http://www.robotsky.com/ZhiN/MoS/2011-08-25/13142461416649.html 用Java开源项目JOONE实现人工智能编程 https://sourc ...

  6. 转 Visual C++6.0 与matlab联合编程(2)----Visual C++6.0 环境下编译和调试MEX文件

    我的最初想法是利用matlab的mex命令调用C++程序生成动态链接库的,但是测试程序(文中另附)通过了,自己的实际应用程序却没有过.还是把方法贴在这儿,以便自己以后进行整理. http://shij ...

  7. 我发起了一个 .Net 平台上的 产生式编程 开源项目 GP.Net

    大家好 , 我发起了一个 .Net 平台上的 产生式编程 开源项目 GP.Net . 我们可以先看看一个网友的 代码生成器 项目 : <.Net 代码生成器 for PostgreSql> ...

  8. c++与matlab联合编程,调用Deploytool 生成exe文件和dll文件(转)

    转自:http://www.cnblogs.com/xlw1219/archive/2012/12/25/2832222.html 首先必须知道联合编程需要知道的一些命令解释: mcc 的作用是将 . ...

  9. 看github上有18万star的第一开源项目如何教你学前端编程的

    作为 Github | star 第一开源项目,已经超过18万 star:比之前最火的bootstrap的10万star还要多出8w,freeCodeCamp 越来越受关注,建站两年时间不到已经近40 ...

随机推荐

  1. Neural Task Programming: Learning to Generalize Across Hierarchical Tasks

    Neural Task Programming: Learning to Generalize Across Hierarchical Tasks

  2. power law 幂定律

    y=cx∧a 卖品销量排名与销量

  3. php总结8——mysql函数库、增删改

    8.1 mysql函数库 php的函数   .php中用来操作mysql函数库的函数 常用函数 mysql_connect("主机名称/ip","用户名",&q ...

  4. Java for LeetCode 081 Search in Rotated Sorted Array II

    Follow up for "Search in Rotated Sorted Array": What if duplicates are allowed? Would this ...

  5. 跟我一起学Git (十) Patches【转】

    本文转载自:http://cs-cjl.com/2014/05/05/learn_git_with_me_10 Git实现了以下三条用于交换patch的命令: git format-patch 用于创 ...

  6. SPOJ - GSS1 —— 线段树 (结点信息合并)

    题目链接:https://vjudge.net/problem/SPOJ-GSS1 GSS1 - Can you answer these queries I #tree You are given ...

  7. 【css学习整理】css基础(样式,语法,选择器)

    CSS是什么? cascading 层叠样式表 sheet 样式文件 style 外观个性化 CSS语法? 声明方法: 选择器(属性: 值; 属性: 值) 选择器: 通过名称制定对哪些标签进行样式设置 ...

  8. eclipse批量修改package、import中的包名

    问题:想把以前开发的包,用到新项目中,怎么操作呢? 解决方案: 把文件夹复制到新项目包中,同时需要更改很多package.import中的包名第一步:打开一个java文件,选中要替换的字段: 第二步: ...

  9. 大数据- 自定义Log4j日记

    1.新建一个java project,在src下新建一个lib文件夹和 rescources 文件夹,resources文件夹不能命名错误. 点击File——>project Structure ...

  10. python无法安装cv2的解决办法

    问题:在windows命令窗口输入pip install cv2后出现:Could not find a version that satisfies the requirement cv2... 解 ...