![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
matlab三维图剪切掉其中一部分,如何操作?
我想请教matlab三维图nan镂空命令的操作!就是我有一个三维曲面图,还有两条与之相交的螺旋线,现在要剪切掉三维图被两螺旋线所夹的那部分图形。可以用NaN镂空命令,但是...
我想请教matlab三维图nan镂空命令的操作!就是我有一个三维曲面图,还有两条与之相交的螺旋线,现在要剪切掉三维图被两螺旋线所夹的那部分图形。可以用NaN镂空命令,但是我没有编写出来。能不能教教我!可以留个邮箱吗,我将方程及图发给您,麻烦您帮我看看!谢谢,或者讲个思路!
我的三维图是需要剪去两条螺旋线线之间的部分,这两条螺旋线也是空间线条。下面朋友的镂空我倒是看得懂,只是我这个图很特殊。因为两条线上的点是离散的,我是取100个点,组成两条线。就是说镂空坐标都是不均匀的,不像下面例子可以知道一个范围,剪贴掉就可以。这100个点[x;y;z]=101*3的矩阵啊! 展开
我的三维图是需要剪去两条螺旋线线之间的部分,这两条螺旋线也是空间线条。下面朋友的镂空我倒是看得懂,只是我这个图很特殊。因为两条线上的点是离散的,我是取100个点,组成两条线。就是说镂空坐标都是不均匀的,不像下面例子可以知道一个范围,剪贴掉就可以。这100个点[x;y;z]=101*3的矩阵啊! 展开
4个回答
展开全部
利用“非数” NaN ,对图形进行剪切处理。
clf;
t=linspace(0,2*pi,100); r=1-exp(-t/2).*cos(4*t); % 旋转母线
[X,Y,Z]=cylinder(r,60); % 产生旋转柱面数据
ii=find(X<0&Y<0); % 确定 x-y 平面第四象限上的数据下标
Z(ii)=NaN; % 剪切
surf(X,Y,Z);colormap(spring),shading interp
light('position',[-3,-1,3],'style','local') % 设置光源
material([0.5,0.4,0.3,10,0.3]) % 设置表面反射
利用“非数” NaN ,对图形进行镂空处理。
P=peaks(30);P(18:20,9:15)=NaN; % 镂空
surfc(P);colormap(summer)
light('position',[50,-10,5]),lighting flat
material([0.9,0.9,0.6,15,0.4])
http://www.iforchina.com/show.aspx?id=4468&cid=170
我都忘了,这个网站肯定可以
clf;
t=linspace(0,2*pi,100); r=1-exp(-t/2).*cos(4*t); % 旋转母线
[X,Y,Z]=cylinder(r,60); % 产生旋转柱面数据
ii=find(X<0&Y<0); % 确定 x-y 平面第四象限上的数据下标
Z(ii)=NaN; % 剪切
surf(X,Y,Z);colormap(spring),shading interp
light('position',[-3,-1,3],'style','local') % 设置光源
material([0.5,0.4,0.3,10,0.3]) % 设置表面反射
利用“非数” NaN ,对图形进行镂空处理。
P=peaks(30);P(18:20,9:15)=NaN; % 镂空
surfc(P);colormap(summer)
light('position',[50,-10,5]),lighting flat
material([0.9,0.9,0.6,15,0.4])
http://www.iforchina.com/show.aspx?id=4468&cid=170
我都忘了,这个网站肯定可以
参考资料: http://www.iforchina.com/show.aspx?id=4468&cid=170
展开全部
利用“非数” NaN ,对图形进行剪切处理。
clf;
t=linspace(0,2*pi,100); r=1-exp(-t/2).*cos(4*t); % 旋转母线
[X,Y,Z]=cylinder(r,60); % 产生旋转柱面数据
ii=find(X<0&Y<0); % 确定 x-y 平面第四象限上的数据下标
Z(ii)=NaN; % 剪切
surf(X,Y,Z);colormap(spring),shading interp
light('position',[-3,-1,3],'style','local') % 设置光源
material([0.5,0.4,0.3,10,0.3]) % 设置表面反射
利用“非数” NaN ,对图形进行镂空处理。
P=peaks(30);P(18:20,9:15)=NaN; % 镂空
surfc(P);colormap(summer)
light('position',[50,-10,5]),lighting flat
material([0.9,0.9,0.6,15,0.4])
clf;
t=linspace(0,2*pi,100); r=1-exp(-t/2).*cos(4*t); % 旋转母线
[X,Y,Z]=cylinder(r,60); % 产生旋转柱面数据
ii=find(X<0&Y<0); % 确定 x-y 平面第四象限上的数据下标
Z(ii)=NaN; % 剪切
surf(X,Y,Z);colormap(spring),shading interp
light('position',[-3,-1,3],'style','local') % 设置光源
material([0.5,0.4,0.3,10,0.3]) % 设置表面反射
利用“非数” NaN ,对图形进行镂空处理。
P=peaks(30);P(18:20,9:15)=NaN; % 镂空
surfc(P);colormap(summer)
light('position',[50,-10,5]),lighting flat
material([0.9,0.9,0.6,15,0.4])
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
利用“非数”
NaN
,对图形进行剪切处理。
clf;
t=linspace(0,2*pi,100);
r=1-exp(-t/2).*cos(4*t);
%
旋转母线
[X,Y,Z]=cylinder(r,60);
%
产生旋转柱面数据
ii=find(X<0&Y<0);
%
确定
x-y
平面第四象限上的数据下标
Z(ii)=NaN;
%
剪切
surf(X,Y,Z);colormap(spring),shading
interp
light('position',[-3,-1,3],'style','local')
%
设置光源
material([0.5,0.4,0.3,10,0.3])
%
设置表面反射
利用“非数”
NaN
,对图形进行镂空处理。
P=peaks(30);P(18:20,9:15)=NaN;
%
镂空
surfc(P);colormap(summer)
light('position',[50,-10,5]),lighting
flat
material([0.9,0.9,0.6,15,0.4])
http://www.iforchina.com/show.aspx?id=4468&cid=170
我都忘了,这个网站肯定可以
NaN
,对图形进行剪切处理。
clf;
t=linspace(0,2*pi,100);
r=1-exp(-t/2).*cos(4*t);
%
旋转母线
[X,Y,Z]=cylinder(r,60);
%
产生旋转柱面数据
ii=find(X<0&Y<0);
%
确定
x-y
平面第四象限上的数据下标
Z(ii)=NaN;
%
剪切
surf(X,Y,Z);colormap(spring),shading
interp
light('position',[-3,-1,3],'style','local')
%
设置光源
material([0.5,0.4,0.3,10,0.3])
%
设置表面反射
利用“非数”
NaN
,对图形进行镂空处理。
P=peaks(30);P(18:20,9:15)=NaN;
%
镂空
surfc(P);colormap(summer)
light('position',[50,-10,5]),lighting
flat
material([0.9,0.9,0.6,15,0.4])
http://www.iforchina.com/show.aspx?id=4468&cid=170
我都忘了,这个网站肯定可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我还没有学的那么深
但是似乎可以 一开始设定图形的显示区域 所以我想可以 一开始修改定义域到你需要的区域上
但是似乎可以 一开始设定图形的显示区域 所以我想可以 一开始修改定义域到你需要的区域上
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询