30.1.1绘制三角网

Octave具有以下函数triplot, trimeshtrisurf以绘制二维点集的Delaunay三角剖分。tetramesh将绘制三维点集的三角剖分。

 
: triplot (tri, x, y)
: triplot (tri, x, y, linespec)
: h = triplot (…)

绘制二维三角形网格。

tri通常是网格上Delaunay三角剖分的输出x, y。每一排tri表示一个三角集合,包含三个索引[x, y],它们是x-y平面中三角形的顶点。

可以使用参数定义用于打印的线条样式linespec,与plot命令的格式相同。

可选返回值h是createdpatch对象的图形句柄。

详见: plot, trimesh, trisurf, delaunay.

广告
 
: trimesh (tri, x, y, z, c)
: trimesh (tri, x, y, z)
: trimesh (tri, x, y)
: trimesh (…, prop, val, …)
: h = trimesh (…)

打印三维三角形线框网格。

mesh等函数对比,其使用矩形绘制网格,而trimesh使用三角形绘制网格。

tri通常是网格上Delaunay三角剖分的输出x, y。每一排tri表示一个三角集合,包含三个索引[x, y],它们是x-y平面中三角形的顶点。z确定每个顶点的平面上方的高度。如果不指定z参数,则将三角形绘制为二维图形。

三角集合的颜色是通过线性缩放z值以适应当前颜色图的范围。使用clim和/或改变颜色图以控制外观。

(可选)网格的颜色可以独立于z通过提供c参数,这个参数是颜色图数据的向量,或是RGB数据的具有三列的矩阵。c中指定的颜色数必须等于z中的顶点数或者三角形tri的数量.

任何键/值对都将直接传递给基础补丁对象。完整的属性清单详见Patch Properties.

可选返回值h是创建的补丁对象的图形句柄。

详见: mesh, tetramesh, triplot, trisurf, delaunay, patch, hidden.

广告
 
: trisurf (tri, x, y, z, c)
: trisurf (tri, x, y, z)
: trisurf (…, prop, val, …)
: h = trisurf (…)

绘制三维三角形曲面。

surf等对比,其使用矩形绘制表面网格,trisurf使用三角形绘制网格。

tri通常是网格上Delaunay三角剖分的输出x, y。每一排tri表示一个三角集合,包含三个索引[x, y],它们是x-y平面上三角矩阵的顶点。z确定每个顶点平面上方的高度。

三曲面的颜色是通过线性缩放z值以适应当前颜色图的范围。使用clim和/或改变颜色图以控制外观。

(可选)网格的颜色可以独立于z通过提供c参数,这个参数是颜色图数据的向量,或是RGB数据的具有三列的矩阵。c中指定的颜色数必须等于z中的顶点数或者三角形tri的数量。当指定每个顶点的颜色时,三角形将仅根据第一个顶点的颜色进行着色(详见补丁文档和"FaceColor"属性设置为时"flat").

任何键/值对都将直接传递给基础补丁对象。完整的属性清单详见Patch Properties.

可选返回值h是创建的补丁对象的图形句柄。

详见: surf, triplot, trimesh, delaunay, patch, shading.

广告
 
: tetramesh (T, X)
: tetramesh (T, X, C)
: tetramesh (…, property, val, …)
: h = tetramesh (…)

显示在m×4矩阵中定义的四面体T作为3-D补丁。

T通常是三维点集的Delaunay三角剖分的输出。每一排T包含X的四面体四个顶点的n×3矩阵的索引。X中的每一行表示三维空间中的一个点。

向量C指定每个四面体的颜色作为当前颜色图的索引。默认值为1:m,其中m是四面体的数量;索引被缩放以map到彩色地图的整个范围。如果四面体比颜色图中的颜色多,则中的值C循环重复。

调用tetramesh (…, "property", "value", …)将所有键/值对作为附加参数直接传递给补丁函数。完整的属性清单详见Patch Properties.

可选返回值h是补丁句柄的向量,其中每个句柄表示一个四面体,其顺序为Th的典型用例是将相应的补丁"visible"属性改为"on""off".

输入demo tetramesh查看有关使用tetramesh的示例.

详见: trimesh, delaunay, delaunayn, patch.

广告

triplottrimeshtrisurf之间的区别,是前者只绘制了二维三角剖分本身,而后者绘制了函数f (x, y)的值。triplot函数的使用示例为

rand ("state", 2)
x = rand (20, 1);
y = rand (20, 1);
tri = delaunay (x, y);
triplot (tri, x, y);

其绘制了一组二维随机点的Delaunay三角剖分。上面的输出可以在中看到图30.2.

triplot

图30.2:随机点集的Delaunay三角剖分


版权所有 © 2024-2025 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-2