赞
踩
目录
- % 定义边界大小和点数
- N = 100;
- xmin = 0;
- xmax = 1;
- ymin = 0;
- ymax = 1;
- % 生成随机点
- x = xmin + (xmax-xmin).*rand(N,1);
- y = ymin + (ymax-ymin).*rand(N,1);
- % 进行Delaunay三角剖分
- tri = delaunay(x,y);
- % 绘制三角网格
- triplot(tri,x,y);
- % 添加边界
- hold on
- plot([xmin,xmin,xmax,xmax,xmin],[ymin,ymax,ymax,ymin,ymin],'k--');
- hold off
- title("Delaunay三角剖分,"+"N="+N);
- % 将数据点集转换为Delaunay三角剖分
- DT = delaunayTriangulation(x',y');
- % 获取三角形的顶点坐标和连接关系
- triangles = DT.ConnectivityList;
- vertices = DT.Points;
- % 绘制TIN图形
- figure;
- triplot(triangles,vertices(:,1),vertices(:,2));
- title('TIN图形');
(随机点个数不同得到的不同随机结果)
(多次运行得到的随机结果)
方法一:使用rand函数生成100个随机点(可以进行更改),再使用delaunay函数进行Delaunay三角剖分,得到一个三角形的索引表(tri),最后使用triplot函数将三角形绘制出来。
方法二:在绘制TIN图形时,使用triangles和vertices两个变量,triangles包含三角形的连接关系,vertices包含三角形的顶点坐标。
(需要完整代码及运行结果请留言~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。