又是很久没更新博客了,俨然是一个惭愧低产的2013啊!人不给点压力不行,前天新买了个好一些的空间,期待2014年在这个10kn上多耕耘,多收获。
这两天发现了一个小技巧,挺有意思。问题源自于一位朋友的需求:ANSYS应力计算结果云图中,可以显示结构在哪个部位产生了多大的应力,但是我若想知道某个范围的应力占到整个结构面的多大面积,怎么破?
我能想到的,有四种思路:
1、首先,求出结构面上所有节点数量,这个用nsel就可以搞定;然后用一个判断语句找出应力大于某个区间范围的节点数,再做商;
2、输出成图片,用AutoCAD导入作为背景,用多短线一点一点描出来,再设定面域,用CAD求面积;
3、输出成图片,用Matlab图像处理工具箱中的相关命令来求面积,这是我能想到的最复杂的一种方法,具体流程可以参考这篇求叶片面积的文章。
4、用PhotoShop计算面积。
好了,我在开头提到的“简便方法”,就是用PS搞定的。
首先科普一下,PS处理的都是位图,在位图中,图片由像素点组成,也即是说像素点的多少和面积大小成正比。所以我们只需要研究像素点的比例就可以了。
首先用魔术棒工具选择关注的区域,为了增强精度,可以设置羽化为0,并且去掉边缘平滑选项。
对于选多了的区域,用选取工具进行修理:
调出“窗口>直方图”视图,看到视图的左下角了么?“像素:218295” 就是这里了,记下这个数字。
用同样的方法,对于本例,可用矩形选区工具,选择外面的方形面积,得到结构面总像素数量,二者作商即可。
那么如何得到整张图的像素值呢?图像>图像大小 对话框:
宽度乘以高度就是整张图片的像素值了,不过这个像素值是包括结构面以外空白区域的,就没实际意义啦。
我只想说这个方法对3维的结构就失效了~
@周SIR 当然,但是三维结构就不会只求一个“面积”啦