zoukankan      html  css  js  c++  java
  • halcon中的面向对象,数据保存(续)

    之前写的面向对象及数据保存可能有些东西没有说的很清楚,导致有网友咨询为什么保存失败,

    先看看为什么失败.

       [Serializable]
        public class Test
        {
            private HTuple hv_ModelID = null;
            public HTuple Hv_ModelID
            {
                get
                {
                    return hv_ModelID;
                }
                set
                {
                    hv_ModelID = value;
                }
            }
        }

    上面是对于一个ncc模板测试类,声明的是hv_ModelID作为模板句柄,保存此句柄再次打开发现无法进行查找,句柄只是一个指针,指向之前创建模板的位置,记录这个位置是不行的,那么实际应该怎么做呢?

    创建模板当然首先在halcon开发环境中输入

    create_ncc_model (, 'auto', -0.39, 0.79, 'auto', 'use_polarity', ModelID)

    然后使用f1帮助跳出帮助界面

    使用.net,当然要看看.net咋弄了

    发下上面的就是模型的构造函数,声明对象就应该是HNCCModel,之前的测试代码就应该是

    [Serializable]
        public class Test
        {
            private HNCCModel nccModel = null;
            public HNCCModel  NccModel 
            {
                get
                {
                    return nccModel ;
                }
                set
                {
                    nccModel = value;
                }
            }
        }

    这样序列化此类就直接保存了模板,当然序列化之前还应该检查下是否真的已经初始化了,

    if (nccModel != null && nccModel.IsInitialized() == false)
     {
            nccModel = null;
     }

    还有小伙伴可能会说我英语不好咋办,f1我也看不懂啊,现在的翻译软件已经做的很好了,将f1打开后的路径地址复制到谷歌浏览器或者类似浏览器,并使用谷歌翻译,将离线帮助可以直接翻译成中文,格式什么都不会变化.

    专注机器视觉,halcon c# c++联合开发
  • 相关阅读:
    如何写一个邮件模板页面
    java集合List,Set,Map等集合
    参悟python元类(又称metaclass)系列实战(二)
    参悟python元类(又称metaclass)系列实战(一)
    对Python"一切皆对象"的小参悟
    Linux设置ntp客户端
    JMeter BeanShell向文件中写入内容
    JMeter处理接口签名(sign)
    JMeter处理动态的签名内容
    多线程总结,ThreadPoolExecutor创建线程池,
  • 原文地址:https://www.cnblogs.com/linyugang/p/9165528.html
Copyright © 2011-2022 走看看