- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Matlab期末作业 李家兴20131336013
Matlab基础及应用教程期末作业
学号 20131336013 姓名 李家兴
一、M文件及注释
用Matlab绘制管状几何体
利用MATLAB绘制管状几何体,所谓管状几何体就是中空的像水管一样的几何体。MATLAB函数TubeLike,可以根据管道中心线坐标及各点处管道半径绘制管状几何体。
程序M文件
function [X,Y,Z] = TubeLike(x,y,z,r)
% 绘制三维管道型立体
% TubeLike(x,y,z) 绘制三维管道型几何体,输入参数x,y,z分别为管道中心线各点处
% 的坐标,x,y和z应为等长的向量,此时管道具有统一的半径1.
%
% TubeLike(x,y,z,r) 输入参数r用来指定管道半径。r可以是标量,也可以是与x,y,z等
% 长的向量。当r是标量时,管道具有统一半径;当r是向量时,管道
% 各截面处可以有不同的半径。
%
% TubeLike(x) 输入参数x为3行或3列的矩阵,用来指定管道中心线各点处的坐标,
% 此时管道具有统一的半径1.
%
% TubeLike(x,r) 输入参数x为3行或3列的矩阵,用来指定管道中心线各点处的坐标,
% 输入参数r(标量或向量)用来指定管道半径。
%
% [X,Y,Z] = TubeLike(...) 输出三维管道型几何体的网格数据X,Y和Z.
%
% Example:
% t = linspace(0,2*pi,50);
% x = sin(t);
% y = cos(t);
% z = cos(t/2);
% r = sin(t);
% TubeLike(x,y,z,r)
if nargin=1 nargin=2
% 检查数据维数是否正确
[m,n] = size(x);
p = min(m,n); % 维数
if p ~= 3
error(应输入三维样本数据,并且样本容量应大于3);
end
% 把样本观测值矩阵转置,使得行对应变量,列对应观测
if m = n
x = x;
end
yd = x(2,:);
zd = x(3,:);
xd = x(1,:);
if nargin == 1
r = ones(size(xd));
else
if isvector(y)
if numel(y) == 1
r = y*ones(size(xd));
elseif numel(y)1 numel(y) == length(xd)
r = y(:);
else
error(半径应为标量或与x等长的向量);
end
else
error(半径应为标量或与x等长的向量);
end
end
elseif nargin=3 nargin=4
if isvector(x) isvector(y) isvector(z)
numxyz = [numel(x),numel(y),numel(z)];
if any(numxyz-min(numxyz))
error(管道中心坐标x,y,z应为等长的向量);
else
xd = x(:);
yd = y(:);
zd = z(:);
end
else
error(管道中心坐标x,y,z应为等长的向量);
end
if nargin == 3
r = ones(size(xd));
else
if isvector(r)
if numel(r) == 1
r = r*ones(size(xd));
elseif numel(r)1 nume
您可能关注的文档
最近下载
- 徒手整形协议书模板.docx VIP
- 2022年9月全国青少年软件编程(图形化)等级(三级)考试卷.pdf VIP
- 第二章法的渊源、分类及效力.ppt VIP
- 《李清照》诗词109篇大全集.pdf VIP
- 《高分子防水卷材》课件.ppt VIP
- 河北省石家庄市2024-2025学年高一下学期期末考试 数学试卷[含答案].docx
- 中国人民大学《法理学》课件-第六讲 法的渊源与效力.pptx VIP
- 法理学—法的渊源、分类和效力.ppt VIP
- 法理学第四章_法的渊源、分类、效力.ppt VIP
- 柯尼卡美能达 柯美 bh 246 236 226 216 206 复印机中文维修手册 (1).pdf VIP
文档评论(0)