目录
实际上,在 Windows 平台下编译 SolveSpace 非常简单(我编译的是3.1版),直接使用较新版本的 VS 打开 CMake 文件即可无痛完成项目配置,随后可直接进行编译、调试。网上关于 SolveSpace 在 Windows 平台下编译的中文资料有:
上述两份资料均来自台湾国立虎尾科技大学机械设计工程系KMOL研究室,其使用 MSYS2 来完成SolveSpace 在 Windows 平台下的编译应是有其他特殊的需要,我们如果仅要得到一份 Win 下可调试的 SolveSpace,则直接使用项目中带有的CMake文件即可。
SolveSpace介绍
(以下内容译自SolveSpace官网)
SOLVESPACE是一款自由(GPLv3)参数3D CAD工具。应用包括:
- 3D零件建模 - 通过拉伸(extrudes)、旋成(revolves)、螺旋(helixes)和布尔(Boolean)(并/交/叉)操作
- 2D零件建模 - 绘制零件作为单独的部分,并导出为DXF、PDF、SVG;使用3d装配去确认配合(fit)
- 3D打印零件 - 导出STL或者其他的三角网格,可以被多数3D打印机接受
- 准备CAM数据 - 为水射流机(waterjet machine)或者激光切割机(laser cutter)导出2D矢量图;或者生成STEP或STL文件,用于导入到第三方CAM软件做加工
- 结构设计 - 使用约束求解器模拟平面或空间带销(pin)、球铰(ball)、或滑动杆(slide joints)的连杆结构(linkages)
- 平面和实体几何 - 将手动求解的三角函数和电子表格替换为实时尺寸草图(live dimensioned drawing)
SolveSpace演示(转自SolveSpace官网)
SolveSpace在Windows平台下的编译
1. 源码下载
使用命令 git clone --recurse-submodules https://github.com/solvespace/solvespace.git,下载SolveSpace代码和子模块代码。
2. 使用VS打开项目CMake文件
打开 SolveSpace 目录下的 CMakeLists.txt
CMake生成完毕后,切换到 CMake 目标视图。
可以看到生成目标有很多,配置都自动完成了,项目“solvespace (可执行文件)”生成solvespace.exe,直接设置启动项为该项目,点击调试,即可进行编译链接,启动后,可以打断点进行调试。
创建点、线元素,增加点到线距离约束,程序命中断点。
3. SolveSpace实现参考
早期的 SolveSpace 还不支持3D建模功能,彼时软件名为 Sketchflat,软件作者 Jonathan Westhues 在 Sketchflat 的介绍页面里附加了一份名为 “SketchFlat, A Constraint-Based Drawing Tool” 的技术文档,对于我们梳理其代码实现具有极高的价值。