📌 项目:https://github.com/bherbruck/solidcraft | 星数:2380 | 语言:Rust | 协议:Apache-2.0 | 更新:2026-10-15
SolidCraft是一款用纯Rust开发的参数化3D CAD(计算机辅助设计)建模应用,在GitHub上获得了2380颗星的关注。它提供了从二维草图绘制到三维实体建模的完整工作流,支持参数化设计、约束求解和布尔运算等核心CAD功能。与传统的C++ CAD软件不同,SolidCraft充分利用Rust语言的安全性和并发能力,在保证高性能的同时避免了内存安全问题。项目使用Apache-2.0开源协议,致力于为工程师和设计师提供一个轻量级但功能强大的开源CAD替代方案。SolidCraft的架构设计注重模块化和可扩展性,核心建模引擎与用户界面完全分离,方便开发者在此基础上构建专业领域的定制化CAD工具。
对于CAD建模感兴趣的用户,我们还推荐阅读CadCraft Rust CAD建模工具指南和LightCraft灯光设计工具指南,了解更多Rust在工程设计领域的应用。
参数化建模引擎是SolidCraft的核心。它基于约束求解算法,支持尺寸约束、几何约束(平行、垂直、相切等)和装配约束。用户可以通过修改参数值快速更新整个模型,所有相关几何体会自动调整。引擎使用Rust编写,约束求解速度快,支持复杂装配体的实时交互编辑,修改参数后模型更新延迟在50毫秒以内。
草图到实体工作流提供了完整的建模流程。2D草图工具支持直线、圆弧、样条曲线、椭圆等基本图元,可以添加尺寸标注和几何约束。草图通过拉伸、旋转、扫掠、放样等操作生成3D实体,并支持布尔运算(合并、切割、相交)进行复杂形状的构建。所有操作支持撤销重做,编辑历史可回溯。
可扩展插件架构采用模块化设计,核心建模引擎与界面分离。支持通过Rust插件扩展功能,插件可以添加新的建模操作、导入导出格式、自定义约束类型等。同时提供Python绑定接口,方便自动化脚本和批量处理工作流。插件通过Cargo依赖管理,版本兼容性有保障。
| ✅ 优势 | ❌ 劣势 |
|---|---|
| 纯Rust实现内存安全有保障 | 功能不及商业CAD软件成熟 |
| 参数化设计灵活高效 | 学习曲线较陡峭 |
| 插件架构可扩展性强 | 文件格式兼容性有限 |
| 跨平台支持三大系统 | 渲染效果有待提升 |
| Apache-2.0开源协议友好 | 社区规模较小文档待完善 |
目前不能完全替代。SolidCraft功能还在持续完善中,适合简单到中等复杂度的建模任务。作为开源替代方案,它的发展方向是覆盖更多商业CAD的核心功能,但短期内仍无法匹配SolidWorks的完整生态。
目前支持STEP和IGES标准CAD格式导入,STL和OBJ网格格式导出。开发路线图中计划支持更多格式如DWG、Parasolid和3MF,社区也可以通过插件架构添加自定义格式支持。
插件使用Rust编写,通过Cargo引入SolidCraft SDK。参考项目仓库中的示例插件,实现定义的trait接口即可添加自定义操作。插件可以注册新的建模命令、文件格式处理器或约束类型。