penghust 发表于 2010-8-27 13:21

不规则图形轮廓提取以及压力云图的绘制问题?

本帖最后由 ChaChing 于 2010-8-30 00:21 编辑

如题,
一个二维汽车声腔,要画出它的声压云图,由于是不规则图形,一直没有找到好的办法。
查到一个可以画出云图的程序,贴出来,大家探讨一下:

“matlab 中画不规则点的二维等值线图”
主要步骤:
主要思维,先把不规则点插值到规则的网格点上来,再用二维等值线画图函数画图
具体步骤:
NN=287;
fid=fopen(*:\*\*\PP.txt','r');%前两列分别代表x,y坐标,第三列代表对应的声压值;
b=fscanf(fid,'%f%f',);
fclose(fid);
xg=b(1,:);yg=b(2,:),zg=b(3,:);
=meshgrid(0:0.015:2.7,-0.7:0.01:0.4);
zz= griddata(b(1,:),b(2,:),b(3,:),x,y);
contour(x,y,zz)   就OK了
这里griddat的功能是将不规则的点插值到规则的网格点上去

======
用这个方法画出来的图,没有轮廓,如图

而实际的模型应该如图

******
如何才能把 轮廓提取出来?
附上文件 ‘PP.txt’




penghust 发表于 2010-8-27 14:16

或者可以先手动挑选出轮廓的坐标(这个很繁琐)
然后用 inpolygon 命令挑选出轮廓线内部的点,比如座椅内部的点,然后把内部区域涂白--
这个涂白有没有简洁的命令? 我还没找到,希望大家给点建议。

或者有没有其它软件,可以直接实现这些功能,免得在matlab里这么纠结。 谢谢大家

纠正个问题
zz= griddat(b(1,:),b(2,:),b(3,:),x,y);
应该是
zz= griddata(b(1,:),b(2,:),b(3,:),x,y);

penghust 发表于 2010-8-29 23:28

用Tecplot解决了该问题
大家可以参考
http://forum.vibunion.com/forum.php?mod=viewthread&tid=94862&pid=479525&page=1&extra=&from=home#pid479525

谢谢关注
赞tecplot强大的绘图功能

12345.1 发表于 2010-11-20 15:14

学习了

bainhome 发表于 2010-11-20 15:40

外部轮廓点提取参见convhull命令相关帮助

ChaChing 发表于 2011-3-28 00:40

回复 5 # bainhome 的帖子

使用convhull命令好像也不能提取外部轮廓点??

nmdpy11 发表于 2013-8-30 20:35

学习下,看看
页: [1]
查看完整版本: 不规则图形轮廓提取以及压力云图的绘制问题?