不规则图形轮廓提取以及压力云图的绘制问题?
本帖最后由 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’
或者可以先手动挑选出轮廓的坐标(这个很繁琐)
然后用 inpolygon 命令挑选出轮廓线内部的点,比如座椅内部的点,然后把内部区域涂白--
这个涂白有没有简洁的命令? 我还没找到,希望大家给点建议。
或者有没有其它软件,可以直接实现这些功能,免得在matlab里这么纠结。 谢谢大家
纠正个问题
zz= griddat(b(1,:),b(2,:),b(3,:),x,y);
应该是
zz= griddata(b(1,:),b(2,:),b(3,:),x,y); 用Tecplot解决了该问题
大家可以参考
http://forum.vibunion.com/forum.php?mod=viewthread&tid=94862&pid=479525&page=1&extra=&from=home#pid479525
谢谢关注
赞tecplot强大的绘图功能 学习了
外部轮廓点提取参见convhull命令相关帮助 回复 5 # bainhome 的帖子
使用convhull命令好像也不能提取外部轮廓点?? 学习下,看看
页:
[1]