资源简介
function p=createSimplyPoly(p)
cen=mean(p);
ang=atan2(p(:,1)-cen(1),p(:,2)-cen(2)); %每个点到坐标中心极角
p=[p,ang];
p=sortrows(p,3); %按极角排序
p=p(:,1:2);
end
cen=mean(p);
ang=atan2(p(:,1)-cen(1),p(:,2)-cen(2)); %每个点到坐标中心极角
p=[p,ang];
p=sortrows(p,3); %按极角排序
p=p(:,1:2);
end
代码片段和文件信息
clear all;
clc;
n=20;
p=rand(n2);
p=createSimplyPoly(p); %创建简单多边形
hold on;
for i=1:n
if i==1 %处理第一个点
v1=p(n:)-p(1:); %当前点到前一点向量
v2=p(2:)-p(1:); %当前点到后一点向量
elseif i==n %最后一个点
v1=p(n-1:)-p(n:);
v2=p(1:)-p(n:);
else %其他点
v1=p(i-1:)-p(i:);
v2=p(i+1:)-p(i:);
end
r
- 上一篇:共享单车matlab程序源代码
- 下一篇:三维曲面拟合,用于matlab计算
评论
共有 条评论