VS2022+OpenCasCade配置编译_opencascade编译
一、Open CASCADE Technology介绍及安装(windows10)
Open CASCADE Technology(简称OCCT)是一款开源的 3D CAD/CAM/CAE 软件开发平台,广泛应用于工业设计、工程仿真、制造等地方。开源OCC对象库是一个面向对象C++类库,用于快速开发设计领域的专业应用程序。OCC主要用于开发二维和三维几何建模应用程序,包括通用的或专业的计算机辅助设计CAD系统、制造或分析领域的应用程序、仿真应用程序或图形演示工具。OCC通过有机组织的C++库文件提供了六个模块。可视化模块作为OCC的核心部分,是可视化技术的具体体现。
1.1 核心功能
1.几何建模内核:提供曲面和实体建模的核心算法,支持 NURBS 曲线/曲面、布尔运算(交/并/差)、倒角、抽壳等高级建模功能
2. 数据交换:支持多种CAD格式,如STEP、IGES、STL、OBJ、VRML 等,可导入/导出行业标准文件,兼容主流CAD软件(如 SolidWorks、CATIA)
3. 可视化与渲染,集成OpenGL渲染引擎,支持3D模型的交互式显示,提供 选择、缩放、旋转 等交互操作功能
4. 网格处理:生成三角网格(用于 3D 打印、有限元分析),支持网格优化、修复、简化等操作
5. 参数化建模:支持历史记录(Feature Tree),允许修改设计参数并自动更新模型。
1.2 源码下载
1.2.1 OpenCasCade源码下载
1、下载网址
Download - Open CASCADE Technology
2、点击Previous releases----》点击Open CASCADE Technology 7.7.0 - 07.11.2022

3、 点击opencascade-7.7.0-vc14-64.exeopencascade-7.7.0.tgz进行下载,注册账户。

4、点击3rd party Components------>点击Windows(win32)

5、下载第三方插件,下载freeimage-3.17.0-vc14-64、freetype-2.5.5-vc14-64、tcltk-86-64三个依赖包。

6、解压open CasCade源码压缩包,在改目录中创建install、build和product三个文件夹。

7、 将第三方库文件解压放到product文件下。

1.3 cmake工具下载及安装
1、进入官网下载CMake安装包,官网网址:Download CMake,往下滑,随便选择一个版本,下载.msi文件。
2、下载完成后双击安装

3、进入安装界面,点击【Next】

4、同意协议,点击【Next】

5、将Cmake添加进用户变量,勾选创建桌面图标,点击【Next】。

6、选择路径,点击【Next】。

7、开始安装,点击【Install】

8、安装完毕,点击【Finish】

9、安装完毕,进行测试,打开cmd黑窗,输入命令查看版本,安装成功。
cmake /V


1.4 编译源码
1、打开cmake工具首先配置occ的源码位置和build目录,点击Configure。

2、 选择“Visual Studio 17 2022”,X64编译----》Finish。

3、弹出Error窗口,点击OK
4、将cmake配置项中配置3RDPARTY_DIR为放置依赖的product目录,以及INSTALL_DIR目录目录为install。


5、点一下Configure----》Generate,最后点OpenProject。

6、Visual Studio自动打开,右键解决方案,生成解决方案开始构建,无报错就表示成功了。


7、右键解决方案管理器中的INSTALL,点击生成,目的是将编译好的文件安装到install目录

8、测试,右键Modules---->Draw----->DRAWEXE,将DRAWEXE设为启动项目,然后CTRL+F5执行,在打开的命令行窗口中即可测试DRAWEXE命令。

9、在打开的终端中输入以下命令绘制测试图像 。
pload ALLbox b 1 1 1axofit

二、Visual Studio环境配置(Debug版本)
1、创建一个新项目OCCT_test,设置平台为Debug x64,打开属性管理器,新建属性表,命名为 OCCT7.7.0_Debug _x64.props

2、修改属性表名字,点击添加即可。

3、双击OCCT_Debug_7.7.0属性表。

4、VC++目录----》包含目录-----》小三角----》编辑----》添加四个目录-----》确定。


5、VC++目录----》库目录-----》小三角----》编辑----》添加四个目录-----》确定。


6、提取lib文件命配置链接器
1)通过这段python代码提取一下目录的lib文件
import osdef Extract_lib(path): # 检查路径是否存在且是目录 if not os.path.isdir(path): raise ValueError(f\"路径 \'{path}\' 无效或不是目录。\") # 使用追加模式 \'a\'(而不是写入模式 \'w\') with open(\"ooct_debug_lib.txt\", \'a\', encoding=\'utf-8\') as release: # \'a\' 表示追加 for file in os.listdir(path): if file.lower().endswith(\'.lib\'): # 不区分大小写检查扩展名 release.write(file + \'\\n\') # 写入文件名并换行if __name__ == \'__main__\': # 修改提取lib文件的目录 path = r\"D:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\build\\win64\\vc14\\libd\" Extract_lib(path) path = r\"D:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\freeimage-3.17.0-vc14-64\\lib\" Extract_lib(path) path = r\"D:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\freetype-2.5.5-vc14-64\\lib\" Extract_lib(path) path = r\"D:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\tcltk-86-64\\lib\" Extract_lib(path)
2)需要提取lib文件的四个库目录
D:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\build\\win64\\vc14\\libdD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\freeimage-3.17.0-vc14-64\\libD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\freetype-2.5.5-vc14-64\\libD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\tcltk-86-64\\lib
3)提取结果
FreeImage.libFreeImagePlus.libDRAWEXE.libExpToCasExe.libTKBin.libTKBinL.libTKBinTObj.libTKBinXCAF.libTKBO.libTKBool.libTKBRep.libTKCAF.libTKCDF.libTKDCAF.libTKDraw.libTKernel.libTKExpress.libTKFeat.libTKFillet.libTKG2d.libTKG3d.libTKGeomAlgo.libTKGeomBase.libTKHLR.libTKIGES.libTKLCAF.libTKMath.libTKMesh.libTKMeshVS.libTKOffset.libTKOpenGl.libTKOpenGlTest.libTKPrim.libTKQADraw.libTKRWMesh.libTKService.libTKShHealing.libTKStd.libTKStdL.libTKSTEP.libTKSTEP209.libTKSTEPAttr.libTKSTEPBase.libTKSTL.libTKTObj.libTKTObjDRAW.libTKTopAlgo.libTKTopTest.libTKV3d.libTKVCAF.libTKViewerTest.libTKVRML.libTKXCAF.libTKXDE.libTKXDECascade.libTKXDEDRAW.libTKXDEIGES.libTKXDESTEP.libTKXMesh.libTKXml.libTKXmlL.libTKXmlTObj.libTKXmlXCAF.libTKXSBase.libTKXSDRAW.libFreeImage.libFreeImagePlus.libfreetype.libitclstub40.libtcl86.libtclstub86.libtk86.libtkstub86.libDRAWEXE.libExpToCasExe.libTKBin.libTKBinL.libTKBinTObj.libTKBinXCAF.libTKBO.libTKBool.libTKBRep.libTKCAF.libTKCDF.libTKDCAF.libTKDraw.libTKernel.libTKExpress.libTKFeat.libTKFillet.libTKG2d.libTKG3d.libTKGeomAlgo.libTKGeomBase.libTKHLR.libTKIGES.libTKLCAF.libTKMath.libTKMesh.libTKMeshVS.libTKOffset.libTKOpenGl.libTKOpenGlTest.libTKPrim.libTKQADraw.libTKRWMesh.libTKService.libTKShHealing.libTKStd.libTKStdL.libTKSTEP.libTKSTEP209.libTKSTEPAttr.libTKSTEPBase.libTKSTL.libTKTObj.libTKTObjDRAW.libTKTopAlgo.libTKTopTest.libTKV3d.libTKVCAF.libTKViewerTest.libTKVRML.libTKXCAF.libTKXDE.libTKXDECascade.libTKXDEDRAW.libTKXDEIGES.libTKXDESTEP.libTKXMesh.libTKXml.libTKXmlL.libTKXmlTObj.libTKXmlXCAF.libTKXSBase.libTKXSDRAW.libFreeImage.libFreeImagePlus.libfreetype.libitclstub40.libtcl86.libtclstub86.libtk86.libtkstub86.lib
7、打开ooct_debug_lib.txt将txt中的lib文件名复制粘贴到链接器----》输入----》附加依赖项----》小三角----》编辑-----》粘贴lib文件名----》确定


8、设置系统变量:右键此电脑-----》属性-----》高级系统设置------》高级------》环境变量------》Path------》编辑-----》添加以下四条路径。
D:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\tcltk-86-64\\binD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\freetype-2.5.5-vc14-64\\binD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\freeimage-3.17.0-vc14-64\\binD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\build\\win64\\vc14\\bind



9、配置项目调试环境:解决方案-----》右键OCCT_QT项目-----》属性-----》调试-----》环境------》小三角------》编辑-----》,添加同样的路径。
D:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\tcltk-86-64\\binD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\freetype-2.5.5-vc14-64\\binD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\product\\freeimage-3.17.0-vc14-64\\binD:\\Software_Setup_Path\\OpenCASCADE-7.7.0-vc14-64\\build\\win64\\vc14\\bind





