找回密码
 注册
Simdroid-非首页
查看: 119|回复: 6

如何在指定的边界内画等值线?

[复制链接]
发表于 2009-9-23 23:42:47 | 显示全部楼层 |阅读模式 来自 意大利
请问如何爱指定的边界内画等值线?
具体如下:
给定了一个边界,不一定是规则的图形,想在其中画等值线,外部无等值线。我做了一下,程序如下:
clear all;
close all;

[x1,y1]=scircle1(0,0,1);
[x2,y2]=scircle1(0.5,0.5,1);
[x3,y3]=polybool('intersection',x1,y1,x2,y2);

syms x;
syms y;

z=x+y;

[THETA,RHO]=cart2pol(x3,y3);
[th,r]=meshgrid(THETA,0:0.1:RHO);%我知道这个部分肯定有问题,但是不知道怎么改
[X,Y]=pol2cart(th,r);

Z=subs(z,{x,y},{X,Y});

figure;
hold on;
plot(x3,y3);
[c,h]=contour(X,Y,Z,10);
clabel(c,h);
得到的图形如下:
请帮帮我,帮我去掉外部那些等值线!谢谢!万分感谢!file:///C:/Users/judy/Desktop/1.jpg
 楼主| 发表于 2009-9-23 23:43:22 | 显示全部楼层 来自 意大利
Simdroid开发平台
为什么我上传不了我的图呢?
回复 不支持

使用道具 举报

发表于 2009-9-24 18:59:12 | 显示全部楼层 来自 广西贵港
surfer中有白化功能,我想其实现也许是给定边界,对网格化数据处理。
在MATLAB没发现这么实用的功能,非要用的话,可以如下处理
将边界外的图形用白色填充
PS:绘图建议用SURFER,GRAPHER

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2009-9-24 19:56:35 | 显示全部楼层 来自 意大利
哦!谢谢!我来试试!
回复 不支持

使用道具 举报

 楼主| 发表于 2009-9-24 20:14:27 | 显示全部楼层 来自 意大利
这个是matlab命令吗?我怎么没找到啊?能指点一下吗?谢谢!
回复 不支持

使用道具 举报

 楼主| 发表于 2009-9-30 21:48:19 | 显示全部楼层 来自 意大利
我已经做好了!是在matlab下实现的,用的是三楼朋友的思想!将周围白化!
不过我想可以通过限制边界来实现的,可是我还没想到好的方法!我会继续努力!
顺便说一下,matlab中可用patch命令来使周围区域白化!

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2011-9-11 09:39:10 | 显示全部楼层 来自 大连理工大学
收藏,实用。
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-6 08:46 , Processed in 0.044920 second(s), 19 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表