热点推荐

查看: 1531|回复: 3
收起左侧

[资料] VC中Halcon 13中HObject和Hobject的关系?

[复制链接]
  • TA的每日心情
    振奋
    昨天 22:32
  • 签到天数: 536 天

    连续签到: 1 天

    [LV.9]以坛为家II

    347

    主题

    1289

    帖子

    6126

    积分

    Rank: 9

    积分
    6126

    突出贡献优秀版主荣誉管理论坛元老优质会员最佳新人

    发表于 2018-1-27 15:35:25 | 显示全部楼层 |阅读模式

    51Halcon诚邀您的加入,专注于机器视觉开发与应用技术,我们一直都在努力!

    您需要 登录 才可以下载或查看,没有帐号?会员注册

    x
          首先,MVTec公司为了兼容旧版本的使用规则,所以开发了一些API给我们去调用,下面安按照VC配置来讲解变化。
    头文件目录:
    1. Halcon13\include\
    2. Halcon13\include\halconcpp
    复制代码

    而支持旧版本的头文件目录是
    1. Halcon13\include\
    2. Halcon13\include\cpp
    复制代码


    其次就是引用的lib:
    1. halcon.lib;halconcpp.lib;
    复制代码

    而支持旧版本引用的lib为:
    1. halcon.lib;halconcpp10.lib
    复制代码


    最后就是要加入的头文件名称和命名空间声明了:
    1. #include "HalconCpp.h"
    2. using namespace HalconCpp;
    复制代码

    这部分将会导致后面声明类型的变化:
    1. HObject  m_Image;
    2. HTuple  m_AcqHandle;
    复制代码

    其中HObject中Object变成了大写,其他的控制类型没有变化,所有的函数也变成驼峰法命名的方法了,比如:
    1. OpenWindow(0,0,rect.Width(),rect.Height(),(Hlong)m_hWndView,"","",&m_hWndImage);
    复制代码

    旧版的函数是:
    1. open_window(0,0,rect.Width(),rect.Height(),(Hlong)m_hWndView,"","",&m_hWndImage);
    复制代码


    那么问题来了,如果我想用原来旧版本的函数和声明可以吗???
    答案是,肯定可以的,Halcon为了达到兼容,所以开放了宏定义去支持旧版本的函数和API声明:
    1. #define HCPP_LEGACY_API
    2. #define HCPP_LEGACY_NAMESPACE
    3. #include "HalconCpp.h"
    4. using namespace HalconCpp;
    复制代码

    把这两个加载在调用Halcon头文件之前就可以了。那么你就可以继续使用Hobject和类似open_window这样的旧函数了,是不是很方便!当然,随着版本的升高,大家也要习惯新版本带来的变化和改进呢!

    无效附件更新 权限提升操作 删帖申请 举报以及其他需要帮助请加入QQ群:214663141 广告位招商 有意者联系
    面向企业销售智能软件带相机和镜头,仅需3500,来电咨询 15019223858  18520862540
  • TA的每日心情
    害羞
    2018-5-16 07:46
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    0

    主题

    5

    帖子

    487

    积分

    Rank: 5Rank: 5Rank: 5

    积分
    487
    发表于 2018-1-31 10:20:09 | 显示全部楼层
    如果是12版本采集的图像,是Hobject,处理时用13版本,是HObject,两者之间该怎么转换呢?

    发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

  • TA的每日心情
    振奋
    昨天 22:32
  • 签到天数: 536 天

    连续签到: 1 天

    [LV.9]以坛为家II

    347

    主题

    1289

    帖子

    6126

    积分

    Rank: 9

    积分
    6126

    突出贡献优秀版主荣誉管理论坛元老优质会员最佳新人

     楼主| 发表于 2018-1-31 11:13:52 | 显示全部楼层
    高小超 发表于 2018-1-31 10:20
    如果是12版本采集的图像,是Hobject,处理时用13版本,是HObject,两者之间该怎么转换呢? ...

    尽量在一个程序中都用一种规格,像你这种情况下,可以声明上面的宏定义进行解决,把旧的Hobject内容重新拷贝给新的HObject。
    无效附件更新 权限提升操作 删帖申请 举报以及其他需要帮助请加入QQ群:214663141 广告位招商 有意者联系
  • TA的每日心情
    叹气
    昨天 22:14
  • 签到天数: 376 天

    连续签到: 1 天

    [LV.9]以坛为家II

    27

    主题

    186

    帖子

    1503

    积分

    Rank: 7Rank: 7Rank: 7

    积分
    1503

    活跃会员优秀版主优质会员

    发表于 2018-2-2 08:55:01 | 显示全部楼层
    谢谢楼主分享,学习一下

    发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

    您需要登录后才可以回帖 会员登录 | 会员注册

    本版积分规则

    经营性网站备案信息 经营性网站
    备案信息

    中国互联网举报中心 中国互联网
    举报中心

    中国文明网传播文明 中国文明网
    传播文明

    诚信网站

    深圳市市场监督管理局企业主体身份公示 工商网监
    电子标识