STL (.stl)
背景
-
- MIME 类型:application/sla
- STL 计算机辅助设计和制造格式.
- 三维几何格式.
- 常用于快速初样系统中表示固体模型.
- 三维系统立体平版印刷 CAD 软件的原格式.
- 于1989年由 3D Systems 公司开发.
- STL 是 stereolithography(立体平板印刷)的缩写.
- ASCII 或二进制格式.
- 把一三维对象,包括该固体,存储为由邻接三角形集合形成的表面.
Import 与 Export
- Import["file.stl"] 将一个 STL 文件作为一个表示表面(surface)的 MeshRegion 对象导入.
- Import["file.stl",elem] 从一个 STL 文件中导入指定参数.
- 导入格式可由 Import["file","STL"] 或 Import["file",{"STL",elem,…}] 指定.
- Export["file.stl",expr] 向一个二进制 STL 文件导出基于网格的三维几何区域. expr 可以是任何 ConstantRegionQ 或 Graphics3D 对象的区域.
- 导出格式可由 Export["file",expr,"STL"] 或 Export["file",expr,{"STL",opt1->val1,…}] 指定.
- 请到以下参考页面了解完整的基本信息:
-
Import, Export 从文件导入或导出到文件 CloudImport, CloudExport 从云对象导入或导出到云对象 ImportString, ExportString 从字符串导入或导出到字符串 ImportByteArray, ExportByteArray 从字节数组导入或导出到字节数组
参数
- 通用 Import 参数:
-
"Elements" 该文件可用的参数列表 "Rules" 所有可用参数的规则列表 "Summary" 文件摘要 "CoordinateTransform" 从 STL 格式的转换函数 - 表示数据格式的参数:
-
"BinaryFormat" 该文件是否为二进制或 ASCII STL "Comments" 注释 "VertexData" 顶点坐标列表 "PolygonData" 索引形式的多边形参数 "PolygonCount" 多边形数量 - 表示几何的参数:
-
"BoundaryMeshRegion" 表示固体的边界网格 "MeshRegion" 表示表面的网格 "Region" 表示表面的区域 - 表示图形的参数:
-
"Graphics3D" 表示为 Graphics3D 对象的 STL 文件 "GraphicsComplex" 表示为 GraphicsComplex 对象的 STL 文件 "PolygonObjects" 以绝对坐标表示的多边形图元列表 - 在 STL 文件中,默认情况下 Import 和 Export 使用 "MeshRegion" 参数.
范例
打开所有单元 关闭所有单元基本范例 (2)
将一个三维模型作为 MeshRegion 对象导入:
Import["ExampleData/seashell.stl"]Import["ExampleData/seashell.stl", "Summary"]Export["model.stl", [image], {"STL", "BinaryFormat" -> False}]FilePrint[%]范围 (13)
Import (7)
Import 作用于 ASCII STL 文件:
Import["ExampleData/chain.stl"]Import["ExampleData/seashell.stl"]Import["http://exampledata.wolfram.com/vase.stl"]str = OpenRead["ExampleData/spikey.stl"]Import[str]Close[str]Import 自动检测 STL 文件:
Import["http://exampledata.wolfram.com/gear.1"]Import 提供 STL 文件中的参数访问:
Import["ExampleData/spikey.stl", "Elements"]Import 作用于大型文件:
Import["http://exampledata.wolfram.com/turtle.stl"] // MeshCellCount//AbsoluteTimingExport (6)
Export 作用于三维图像:
Export["model.stl", [image]]Export["sphere.stl", Sphere[]]Export["ball.stl", ImplicitRegion[x ^ 2 + y ^ 2 + z ^ 2 ≤ 1, {x, y, z}]]Export["pyramid.stl", MeshRegion[{{-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}, {0, 0, 1}}, Pyramid[{1, 2, 3, 4, 5}]]]Export["model.stl", [image]]Export["model.stl", [image], "BinaryFormat" -> False]重要参数 (12)
"BinaryFormat" (1)
"BoundaryMeshRegion" (1)
"CoordinateTransform" (1)
"Graphics3D" (1)
给出 Graphics3D 对象:
Import["ExampleData/spikey.stl", "Graphics3D"]"GraphicsComplex" (1)
给出 GraphicsComplex 对象:
Import["ExampleData/spikey.stl", "GraphicsComplex"]"PolygonData" (1)
"PolygonObjects" (1)
给出以绝对坐标表示的 Triangle 基元列表:
Import["ExampleData/spikey.stl", "PolygonObjects"]"PolygonCount" (1)
"Summary" (1)
导出选项 (2)
Export["model.stl", [image]]FilePrint[%]使用 "BinaryFormat" False 来生成一个 ASCII 文件:
Export["model.stl", [image], {"STL", "BinaryFormat" -> False}]FilePrint[%]历史
2000年引入 (4.1) | 在以下年份被更新:2019 (12.0)