STEP 转 STL 的操作步骤
- 载入 STEP 文件选择 .step 或 .stp。解析器读取 manifold_solid_brep、advanced_face 等 Part 21 实体,在生成任何三角形之前先还原精确曲面与装配树。
- 选择网格精度草稿、均衡、精细、最高四档分别设定弦高容差与角度容差。档位越粗三角面越少,越细则越贴合曲面。
- 离散 B-rep 曲面OpenCascade 的 WebAssembly 内核逐面细分,直到同时满足两项容差,输出带有解析曲面法线的三角形。
- 合并为单个网格所有三角形被写入一个只含位置与法线属性的 BufferGeometry。材质、UV、分组、零件名和装配层级在这一步全部丢弃。
- 写出二进制 STL导出器写入 80 字节文件头、32 位面片数量,然后每个面片 50 字节:12 个 float 表示法线与三个顶点,再加一个 uint16 属性字。
转换过程中发生了什么
为什么必须离散
STL 只能表达平面三角形,而 STEP 用圆柱、球、圆环和 B 样条曲面描述形状。弦高容差限制曲线与折线的偏差,角度容差限制相邻线段的法线夹角。结果是有损的近似,但这是 STL 唯一能保存的形式。
一个网格,而非一个装配体
无论 STEP 里有多少个实体,导出时所有三角形都会被拼接,装配变换直接烘焙进坐标。螺栓、壳体和子装配变成一份没有区分的三角列表,零件名和明细表再也无法还原。
STEP 与 STL 对比
| STEP 源文件(B-rep) | 二进制 STL | |
|---|---|---|
| 几何 | 精确 NURBS 曲面 | 平面三角形 |
| 单位 | 在文件中声明(mm、英寸等) | 无声明,仅 float 坐标 |
| 颜色 | AP214 / AP242 中的 RGB | 无 |
| 结构 | 带名称的产品层级 | 单一扁平列表 |
| 法线 | 由曲面推导 | 每个面片一条 |
| 文件结构 | ISO 10303 Part 21 文本 | 80 字节头 + 50 字节记录 |
已知限制
不携带单位
STEP 会声明单位,STL 不会。导出器不做任何缩放,请在目标软件里核对尺寸,必要时在导入时缩放。
没有颜色和材质
一个面片只有一条法线和三个顶点。查看器里看到颜色是软件默认着色,不是文件里的数据。
没有装配结构
所有零件被合并成一份三角列表。需要保留独立零件时,请逐个导出而不是整装配导出。
常见问题
文件会被上传吗?
不会。读取和写出都在标签页内完成,没有上传环节也不需要账号。本页说明的是 STEP 到 STL 的步骤,真正的转换在按钮打开的工作台里执行,两种格式已经预先选好。
导出的 STL 用什么单位?
没有单位。STL 只存不带的 32 位浮点坐标。切片软件通常按毫米解释,机械类 STEP 一般正好吻合;若模型以英寸建模,成品会小约 25.4 倍。请在目标软件里量一下包围盒。
颜色能保留吗?
不能。AP214 / AP242 的颜色、透明度和材质名在合并时全部丢弃,STL 面片没有颜色通道,属性字写为 0。
网格是水密可打印的吗?
不保证。相邻面在共享边上可能产生微小差异,留下亚微米级缝隙;重叠实体还会产生重合面片。切片软件需要自行焊接顶点,并可能报错或修复。更细的精度能减少狭长三角形,但无法保证装配体一定闭合。
输出是 ASCII 还是二进制?
二进制:80 字节头、32 位面片数量,之后每个三角形 50 字节。体积小、解析简单,不输出 ASCII 版本。
相关转换
全部转换
最后更新: