基于MATLAB木条摆放问题建模与求解.pdfVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

问题一question1.m

clc

clear

L=120;

w=0.5;

a=2.5;%%%木条宽度

R=25;%%%圆面半径

h=50;

f=figure

axis([-5050-5050-6020])

holdoff

%%%%计算第一象限内桌面木条各端点的坐标由向边缘依次编号1到10

fori=1:10

y(i)=a*(i-1)+a/2;%%%第i根木条的y坐标

d(i)=2*(R.^2-y(i)^2)^0.5;%%%第i根木条的长度

end

%%%%P点坐标

PX=d/2;

PY=y;

PZ=zeros(size(PX));

P=[PX;PY;PZ];

%%%%计算中枢点Q坐标

%先计算M坐标(即最外侧木条的右侧端点)

M=[min(d)/2max(y)0];

%计算N坐标(即最外侧木条的落地点)

HL=L/2-min(d)/2;

NT=[min(d)/2+(HL^2-h^2)^0.5max(y)-h];

%最外侧木条的Q点坐标

QT=M+w*(NT-M);

fori=1:10

Q(i,:)=QT;

Q(i,2)=y(i);%%%修正每根板条的Y坐标

end

%%%计算桌角点

%方向向量

T=Q-P;

%第i根木条桌腿长度

dl=L/2-d/2;

t=(dl.^2./sum(T.^2)).^0.5;%%%中间变量

N=P+T.*repmat(t,1,3);%%%桌脚坐标

%%%第二象限的端点

%桌面端点

P2=P;

P2(:,1)=-P2(:,1);

P2(:,3)=P(:,3);

%桌角端点

N2=N;

N2(:,1)=-N2(:,1);

N2(:,3)=N(:,3);

%Q点

Q2=Q;

Q2(:,1)=-Q2(:,1);

Q2(:,3)=Q(:,3);

%%%第三象限的端点

P3=-P;

P3(:,3)=P(:,3);

N3=-N;

N3(:,3)=N(:,3);

Q3=-Q;

Q3(:,3)=Q(:,3);

%%%第四象限的端点

P4=-P2;

P4(:,3)=P(:,3);

N4=-N2;

N4(:,3)=N(:,3);

Q4=-Q2;

Q4(:,3)=Q(:,3);

%%%绘制桌面

fori=1:10

line([P(i,1)P2(i,1)],[P(i,2)P2(i,2)],[P(i,3)P2(i,3)])

holdon

line([P3(i,1)P4(i,1)],[P3(i,2)P4(i,2)],[P3(i,3)P4(i,3)])

end

%%%绘制圆边界

plot3(P(:,1),P(:,2),P(:,3),r*)

plot3(P2(:,1),P2(:,2),P2(:,3),r*)

plot3(P3(:,1),P3(:,2),P3(:,3),r*)

plot3(P4(:,1),P4(:,2),P4(:,3),r*)

%%%绘制各个象限的桌腿

fori=1:10

line([P(i,1)N(i,1)],[P(i,2)N(i,2)],[P(i,3)N(i,3)])

line([P2(i,1)N2(i,1)],[P2(i,2)N2(i,2)],[P2(i,3)N2(i,3)])

holdon

line([P3(i,1)N3(i,1)],[P3(i,2)N3(i,2)],[P3(i,3)N3(i,3)])

line([P4(i,1)N4(i,1)],[P4(i,2)N4(i,2)],[P4(i,3)N4(i,3)])

end

plot3(Q(:,1),Q(:,2),Q(:,3),r*)

plot3(Q2(:,1),Q2(:,2),Q2(:,3),r*)

plot3(Q3(:,1),Q3(:,2),Q3(:,3),r*)

plot3(Q4(:,1),Q4(:,2),Q4(:,3),r*)

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%绘制桌脚轨迹

plot3([flipud(N4(:,1));N(:,1);],[flipud(N4(:,2));N(:,2);],[flipud(N4(

文档评论(0)

huang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档