基于matlab的voronoi图绘制

voronoi多边形的图常常应用在各种建模中,matlab中的mpt工具箱可高效快捷绘制voronoi图,方法如下:

1.安装mpt工具箱

下载mpt工具箱:https://pan.baidu.com/s/1o_QsatrZsG-mj6d7uyThNw(提取码:zi1n),内有两个版本,建议安装命名为mpt的安装包。安装步骤:把安装包下载解压在你的matlab安装路径的toolbox文件夹,然后点击matlab主页界面中的设置路径,在对话框中点击“填加并包含子文件夹”,选择安装的mpt文件夹,保存,确定,完毕。(2017matlab可用,其他版本未知)

2.绘制二维voronoi图

基于matlab的voronoi图绘制_第1张图片

源码如下:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%功能:生成简单二维voronoi图
%%作者:北疆紫云
%%时间:2018年12月11日
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clc;
clear al;
close all;
X = 10*rand(1,50); 
Y = 10*rand(1,50); %随机生成五个2D点 
Options.plot=1; %设置1表示画出维诺图 
v=[0 0;0 10;10 10;0 10;10 0]; 
P = polytope(v); %生成边界 
Options.pbound=P; 
%axis square; 
Pn=mpt_voronoi([X' Y'],Options); 
V = extreme(Pn(1)); %这里的V就是第一个多边形的顶点序列 
axis([0 10 0 10]);

3.绘制三维voronoi图

基于matlab的voronoi图绘制_第2张图片

源码如下:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%功能:生成简单三维voronoi图
%%作者:北疆紫云
%%时间:2018年12月11日
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

clc;
clear al;
close all;
v=[0 0 0;150 0 0;150 150 0;0 150 0; 0 0 1;150 0 1;150 150 1;0 150 1]; 
X = 10*rand(1,100); 
Y = 10*rand(1,100);  
Z = 10*rand(1,100); %随机生成100个3D点 
Options.plot=1; %设置1表示画出维诺图 
v=[0 0 0;0 0 10;0 10 0;0 10 10;10 0 0;10 0 10;10 10 0;10 10 10]; 
P = polytope(v); %生成边界 
Options.pbound=P; 
Pn=mpt_voronoi([X' Y' Z'],Options); 
V = extreme(Pn(1)) ;%这里的V就是第一个多边形的顶点序列 
axis([0 10 0 10 0 10]);

结束。

你可能感兴趣的:(机电及微纳仿真)