遵循以下步骤在一个应用中添加Halcon/.Net:

一. 定义工具箱

Halcon/.net 不仅提供了一个类库,而且提供了一个控件:HWindowControl,它包含一个显示图像处理结果的Halcon图像窗口。你可以通过以下的步骤把这个控件添加到VS工具箱中(注意不同的VS版本有不同版本的控件)

1. 右击工具箱(工具箱可以从视图,工具箱中打开),点击选择项,这时会显示所有的.NET Framework组件

2. 点击浏览,到%HALCONROOT%\bin目录下分别有几个文件夹对应不同的VS控件版本,dotnet10 (Visual Studio .NET2002 and 2003)或者%HALCONROOT%\bin\dotnet20 (Visual Studio 2005, Visual Studio 2008) 选择halcondotnet.dll.

3. 然后在HWindowControl就会出现在工具箱上。如下图。

二. 添加一个Halcon/.net的引用

在许多应用中我们至少会使用一个HWindowControl的实例使结果可视化(visualize results).通过在form上添加一个控件,就可以自动创建一个halcondotnet的引用。

如过你不想使用HWindowControl,还可以通过以下步骤添加一个引用:

1. 右击引用(referencen)->添加引用

2. 点击浏览还是上一个目录找到对应的.dll文件,点击确定就可以看到在应用列表中多了一个halcondotnet

HALCON XL 应用后面会提到:当开发一个HALCON XL应用,那么就必须选择halcondotnetxl.dll而不是halcondotnet.dll.如果你已经添加了一个HALCON版本,那么必须删除并且添加halcondotnetxl.dl。

三. 指定命名空间

为了能够直接使用HALCON/.NET的类而不要在前面加上命名空间,那么就必须在每个源文件的前面加上:using HalconDotNet;对应的VB.net和C++应用中分别是:Imports HalconDotNet;和using namespace HalconDotNet;

四. 添加并且自定义显示一个HWindowControl

在大多数的应用中我们不只想显示一个结果。当需要HWindowControl窗口时我们只需要双击工具箱中刚才添加的HWindowControl选项便会在我们的form中出现一个空白的HWindowControl窗口。如下图:

还是那句话如果已经添加了一个HALCON版本的控件,但是你想用HALCON XL,只需要删除刚才添加的halcondotnet.dll,并且添加halcondotnetxl.dll。

如果你想在在窗口里显示图像,那么你应当把窗口调整为和图像一样的尺寸,否则显示的会很慢应为这需要进行插值。我们可以通过属性窗口改变窗口和图像部分的大小,他们分别对应WindowSize和ImagePart属性。需要注意的是ImagePart中定义的是X,Y,Width,和Height的值,但是相应的SetPart算子改变的是图像四个角点的坐标。我们可以在任何时间改变我们应用中显示部分。

VisualStudio使用HALCIN_NET控件的更多相关文章

  1. WinForm 控件的布局(Dock属性)的注意点

    对于Dock属性,添加控件的顺序会影响它们停驻的方式.例如,如果你对窗体添加控件A,指示其停驻填充(Fill), 然后你对窗体添加控件B并指示其停驻顶部(Top),控件B将覆盖控件A的上部.原因就是控 ...

  2. wpf控件设计时支持(1)

    原文:wpf控件设计时支持(1) 这部分内容几乎是大家忽略的内容,我想还是来介绍一下. 本篇源码下载 1.属性元数据 在vs IDE中,在asp.net,winfrom等开发环境下,右侧的Proper ...

  3. 在VisualStudio 工具箱中隐藏用户控件

    当我们创建一个用户控件后,VisualStudio会自动将其添加到工具箱中,本来这是一个比较贴心的设计.但是,有的时候,我们并不想将用户控件放到工具箱中. 例如:在WPF中,为了避免一个页面的控件过多 ...

  4. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——ImageTabBar控件的使用方式

    一.          样式一 我们要实现上图中的效果,需要如下的操作: 从工具栏上的“Smobiler Components”拖动一个ImageTabBar控件到窗体界面上 修改ImageTabBa ...

  5. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——GifView控件的使用方式

    一.          样式一 我们要实现上图中的效果,需要如下的操作: 从工具栏上的“Smobiler Components”拖动一个GifView控件到窗体界面上 修改GifView的属性 Aut ...

  6. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——VoiceRecorder控件的使用方式.Net移动开发

    一.          样式一 我们要实现上图中的效果,需要如下的操作: 从工具栏上的“Smobiler Components”拖动一个VoiceRecorder控件和一个ImageButton控件到 ...

  7. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——BarcodeView控件的使用方式,.Net移动开发

    BarcodeView控件 一.          样式一 我们要实现上图中的效果,需要如下的操作: 从工具栏上的“Smobiler Components”拖动一个BarcodeView控件到窗体界面 ...

  8. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——AlbumView相册控件的使用方式

    AlbumView控件 一.          样式一 我们要实现上图中的效果,需要如下的操作: 从工具栏上的“Smobiler Components”拖动一个AlbumView控件到窗体界面上 修改 ...

  9. VisualStudio移动开发(C#、VB.NET)Smobiler开发平台——SliderView控件的使用方式

    SliderView控件 一.          样式一 我们要实现上图中的效果,需要如下的操作: 从工具栏上的“Smobiler Components”拖动一个SliderView控件到窗体界面上 ...

随机推荐

  1. Mac OS 终端利器 iTerm2配置大全

    之前一直使用 Mac OS 自带的终端,用起来虽然有些不太方便,但总体来说还是可以接受的,是有想换个终端的想法,然后今天偶然看到一个终端利器 iTerm2,发现真的很强大,也非常的好用,按照网上配置了 ...

  2. github访问过慢解决

    为了更加愉快地使用全球最大同性交友网站上的优质资源,我们来做一些简单的本机上的调整. 通过查看下载链接,能够发现最终被指向到Amazon的服务器(http://github-cloud.s3.amaz ...

  3. Thread--停止线程

    参考:http://blog.sina.com.cn/s/blog_6ca570ed01016mti.html Thread.interrupt()方法不会中断一个正在运行的线程.它的作用是,在线程受 ...

  4. MVC——再探MVC——增删查改

    MVC 是我大学学的比较弱的,甚至不懂原理.(那时候都在准备蓝桥杯 软件杯比赛.) 在重新学 肯定要学MVC 现在知道了为什么叫MVC了  MVC是怎么工作的 MVC 是一个设计模式 控制器(Cont ...

  5. fatal error C1189: #error: "You must define TF_LIB_GTL_ALIGNED_CHAR_ARRAY for your compiler."

    使用VS开发tensorflow的C++程序的时候,就可能会遇上这个问题,解决方法是在引入tensoflow的头文件之前添加: #define COMPILER_MSVC #define NOMINM ...

  6. Springboot注解--@Controller和@RestController的区别

    1.使用@Controller 注解,在对应的方法上,视图解析器可以解析return 的jsp,html页面,并且跳转到相应页面:若返回json等内容到页面,则需要加@ResponseBody注解 2 ...

  7. PHP时间戳常用转换

    //设置中国时区 date_default_timezone_set('PRC'); //今天的时间搓 $today_start = strtotime(date('Y-m-d',time()).' ...

  8. IPO套路

    日前,温州市冠盛汽车零部件集团股份有限公司(以下简称:冠盛集团)在证监会官网更新了招股说明书,距离上会仅一步之遥.值得注意的是,这已经是公司第四次披露招股说明书,2018年6月,公司曾在IPO审核最严 ...

  9. 201312-1 出现次数最多的数Java

    import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Scanner; ...

  10. Chrome使用频率最高的快捷键

    标签 ctrl+T 打开新标签  ——— ctrl+W 关闭标签 ctrl+shift+T 打开上衣个被关闭的标签 ctrl+tab 标签向右切换 —— ctrl+shift+tab 标签向左切换 c ...