- 博客(375)
- 资源 (4)
- 收藏
- 关注
原创 CMake笔记:错误-the keyword signature for target_link_libraries has already been used with the target
编译occt出现以下错误。
2025-06-04 21:25:38
417
原创 OCC笔记:TopoDS_Edge上是否一定存在Geom_Curve
TopoDS_Edge 是拓扑实体,Geom_Curve 是几何描述。拓扑结构可独立存在(如连接性定义),但完整CAD模型需二者协同:拓扑为骨架,几何为血肉。
2025-06-03 23:05:46
406
原创 windows下,release的dll给debug模式用,可以吗,比如zlib,freetype库
禁止混用:Debug/Release的DLL本质是两套二进制接口,混用会破坏内存管理和调试逻辑。为Debug和Release模式分别编译库的对应版本。在项目中严格配置依赖项,避免自动链接错误版本。对纯C库可尝试动态加载,但需充分测试边界场景。
2025-06-01 17:47:44
347
原创 动态库导出符号与extern “C“
根据C/C++语法规则,函数声明中的修饰符(如__declspec(dllexport))可以放在返回类型之前或返回类型之后、函数名之前。这两种方式在功能上是等价的,编译器会以相同的方式处理。注:声明函数/类的 签名和导出属性(如 extern “C” 或 __declspec(dllexport)),告知编译器按特定规则生成符号名。编译器在处理 CPP 文件时,会根据头文件声明自动应用导出规则,无需在实现中重复指定。
2025-06-01 15:57:25
319
原创 Visual Studio笔记:MSVC工具集、MSBuild
也可以说Visual Studio平台工具集(Platform toolset).这些工具包括 C/C++ 编译器、链接器、汇编程序和其他生成工具以及匹配的库和头文件。Visual Studio 2015、Visual Studio 2017 和 Visual Studio 2019 是二进制兼容的。工具集的主版本(仍为 14)显示了这一点。在 Visual Studio 2019 或 Visual Studio 2017 中编译的项目与 2017 和 2015 项目 ABI 后向兼容。
2025-05-31 11:54:39
1118
原创 Visual Stuido笔记:C++二进制兼容性之间的兼容性
Visual Studio 2013和更早的Microsoft C++(MSVC)编译器工具集不能保证主要版本的二进制兼容性。您无法将这些工具集的不同版本构建的对象文件,静态库,动态库和可执行文件链接。ABI,对象格式和运行时库是不兼容的。我们在Visual Studio 2015及以后的版本中改变了这种行为。由任何这些版本的编译器编译的运行时库和应用程序都是兼容的。它反映在C++工具集的主要数字中,自Visual Studio 2015以来的所有版本开始为14个。
2025-05-31 11:39:45
877
原创 OCC笔记:BRepMesh_IncrementalMesh的使用
根据文档推导下isRelative传入Standard_True时,theLineDeflection为相对值。参看isRelative说明//!//!//!a对应圆心角,与推导的不一致,推导出来的a若是15度,则圆心角应该是30度,对应12条边。实际却大于12条,大概18条。occ提供的这个参数有点没搞懂,暂时就这样搁置这个问题吧。
2025-05-30 22:15:00
409
原创 OCC笔记:面、边的方向(TopAbs_Orientation)
在Open CASCADE中,面的方向(TopAbs_Orientation)本质是一个拓扑逻辑属性,用于描述面在三维空间中的“内外关系”。它与几何曲面本身的参数化方向(如UV坐标系)不同,而是更高层的拓扑语义。TopAbs_FORWARD:面法线方向指向实体外部(默认方向,表示该面是实体外壳的正向边界)。TopAbs_REVERSED:面法线方向指向实体内部(例如孔洞内壁、布尔运算中的切削面)。
2025-05-29 23:47:02
460
原创 Python笔记:编译的python,c++内嵌使用,failed to get the Python codec of the filesystem encoding
编译的python,c++内嵌使用,failed to get the Python codec of the filesystem encoding。
2025-05-26 00:56:47
277
原创 Python笔记:windows下编译python3.8.20
python3.4及以下可用于老系统截止到2025.4.23 Latest Python 3 Release - Python 3.13.3。
2025-05-25 17:26:02
787
翻译 Visual Studio 版本之间的 C++ 二进制兼容性
Visual Studio 2013 及更早版本中的 Microsoft C++ (MSVC) 编译器工具集不保证主要版本之间的二进制兼容性。您无法链接由这些工具集的不同版本生成的对象文件、静态库、动态库和可执行文件。ABI、对象格式和运行时库不兼容。我们在 Visual Studio 2015 及更高版本中更改了此行为。由这些版本的编译器编译的运行时库和应用程序都是二进制兼容的。它反映在 C++ 工具集主编号中,自 Visual Studio 2015 以来的所有版本都以 14 开头。
2025-05-25 12:54:08
24
原创 vcruntime140.dll在vs哪个版本引入
VCRuntime是一个运行时库,它是微软Visual C++生态系统的一部分。它为原生代码应用程序提供必要的服务,包括C和C++程序的启动和终止功能。VCRuntime库在Visual Studio 2015中进行了重构,将其功能从旧的C运行时库(CRT)中分离出来,形成了一个独立的库。这种分离实现了更稳定的应用程序二进制接口(ABI),并确保VCRuntime不与特定版本的编译器绑定,从而更易于在不同版本的Windows系统间保持兼容性。
2025-05-25 10:57:29
371
原创 OCC笔记:Brep格式
BREP格式是Open CASCADE内核(OCCT)的原生数据模型,直接描述几何体的边界表示(面、边、顶点拓扑关系及几何参数)。于OCCT内核的算法计算(如布尔运算、曲面细分),存储格式为.brep或.rle(压缩版)。与OCCT高度绑定,数据结构优化了内存管理和计算效率。STEP文件中的三维实体(如MANIFOLD_SOLID_BREP)采用Brep结构描述几何边界,其拓扑元素(面、边、顶点)和几何数据(NURBS曲面、曲线)与OCCT的Brep格式一一对应。
2025-05-17 17:00:02
276
原创 Python笔记:c++内嵌python,c++主窗口如何传递给脚本中的QDialog,使用的是pybind11
用的是python 3.8.20, qt版本使用的是5.15.2, PySide的版本是5.15.2, pybind11的版本为2.13.6网上说在python脚本中直接用PySide2自带的QWinWidget,如from PySide2.QtWinExtras import QWinWidget,但我用的版本中说没有QWinWidget,所以就网上找了QWinWidget的源码,直接在c++宿主程序中编译,后使用pybind11导出到解释器:开始想到的是直接构造一个隐藏的QWidget,关联的是MFC
2025-05-14 23:45:00
807
原创 Python笔记:在环境变量中增加了dll加载路径,python提示DLL加载失败
在环境变量中增加了dll加载路径,python提示DLL加载失败。
2025-05-14 22:00:00
467
翻译 Windows下Dll的类型
MFC扩展DLL是一种DLL,它通常实现可重用的类,这些类派生自现有的微软基础类库(Microsoft Foundation Class Library)类。MFC扩展DLL是使用MFC的动态链接库版本(也称为MFC的共享版本)构建的。只有使用MFC共享版本构建的MFC可执行文件(无论是应用程序还是常规的MFC DLL)才能使用MFC扩展DLL。通过MFC扩展DLL,你可以从MFC派生新的自定义类,然后将此扩展版本的MFC提供给调用你的DLL的应用程序。
2025-05-13 23:00:00
28
原创 boost笔记: Cannot open include file: ‘boost/mpl/aux_/preprocessed/plain/&.hpp‘
因为一下库定义了宏and,导致boost的文件包含and.hpp展开成&.hpp,所以出现以下错误。
2025-05-07 21:45:00
377
原创 vs2019编译occ7.9.0时,出现fatal error C1060: compiler is out of heap space
visual studio 2019编译opencascade 7.9.0时,出现编译错误。
2025-04-30 22:45:00
263
原创 Windows7升级PowerShell到5.1
window7系统,安装了vs2019后,应用要用到PowerShell,Tool->Commond Line->Developer PowerShell时,提示版本需要3.0以上。还有编译新版本vcpkg(2021前的版本),脚本报错。所以需要升级下PowerShell。
2025-04-29 21:30:00
543
转载 Qt License
简单来说,LGPL协议要求,如果你的类使用了LGPL库的代码,那么必须把这个类开源。LGPL 所做的工作是,它保证了用户能够有这样一种能力:修改你使用 LGPL 库函数的方式(那些封装器就是你使用 LGPL库的方式,那些已经开源了),重新编译这些代码,然后重新对程序进行连接(连接所需要的目标文件也是包含了的,这是第4条规定的),就可以得到一个新的可执行程序。一、使用 LGPL 协议开发闭源程序,如果你使用动态链接的形式,那么,你可以以任何形式发布你的应用程序,商业的、非商业的、开源的、非开源的,随你。
2025-04-27 17:52:23
57
原创 Python笔记:VS2013编译Python-3.5.10
经过查阅相关文档,得知Windows下编译需要进入PCBuild,然后查看了里面的readme.txt,得知,可以执行build.bat直接编译即可,默认用的是vs2015编译。G:\python-qt-开发工具\python\Python-3.5.10\Python-3.5.10\Tools\msi\README.txt。本地安装了python,要求3.6及以上,可以设置好环境变量HOST_PYTHON,否则会自动下载,我是自行安装的。Lib:标准库源码(.py)和编译后的字节码(
2025-04-25 21:15:00
1090
转载 最常见的五种Python GUI框架,该如何选择?
但是,在选择Pyllama之前,我们需要了解其他可用的GUI开发框架,以便做出更好的选择。Kivy是一个开源的Python GUI框架,它专门用于创建跨平台的应用程序和游戏。因此,建议开发人员在选择框架前,先进行充分的调研和比较,以便做出最优的选择。PySide是另一个基于Qt的Python GUI框架,它提供了一组类库和工具,可以帮助开发人员构建各种类型的应用程序。PyQt是Python语言的一个GUI框架,它是基于Qt图形用户界面库的Python封装。
2025-04-23 15:00:01
89
原创 CMake笔记:find_package工作原理
如果 CMake 自带的 Find.cmake 模块不满足需求,用户可以编写自己的查找模块,并将其放在 CMAKE_MODULE_PATH 指定的路径下。这允许用户根据自己的需求定制查找逻辑,例如指定特定的库版本、搜索特定的路径等。综上所述,find_package 命令通过结合 Module 模式和 Config 模式、设置搜索路径和优先级、查找和设置变量以及处理错误和可选依赖等机制,为 CMake 项目提供了灵活且强大的外部库查找和加载功能。
2025-04-21 13:01:11
402
转载 几何内核与数学
再具体点可操作点呢,首先就是数据结构的入门,掌握BREP边界表示法,如在圆柱面Surface上框出一个小面片Face,能正常显示出来就算理解opencascade中的BREP结构。到大学时代,有了一定的抽象能力(与面向对象编程一样),看问题具有一般性,能使用更高级点的数学工具来处理,有能力来兼顾精度和性能。高中几何学得好的,可能会说我可以用向量,向量的方法会比代数的方法速度要快。积分的计算可以使用数值方法,如Newton-Cotes或Gauss积分法,使用更少的迭代获得更高的精度,程序优化的方向也清晰。
2024-12-27 23:30:41
102
转载 管道设计相关的一些软件
管道套件(PipelineSuite)之一的管道工作室(PipelineStudio)模型,可以通过先进的仿真技术,改善天然气和液体管道的离线计划和设计仿真的效率及精确度。ProCAD.3DSmart.Create.v1.2 1CD管道设计 PROCAD的3DSMART可以让你生成有效和精确的三维图形, 其便捷程度超出你的想象. 作为三维设计软件, 3DSMART集最先进的技术, 难以置信的效率和品质和惊人的回报于一体. 3DSMART易学易用. 3DSMART的…是一款windows应用程序。
2024-12-24 21:00:00
1495
原创 setToAlignCoordSys与图形学中世界坐标系到观察坐标系变换的区别
setToAlignCoordSys与图形学中世界坐标系到观察坐标系变换的区别
2024-12-22 12:05:10
324
原创 CMake笔记:install(TARGETS target,...)无法安装的Debug/lib下
按如下CMake代码,无法将lib文件安装到Debug/lib或Release/lib目录下,始终安装在CMAKE_INSTALL_PREFIX/lib下。
2024-11-23 21:00:00
701
原创 CMake笔记:windows下构建一个简单项目
用CMake构建一个简单的项目,项目由一个exe以及一个dll组成,项目目录结构如上图,build_MyHello是编译生成的目录。
2024-11-20 18:12:45
733
原创 服务器在运行中,由于另一个程序正在运行中,此操作无法完成
有时会程序提示”由于另一个程序正在运行中,此操作无法完成.请选择’切换到’来激活正在运行中的程序,并更正问题.” 怎么解决?
2024-11-08 15:34:17
3692
原创 OCC笔记:使用HLRBRep_Algo无法消除隐藏线
使用HLRBRep_Algo在俯视投影下能消隐,在主视投影下无法消隐。使用HLRBRep_PolyAlgo消隐时,有些线又丢失了。
2024-11-06 15:42:55
398
原创 不同的字符集(ASCII、UTF-8、UTF-16/UCS-2、UTF-32/UCS-4)
不同的字符集(ASCII、UTF-8、UTF-16/UCS-2、UTF-32/UCS-4)
2024-08-21 22:03:05
220
原创 Minetest大师:1.0.21版本发布
Minetest大师v1.0.21,一款专注于Minetest的游戏盒子增加了大量的基础功能1、资源中心与ContentDB同步,增加资源搜索、安装功能2、增加在线服务器列表,自动匹配Minetest版本启动3、优化自定义实例,增加编辑实例功能,可安装、卸载资源4、资源版本与minetest版本的自动匹配,自动更新资源新版本
2024-08-03 11:16:32
266
Minetest大师v1.0.21,专注于Minetest的游戏盒子
2024-07-31
occ-vs2013-win32-debug-release
2023-12-16
occ-vs2013-x64-debug-release
2023-12-16
工程文件:使用Visual Studio自带的MC.exe工具来创建一个消息资源并将其添加到自己的DLL(或.exe)中
2015-06-07
vc贪吃蛇c++
2013-06-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人