给VS的cmake项目添加Geometric Tools库中的代码的注意事项

Geometric Tools库中有许多几何处理的函数,当自己的VS中的cmake项目要用到Geometric Tools库中的函数时,可以将Geometric Tools库相应中的函数代码拷贝到自己的代码中,但拷贝以后会出现一些参数未定义的错误,为此,需要完成以下注意事项才能让程序正常运行:
1、在CMakeLists.txt中添加Geometric Tools的安装手册(Installation Manual)中要求的预处理符号(通过add_definitions(-D)添加):

add_definitions(-DGTE_USE_MSWINDOWS)
add_definitions(-DGTE_USE_ROW_MAJOR)
add_definitions(-DGTE_USE_MAT_VEC)
add_definitions(-DGTE_USE_OPENGL)

2、在CMakeLists.txt中添加代码所依赖的库(由于本人的Geometric Tools是直接安装在VS的安装路径内,所以添加库时没有在CMakeLists.txt中给出库的路径),有一点要注意的是,除了要添加代码所依赖的GTApplicationsGL45.v16.lib、GTGraphics.v16.lib、GTGraphicsGL45.v16.lib、GTMathematicsGPU.v16.lib这几个Geometric Tools本身的库外,还需要打开自己所拷贝的代码在Geometric Tools中的源码所在的工程,添加这个工程所依赖的其他的库,比如下方的opengl32.lib和Windowscodecs.lib:

target_link_libraries(${PROJECT_NAME} PUBLIC GTApplicationsGL45.v16)
target_link_libraries(${PROJECT_NAME} PUBLIC GTGraphics.v16)
target_link_libraries(${PROJECT_NAME} PUBLIC GTGraphicsGL45.v16)
target_link_libraries(${PROJECT_NAME} PUBLIC GTMathematicsGPU.v16)
target_link_libraries(${PROJECT_NAME} PUBLIC opengl32)
target_link_libraries(${PROJECT_NAME} PUBLIC Windowscodecs)

3、最容易忽视的一点就是,记得要在自己的代码中添加你所拷贝的代码的所依赖的头文件,有可能你所拷贝的代码在Geometric Tools中的所在的文件的头文件被你添加到了自己的代码中,但还是会出现参数未定义的问题,这可能是Geometric Tools中各个文件相互include,从而隐含地include了其他的头文件,所以你需要在你所拷贝的代码在Geometric Tools的源码的工程中查找未定义的参数所在的头文件,然后再include到自己的代码中(比如下方的VertexColorEffect.h和VertexFormat.h就是我自己查找并添加的):

#include <Mathematics/BSplineCurveFit.h>
#include <Mathematics/Vector3.h>
#include <Mathematics/Vector4.h>
#include <Graphics/VertexColorEffect.h>
#include <Graphics/VertexFormat.h>
#include <Graphics/VertexBuffer.h>
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值