首页 > 编程语言 >编译Open Cascade(OCC)并使用C#进行开发

编译Open Cascade(OCC)并使用C#进行开发

时间:2024-07-03 17:23:50浏览次数:1  
标签:bin lib vc14 C# OCC Cascade 64 7.7 OpenCASCADE

说明:

下载和安装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 off

set "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.exe

pause

双击“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”内的三维模型文件

参考

标签:bin,lib,vc14,C#,OCC,Cascade,64,7.7,OpenCASCADE
From: https://www.cnblogs.com/vinciyan/p/18282026

相关文章

  • rocky linux 使用记录
    Rockylinux也更新到9了,准备试试可以用了不,还是继续用xfce4界面。官方有提供xfce4版的Rockylinux,直接下来装就好:各个版本下载地址。题外话,...摘要Rockylinux也更新到9了,准备试试可以用了不,还是继续用xfce4界面。官方有提供xfce4版的Rockylinux,直接下来装......
  • ETL数据集成丨使用ETLCloud实现MySQL与Greenplum数据同步
    我们在进行数据集成时,MySQL和Greenplum是比较常见的两个数据库,我们可以通过ETLCloud数据集成平台,可以快速实现MySQL数据库与数仓数据库(Greenplum)的数据同步。MySQL数据库:优点:轻量级与高性能:MySQL体积小、启动快,对资源消耗相对较低,适合处理高并发的OLTP(在线事务处理)场景。开源......
  • 「杂题乱刷2」CF1702F
    哎哎哎,题解区里怎么没我的做法啊/yun。于是就有了这篇题解。题目链接CF1702FEquateMultisets(luogu)CF1702FEquateMultisets(codeforces)解题思路首先我们发现,\(a\)序列中的数字的末尾的\(0\)是无意义的,因此我们可以将\(a\)序列中的每一个数字一直除以\(2\)直......
  • nginx https配置& proxy_protocol协议配置
    server{ listen8100proxy_protocol; set_real_ip_from0.0.0.0/0; real_ip_headerproxy_protocol; location/{ proxy_set_headerX-Real-IP$proxy_protocol_addr;proxy_set_headerX-Forwarded-For$proxy_protocol_addr; proxy_passh......
  • Winform SynchronizationContext多线程更新画面控件
    SynchronizationContext在通讯中充当传输者的角色,实现功能就是一个线程和另外一个线程的通讯。需要注意的是,不是每个线程都附加SynchronizationContext这个对象,只有UI线程是一直拥有的。故获取SynchronizationContext也只能在UI线程上进行SynchronizationContextcontex......
  • centos系统构建安装john导致的编译问题error: size of array element is not a multip
    blake2.h:112:5:error:sizeofarrayelementisnotamultipleofitsalignment112|blake2b_stateS[4][1];|^~~~~~~~~~~~~blake2.h:113:5:error:sizeofarrayelementisnotamultipleofitsalignment113|blake2b_stateR[1];......
  • Centos7下安装Redis
    1.安装依赖redis是由C语言开发,因此安装之前必须要确保服务器已经安装了gcc,可以通过如下命令查看机器是否安装:gcc-v如果没有安装则通过以下命令安装:yuminstall-ygcc2.下载redis安装包并解压#下载,我是在root下执行的下载,所以我的下载目录为:/root/redis-6.2.6,这里......
  • Python(netCDF4库)读取.nc文件(NetCDF气象数据文件)
    importnetCDF4asncimportnumpyasnpimportmatplotlib.pyplotaspltimportcartopy.crsasccrsdefplot_currents(file_path,variable_name,lon_name,lat_name):"""绘制洋流并保存为JPEG图片。参数:file_path(str):NetCDF文件路径。v......
  • ubuntu上安装oracle11g的错误解决
    环境:OS:16.04DB:11.2.0.4单机 发现在ubuntu上安装oracle,按照文档都已经安装了想要的包,但是检查还是无法通过,忽略后可以进行安装,但是需要修改很多地方1.安装的依赖包aptupdateapt-getinstallbinutilsapt-getinstalllibcap-devapt-getinstalllibstdc++5apt-get......
  • Oracle归档目录修改
    一.概要Oracle安装好后,把存档终点设置为USE_DB_RECOVERY_FILE_DEST,所以归档日志默认是保存在oracle系统的闪回恢复区(Flashrecoveryarea)的。默认的db_recovery_file_dest是2G,所以一般建议将存档终点修改为操作系统的适当目录查看归档目录SQL>archiveloglist;以上为归......