blussyya/sldprt-converter

GitHub: blussyya/sldprt-converter

将 SolidWorks SLDPRT 文件转换为 STL 和 OBJ 格式的转换器。

Stars: 4 | Forks: 0

# sldprt 转换器 将 SolidWorks SLDPRT 文件转换为 STL 和 OBJ 格式。 ## 使用方法 ``` npm install node src/convert.js input.sldprt [output.stl] ``` 如果没有指定输出路径,则写入 `input_converted.stl` 和 `input_converted.obj`。 ## 工作原理 此工具逆向工程 SLDPRT 二进制格式以直接提取网格几何形状: 1. 解析 OLE2 复合文档格式 2. 提取 `Contents/DisplayLists` 流 3. 解压缩流(pako/inflate) 4. 查找面标记(`0x0C 0x00 0x00 0x00 0x64 0x00 0x00 0x00`) 5. 读取每个面的 NURBS 控制点(以米为单位存储为 float32,缩放到毫米) 6. 根据类型对面进行三角化: - **平面面**(恒定 Y):凸包 + 质心扇形 - **规则曲面**(交替 Y):两个曲线之间的线性插值 - **四边形**(4 个顶点):两个三角形 - **其他**:带有角度排序的质心扇形 ## 当前限制 - 提取的顶点是 NURBS 控制点,而不是评估后的网格顶点 - 控制点之间的线性插值会产生略微超出真实 B 样条曲线的表面 - 平面面孔(用于支架、开孔)尚未支持 - 在 SolidWorks 2015+ SLDPRT 文件上进行了测试 ## 许可证 MIT
标签:3D打印, MITM代理, MIT许可, npm包, NURBS, OBJ格式, OLE2解析, SLDPRT, SolidWorks, STL格式, 三角化, 二进制格式分析, 云资产清单, 几何建模, 数据可视化, 文件格式转换, 暗色界面, 自定义脚本, 软件工具, 逆向工程