ITK之HelloWorld

354 阅读2分钟

1 CMakeLists.txt

使用 ITK 创建一个新的工程,最简单的方法就是在你的电脑中建立一个新的文件夹,在文件夹中建立两个文件:一个是 CMakeLists.txt, CMake 使用该文件来创建一个 Makefile(若你使用 UNIX)或一个 Visual Studio 工作区(若你使用 MS-Windows);另一个文件是真正的调用 ITK 中的类的 C++程序文件。接下来将对这些文件做详细介绍。

一旦建立了这两个文件,你就可以运行 CMake 来设定你的工程。在 UNIX 系统中,你可以命名文件名为“ ccmake.”存储在你刚建的文件夹中。注意命令行中的“ .”表示CMakeLists.txt 文件已经存在于当前目录中。这个 curses 界面需要你提供 ITK 创建目录的地址,这个地址和你在设定 ITK 中的 ITK_BINARY_DIR 的目录是一样的。在 Windows 系统下,运行 CMakeSetup 并提供源代码目录和目标目录给你的新工程。 CMake 需要你提供一个创建 ITK 的目标目录路径。 ITK 目标目录中包括有 ITK 安装过程中设定创建ITKConfig.cmake 文件。 CMake 将根据这个文件恢复你创建的新工程的所有信息。

2 HelloWorld

这里是你在新工程中要写的两个文件目录。这两个文件可以在Insight/Examples/Installation目录中找到。 CMakeLists.txt 文件包括以下内容:

PROJECT(HelloWorld)  
FIND_PACKAGE(ITK)  
IF(ITK_FOUND)  
INCLUDE(${ITK_USE_FILE})  
ELSE(ITK_FOUND)  
MESSAGE(FATAL_ERROR  
"ITK not found. Please set ITK_DIR.")  
ENDIF(ITK_FOUND)  
ADD_EXECUTABLE(HelloWorld HelloWorld.cxx )  
TARGET_LINK_LIBRARIES(HelloWorld ITKCommon)

第一行定义了在 Visual Studio 中出现的工程名字(这在 UNIX 系统下毫无影响)。第二行载入一个带有寻找 ITK 的预定义策略的 CMake 文件。如果寻找 ITK 的策略失败, CMake将会要求你提供 ITK 的安装位置。你可以在 ITK_BINARY_DIR 变量中填入正确的位置信息。

命令行 INCLUDE(${ITK_USE_FILE})载入 UseITK.cmake 文件来设定所有的 ITK 配置信息。命令行 ADD_EXECUTABLE 定义了一个此工程产生运行结果文件的名字。 ADD_EXECUTABLE 中 的 保 留 变 量 是 源 代 码 编 译 和 链 接 的 名 字 。 最 后 一 行 命 令TARGET_LINK_LIBRARIES 指出哪些 ITK 类库将链接到这个工程中来。

这一节的源代码可以在Examples/Installation/HelloWorld.cxx中找到。

接下来的代码是一段小的应用编程执行代码,用来测试包括头文件和类库的链接:

#include "itkImage.h"  
#include <iostream>  
int main( )  
{  
    typedef itk::Image< unsigned short, 3 > ImageType;  
    ImageType::Pointer image = ImageType::New( );  
    std::cout << "ITK Hello World !" << std::endl;  
    return 0;  
}

这段程序代码是将一个三维图像中的像素用无符号短字符类型数字代替, 然后构造这个图像并指向一个 itk::SmartPointer。后面将详细介绍智能指针,现在你可以把它看做是对一个对象的实例的操作(详见后面小节)。

类 itk::Image 将在后面节中详细介绍。到此你已经成功地安装、运行了 ITK,并创建了你的第一个简单程序。如果你有任何问题都可以使用用户 mailing lis(详见后面小节)提出问题来寻求帮助。