stlwrite -写入二进制或ascii STL文件

这是一个由Sven Holcombe所做的添加颜色支持的出色工作的更新万博1manbetx

2.2 k下载

更新2012年5月18日

查看许可协议

STLWRITE(FILE,fv)将立体平版印刷(STL)文件写入FILE进行三角化
由FV定义的补丁(一个具有字段“顶点”和“面”的结构)。

STLWRITE(FILE,FACES,VERTICES)分别接受面和顶点,而不是在FV结构体中

STLWRITE(FILE,X,Y,Z)从X,Y,Z中的表面数据创建一个STL文件
使用下面指定的三角测量选项,将数据网格化到一个三角曲面。X, Y
和Z可以是相同大小的二维数组。如果X和Y是长度相等的向量
分别到SIZE(Z,2)和SIZE(Z,1),通过MESHGRID来创建网格化
数据。如果X或Y是标量值,则它们用于指定网格之间的X和Y间距
点。

STLWRITE(…,'PropertyName',VALUE,'PropertyName',VALUE,…)写入一个STL文件
以下属性值:

MODE -文件使用'binary'(默认)或'ascii'写入。

标题-写入STL文件的头文本(最多80个字符)。

TRIANGULATION -当使用网格数据时,TRIANGULATION是:
'delaunay' -(默认)delaunay三角测量X, Y
'f' -网格四边形的正斜线划分
'b' -四边形的反斜杠分割
'x' -四边形的交叉划分
请注意,“f”,“b”或“t”三角测量需要FEX条目28327,“mesh2tri”。

FACECOLOR - [nx3]- [red_1, green_1, blue_1;Red_2, green_2, blu_2;…;Red_n, green_n, blue_n]
- N是面数。
-颜色范围是5位(0:31)。
—仅适用于二进制文件。

示例1:
从面/顶点数据写入二进制STL
Tmpvol = 0 (20,20,20);%空体素体积
Tmpvol (8:12,8:12,5:15) = 1;打开一些体素
Fv = isosurface(tmpvol, 0.99);创建补丁对象
stlwrite('test.stl',fv) %保存为二进制文件。stl

示例2:
从网格化数据写入ascii STL
[X,Y] = deal(1:40);%创建网格引用
Z =峰值(40);%创建网格高度
stlwrite (test.stl, X, Y, Z,“模式”,“ascii”)

原想法改编自surf2stl由比尔麦克唐纳。巨大的速度
由奥利弗·伍德福德实施的改进。Non-Delaunay三角
的四边形曲面输入需要mesh2tri由凯文莫尔曼。

注:这个条目最初的标题是“patch2stl”,但在添加了更通用的输入后,已被重命名为“stlwrite”。

引用作为

格兰特·洛森(2023)。stlwrite -写入二进制或ascii STL文件(//www.tianjin-qmedu.com/matlabcentral/fileexchange/36770-stlwrite-write-binary-or-ascii-stl-file), MATLAB中央文件交换。检索

MATLAB版本兼容性
使用R2011a创建
与任何版本兼容
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!
版本 发表 发布说明
1.0.0.0