說明:
- VS版本:Visual Studio Community 2022
- 系統:Windows 11 專業版23H2
- Open CASCADE:v7.7.0(鏈接:https://pan.baidu.com/s/1-o1s4z3cjpYf5XkwhSDspQ?pwd=p9i5提取碼:p9i5)
下載和安裝OCC
Download - Open CASCADE Technology
?
?
?
安裝MSVC
?
打開文件夾“C:\OpenCASCADE-7.7.0-vc14-64\opencascade-7.7.0\adm\msvc”
?
單個組件
?
設置VS環境變量
?
setx DEvEnvDir "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE"
編譯OCC
CMD運行
cd C:\OpenCASCADE-7.7.0-vc14-64\opencascade-7.7.0
msvc.bat vc142
?
?
改【Debug】為【Release】,【x64】保持不變,【解決方案】右鍵【重新生成】
生成的dll的文件夾位置為“C:\OpenCASCADE-7.7.0-vc14-64\opencascade-7.7.0\win64\vc14\bin”
等待編譯完成
?
驗證編譯結果
在文件夾“C:\OpenCASCADE-7.7.0-vc14-64\opencascade-7.7.0\win64\vc14\bin”創建DRAWEXE_RUN.bat
@echo offset "ffmpeg=C:\OpenCASCADE-7.7.0-vc14-64\ffmpeg-3.3.4-64\bin"
set "freeimage=C:\OpenCASCADE-7.7.0-vc14-64\freeimage-3.17.0-vc14-64\bin"
set "freetype=C:\OpenCASCADE-7.7.0-vc14-64\freetype-2.5.5-vc14-64\bin"
set "openvr=C:\OpenCASCADE-7.7.0-vc14-64\openvr-1.14.15-64\bin\win64"
set "qt=C:\OpenCASCADE-7.7.0-vc14-64\qt5.11.2-vc14-64\bin"
set "tbb=C:\OpenCASCADE-7.7.0-vc14-64\tbb-2021.5-vc14-64\bin"
set "tcltk=C:\OpenCASCADE-7.7.0-vc14-64\tcltk-86-64\bin"
set "vtk=C:\OpenCASCADE-7.7.0-vc14-64\vtk-6.1.0-vc14-64\bin"set path=%path%;%ffmpeg%;%freeimage%;%freetype%;%openvr%;%qt%;%tbb%;%tcltk%;%vtk%call DRAWEXE.exepause
雙擊“DRAWEXE_RUN.bat”
如果報錯提示
---------------------------
DRAWEXE.exe - 系統錯誤
---------------------------
由于找不到 tbb12.dll,無法繼續執行代碼。重新安裝程序可能會解決此問題。
---------------------------
確定
---------------------------
---------------------------
DRAWEXE.exe - 系統錯誤
---------------------------
由于找不到 tbbmalloc.dll,無法繼續執行代碼。重新安裝程序可能會解決此問題。
---------------------------
確定
---------------------------
打開文件夾“C:\OpenCASCADE-7.7.0-vc14-64\tbb_2021.5-vc14-64\bin”復制提示缺失的“tbb12.dll”和“tbbmalloc.dll”到“DRAWEXE_RUN.bat”所在文件夾
?
【Samples】【Modeling】【ANC101…】【Run sample】
?
?
C#使用OCC進行開發
下載源代碼:https://github.com/Open-Cascade-SAS/OCCT-samples-csharp.git
打開“CSharp.sln”,打開【OCCTProxy屬性頁】,【VC++目錄】
?
【外部包含目錄】設置為
C:\OpenCASCADE-7.7.0-vc14-64\opencascade-7.7.0\inc
【庫目錄】設置為
C:\OpenCASCADE-7.7.0-vc14-64\opencascade-7.7.0\win64\vc14\lib
?
【鏈接器】【輸入】【附加依賴項】設置為
TKBin.lib
TKBinL.lib
TKBinTObj.lib
TKBinXCAF.lib
TKBO.lib
TKBool.lib
TKBRep.lib
TKCAF.lib
TKCDF.lib
TKD3DHost.lib
TKD3DHostTest.lib
TKDCAF.lib
TKDFBrowser.lib
TKDraw.lib
TKernel.lib
TKExpress.lib
TKFeat.lib
TKFillet.lib
TKG2d.lib
TKG3d.lib
TKGeomAlgo.lib
TKGeomBase.lib
TKHLR.lib
TKIGES.lib
TKIVtk.lib
TKIVtkDraw.lib
TKLCAF.lib
TKMath.lib
TKMesh.lib
TKMeshVS.lib
TKMessageModel.lib
TKMessageView.lib
TKOffset.lib
TKOpenGl.lib
TKOpenGles.lib
TKOpenGlesTest.lib
TKOpenGlTest.lib
TKPrim.lib
TKQADraw.lib
TKRWMesh.lib
TKService.lib
TKShapeView.lib
TKShHealing.lib
TKStd.lib
TKStdL.lib
TKSTEP.lib
TKSTEP209.lib
TKSTEPAttr.lib
TKSTEPBase.lib
TKSTL.lib
TKTInspector.lib
TKTInspectorAPI.lib
TKTObj.lib
TKTObjDRAW.lib
TKToolsDraw.lib
TKTopAlgo.lib
TKTopTest.lib
TKTreeModel.lib
TKV3d.lib
TKVCAF.lib
TKView.lib
TKViewerTest.lib
TKVInspector.lib
TKVRML.lib
TKXCAF.lib
TKXDE.lib
TKXDECascade.lib
TKXDEDRAW.lib
TKXDEIGES.lib
TKXDESTEP.lib
TKXMesh.lib
TKXml.lib
TKXmlL.lib
TKXmlTObj.lib
TKXmlXCAF.lib
TKXSBase.lib
TKXSDRAW.lib
【Everything】搜索欄輸入
*.dll C:\OpenCASCADE-7.7.0-vc14-64\
?
復制所有的dll到文件夾“OCCT-samples-csharp\win64\bind”中
重新生成項目“OCCTProxy”,啟動項目,【File】【New】之后【Import】,可以導入文件夾“C:\OpenCASCADE-7.7.0-vc14-64\opencascade-7.7.0\data”內的三維模型文件
?
參考
- OCC_MSVC編譯
- 手把手教你VS2019編譯、配置Opencascade_opencascade配置vs-CSDN博客
- Open CASCADE 技術:Direct3D CSharp 示例 - OpenCascade 文檔 — Open CASCADE Technology: Direct3D CSharp sample - OpenCascade Documentation
- 在 C# 示例上構建 OCCTProxy - 論壇 Open Cascade Technology — Building OCCTProxy on C# Samples - Forum Open Cascade Technology