|
- clear
- clc
- x=[0 0 1 2 3]; % 顶点坐标
- y=[0 1 2 1 1];
- plot([x,x(1)],[y,y(1)])
- x1=[x(end),x,x(1)];
- y1=[y(end),y,y(1)];
- ang=zeros(1,length(x1)-2);
- for i=2:length(x1)-1
- a=[x1(i+1) y1(i+1)]-[x1(i) y1(i)];
- b=[x1(i-1) y1(i-1)]-[x1(i) y1(i)];
- if a(1)*b(2)-b(1)*a(2) > 0 % 判断两个向量的相对位置,对于求角,至关重要
- ang(i-1)=2*pi-acos(dot(a,b)/sqrt(dot(a,a))/sqrt(dot(b,b)));
- else
- ang(i-1)=acos(dot(a,b)/sqrt(dot(a,a))/sqrt(dot(b,b)));
- end
- end
- disp(ang/pi*180)
复制代码 71.5651 135.0000 90.0000 225.0000 18.4349
[ 本帖最后由 ChaChing 于 2009-2-28 19:57 编辑 ] |
评分
-
1
查看全部评分
-
|