Matlab 高脚杯模型切片

来源:互联网 发布:天猫数据 编辑:程序博客网 时间:2024/04/25 10:09


有兴趣的可以下载数据,跑程序试一下。也可以单独看看代码,看下实现过程。

  • 主函数
% xls_data=xlsread('data_more.xls');% x=xls_data(1:3:end);% y=xls_data(2:3:end+1);% data=[x,y];% save('data.mat','data');clc,clearload data.matx=data(:,2);y=data(:,1);yy=smooth(y);figureplot(yy,x,'.r');axis equalgrid ontitle('orig data');%%  拟合% xx=[min(x):0.1:max(x)]';% fitsize=4;%拟合次数自己定义% p=polyfit(x,y,fitsize);% f=polyval(p,xx);% figure% plot(f,xx,'linewidth',2);% axis equal% grid on% title('fit data')%%figure[X,Y,Z] = cylinder(yy(end:-1:1));[m,n]=size(X);color=ones(m,n);h=surf(X,Y,Z);alpha(0.8)%设定透明度CM=[1,0,1];CM=repmat(CM,32,1);colormap(CM);lighting gouraud;camlight;shading interptitle('the model')%%% figure% pcolor(X,Y,Z);shading interp%伪彩色图% figure% contourf(X,Y,Z) %等高线图% view(3)% figure,surf(X,Y,Z)%三维曲面%%   曲线个数为20  slice图figureplot_hor(X,Y,Z,1,10,518,'m');grid onplot_hor(X,Y,Z,100,5,400,'m');title('slice')%%   骨架图  virtical and horizontalfigureplot3(X,Y,Z,'linewidth',2,'color','b')hold onplot_hor(X,Y,Z,1,5,518,'b');grid ontitle('framework');
  • 被调用函数,用于绘制高脚杯骨架
function plot_hor(x,y,z,First1,Step1,End1,color)for i=First1:Step1:End1x_hor=x(i,1:21);y_hor=y(i,1:21);z_hor=z(i,1:21);plot3(x_hor,y_hor,z_hor,'linewidth',2,'color',color);hold onendend
  • 大致结果如下:

这里写图片描述
这里写图片描述

有兴趣的可以下载数据,跑程序试一下。也可以单独看看代码,看下实现过程。

  • 主函数
% xls_data=xlsread('data_more.xls');% x=xls_data(1:3:end);% y=xls_data(2:3:end+1);% data=[x,y];% save('data.mat','data');clc,clearload data.matx=data(:,2);y=data(:,1);yy=smooth(y);figureplot(yy,x,'.r');axis equalgrid ontitle('orig data');%%  拟合% xx=[min(x):0.1:max(x)]';% fitsize=4;%拟合次数自己定义% p=polyfit(x,y,fitsize);% f=polyval(p,xx);% figure% plot(f,xx,'linewidth',2);% axis equal% grid on% title('fit data')%%figure[X,Y,Z] = cylinder(yy(end:-1:1));[m,n]=size(X);color=ones(m,n);h=surf(X,Y,Z);alpha(0.8)%设定透明度CM=[1,0,1];CM=repmat(CM,32,1);colormap(CM);lighting gouraud;camlight;shading interptitle('the model')%%% figure% pcolor(X,Y,Z);shading interp%伪彩色图% figure% contourf(X,Y,Z) %等高线图% view(3)% figure,surf(X,Y,Z)%三维曲面%%   曲线个数为20  slice图figureplot_hor(X,Y,Z,1,10,518,'m');grid onplot_hor(X,Y,Z,100,5,400,'m');title('slice')%%   骨架图  virtical and horizontalfigureplot3(X,Y,Z,'linewidth',2,'color','b')hold onplot_hor(X,Y,Z,1,5,518,'b');grid ontitle('framework');
  • 被调用函数,用于绘制高脚杯骨架
function plot_hor(x,y,z,First1,Step1,End1,color)for i=First1:Step1:End1x_hor=x(i,1:21);y_hor=y(i,1:21);z_hor=z(i,1:21);plot3(x_hor,y_hor,z_hor,'linewidth',2,'color',color);hold onendend
  • 大致结果如下:

这里写图片描述
这里写图片描述

0 0
原创粉丝点击