遵循以下步骤在一个应用中添加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. bitcoind

    Bitcoin Core Daemon version v0.15.1.0-g7b57bc998f Usage: bitcoind [options] Start Bitcoin Core Daemo ...

  2. 01Java-方法

    一:动手动脑 1.编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数 package reserve; import java.util.Scanner; import java.ut ...

  3. UVA 10806 最小费用最大流

    终于可以写这道题的题解了,昨天下午纠结我一下下午,晚上才照着人家的题解敲出来,今天上午又干坐着想了两个小时,才弄明白这个问题. 题意很简单,给出一个无向图,要求从1 到 n最短路两次,但是两次不允许经 ...

  4. 吴裕雄--天生自然 JAVA开发学习:变量类型

    public class Variable{ static int allClicks=0; // 类变量 String str="hello world"; // 实例变量 pu ...

  5. PAT Advanced 1041 Be Unique (20) [Hash散列]

    题目 Being unique is so important to people on Mars that even their lottery is designed in a unique wa ...

  6. easyExcel入门

    1.easyExcel是处理excel的阿里开源的框架,类似poi.官网地址:https://github.com/alibaba/easyexcel 2.为什么用easyExcel? 1).占用内存 ...

  7. 利用tensorflow编写自己的机器学习模型主要步骤

    利用tensorlow编写自己的机器学习模型主要分为两个阶段: 第一阶段:建立模型或者建立网络结构 1.定义输入和输出所需要的占位符 2.定义权重 3.定义具体的模型接口 4.定义损失函数 5.定义优 ...

  8. JavaSE--【转】网络安全之证书、密钥、密钥库等名词解释

    转载 http://www.cnblogs.com/alanfang/p/5600449.html 那些证书相关的名词解释(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等 ...

  9. MySQL--INSERT INTO ... ON DUPLICATE KEY UPDATE ...

    转自:https://my.oschina.net/iceman/blog/53735 如果在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQ ...

  10. 关于vue内只要html元素的代码

    使用v-model v-text v-html vue会解析出入的html代码报错 则上传sku的description时需要html页面的代码 所以在description 所在的表单元素内加入 v ...