matlab三维图剪切掉其中一部分,如何操作?

我想请教matlab三维图nan镂空命令的操作!就是我有一个三维曲面图,还有两条与之相交的螺旋线,现在要剪切掉三维图被两螺旋线所夹的那部分图形。可以用NaN镂空命令,但是... 我想请教matlab三维图nan镂空命令的操作!就是我有一个三维曲面图,还有两条与之相交的螺旋线,现在要剪切掉三维图被两螺旋线所夹的那部分图形。可以用NaN镂空命令,但是我没有编写出来。能不能教教我!可以留个邮箱吗,我将方程及图发给您,麻烦您帮我看看!谢谢,或者讲个思路!
我的三维图是需要剪去两条螺旋线线之间的部分,这两条螺旋线也是空间线条。下面朋友的镂空我倒是看得懂,只是我这个图很特殊。因为两条线上的点是离散的,我是取100个点,组成两条线。就是说镂空坐标都是不均匀的,不像下面例子可以知道一个范围,剪贴掉就可以。这100个点[x;y;z]=101*3的矩阵啊!
展开
 我来答
蜀莫深后筋j
2008-05-05 · TA获得超过620个赞
知道小有建树答主
回答量:346
采纳率:0%
帮助的人:184万
展开全部
利用“非数” 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

我都忘了,这个网站肯定可以

参考资料: http://www.iforchina.com/show.aspx?id=4468&cid=170

maoxuchen000
2015-09-10 · TA获得超过1.4万个赞
知道大有可为答主
回答量:3286
采纳率:78%
帮助的人:414万
展开全部
利用“非数” 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])
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
桖飞RZ
2020-03-20 · TA获得超过3812个赞
知道大有可为答主
回答量:3156
采纳率:30%
帮助的人:442万
展开全部
利用“非数”
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
我都忘了,这个网站肯定可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
FatCayman
2008-05-04 · TA获得超过512个赞
知道小有建树答主
回答量:626
采纳率:0%
帮助的人:268万
展开全部
我还没有学的那么深
但是似乎可以 一开始设定图形的显示区域 所以我想可以 一开始修改定义域到你需要的区域上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式