使用 HALCON 算子的 C++ 程序必须包含 HalconCpp.h 文件,该文件包含所有与用户相关的 HALCON 系统定义以及 C++ 接口所需的声明。为此,请在 C++ 文件顶部添加以下命令:
#include "HalconCpp.h"
要创建应用程序,请将函数库 halconcpp.lib 链接到您的程序中。
示例项目显示了必要的 Visual C++ 项目设置。基本上,您需要在编译器设置中指定正确的包含路径,并在链接器设置中指定正确的库路径和库:
Compiler: Include Directories: $(HALCONROOT)\include,$(HALCONROOT)\include\halconcpp Linker: Library Directories: $(HALCONROOT)\lib\$(HALCONARCH) Additional Dependencies: halconcpp.lib
HALCON XL 应用:
!
请注意,只有在需要 HALCON XL 功能时才使用。
如果要使用 HALCON XL,请链接 halconcppxl.lib 库。
下面的示例显示了一个名为 main.cpp 的非常基本的 C++ 程序,它读取图像并打印其宽度和高度:
#include "HalconCpp.h" #include <iostream> int main(int argc, char **argv) { HalconCpp::HObject hobj; HalconCpp::HTuple width, height; HalconCpp::ReadImage(&hobj, "printer_chip/printer_chip_01"); HalconCpp::GetImageSize(hobj, &width, &height); std::cout << "Image - width: " << width.I() << ", height: " << height.I() << '\n'; return 0; }
要在 Windows 下编译和链接程序,请运行:
cl main.cpp /I %HALCONROOT%\include /I %HALCONROOT%\include\halconcpp /link %HALCONROOT%\lib\%HALCONARCH%\halconcpp.lib
在 Windows 下使用 CMake 构建 HALCON 示例
您可以在 %HALCONEXAMPLES%\cpp 下面的目录中找到展示各种 HALCON 用例以及如何用 C++ 实现这些用例的示例。您可以使用提供的 CMakeLists.txt 文件用 CMake 构建这些示例。
要使用 CMake 生成示例程序,请执行以下操作:
mkdir build cd build cmake %HALCONEXAMPLES%\cpp\console cmake --build .
要进行配置,CMake 需要知道 HALCON 安装的位置、示例文件的位置以及要使用的 HALCON 架构:
有关如何使用 CMake 的一般信息,参见 CMake 文档。
HALCON XL 应用: 默认情况下,示例将使用普通版本的 HALCON 构建。如果要使用 HALCON XL 进行编译,请在 CMake 配置步骤中将 HALCON_XL 选项设置为 ON 或 1。为此,请使用以下语法:
cmake -DHALCON_XL=1 %HALCONEXAMPLES%\cpp\console
你还可以在其他子目录下找到相应的 CMakeLists.txt 文件(mfc/FGMultiThreading、mfc/Matching、mfc/MatchingExtWin、qt/Matching)。