怎样在批处理输出图片?实验记录
实验记录我用delphi调用ansys,让ansys在后台计算。
command3是放在C:\Program Files\Ansys Inc\v90\ANSYS\apdl里的自编宏文件,文件名放在start90.ans中。ansys90.exe被调用后读取command3里的apdl命令,如下是command3中几种图象输出的命令组合,思路来自simwe论坛中以“图片”为关键词搜出的帖子,但都未能实现图片输出,望高手指点。
直接运行ansys,直接读入command3运行,command3用的是/MENU,GRPHimage
结果没有打开gui功能,不产生图片
直接运行ansys,直接读入command3,command3用的是image命令。
结果没有打开gui功能,不产生图片。
直接运行ansys,直接读入command3运行,command3用的是/show,jpeg, /SHOW,CLOSE
结果没有打开gui功能,不产生图片
直接运行ansys,直接读入command3运行,command3用的是
PLNSOL, EPTO,EQV, 0,1.0 !米泽兹总应变,mises total strain
/REPLOT
/ui,copy,save,bmp
结果没有打开gui功能,不产生图片
直接运行ansys,直接读入command3运行,command3用的是
/graphics,full
/show,pic,jpeg
/SHOW,CLOSE
结果没有打开gui功能,产生了一个名为pic的文件,但是没有内容
直接运行ansys,直接读入command3运行,command3用的是
/graphics,power
/show,pic,jpg
/SHOW,CLOSE
结果没有打开gui功能,根本不产生文件
[ 本帖最后由 Denzel 于 2008-5-27 10:11 编辑 ]
回复 楼主 的帖子
batch中/ui和/image是不行的 可以采用的方法有以下两种
你用/show 一般需要replot一下保证是你需要的图片 而且你/show命令参数理解有误 请再看看帮助
/show,jpeg,,
/rep
/show,close
请测试
还有用report generator可以实现
首先加载包在apdl程序前
~eui,'package require ansys'
设置图片路径
~eui,'ansys::report::setdirectory "Direc_name"'
需要拷贝的时候运行下面命令
~eui,'ansys::report::imagecapture "caption"'
保证成功 用/show确实需要replot一下你要显示的东西。
比如说你要显示网格,可以这么写:
/show,jpeg,,0
pletab,topo
JPEG,QUAL,100,
JPEG,COLOR,2
/GFILE,480,
eplot
/show,close
所以希望可以指定文件名,/rename出错
可以出图了,但另一个问题出现了。/show产生的图片文件名随执行次数增加,而我只生成一张图,所以希望可以指定文件名。我在/show,close后面接了/rename,出错显示找不到/show生成的文件,但是我在工作路径下已经看到它生成的文件了呀?
命令流/SHOW,JPEG,,
PLNSOL, EPTO,EQV, 0,1.0!米泽兹总应变,mises total strain
/SHOW,CLOSE
/rename,sxd000, , ,total_strain,, !sxd000是生成的图片文件output出错信息
unable to open the /rename "from" file
[ 本帖最后由 16443 于 2008-5-28 11:27 编辑 ] 帖子超过,360分钟不能编辑,知错也不能改。 /show产生的图片文件名随执行次数增加,而我只生成一张图
这样可以直接用硬coby啊。 Notes
Renames a file. Ex: /RENAME,A,,,B renames file A to B in the same directory. /RENAME,A,DAT,,,INP renames file A.DAT to A.INP. On all systems, this command will overwrite any existing file named B. See the Operations Guide for details. Only ANSYS binary files should be renamed. Use /SYS and system renaming commands for other files.
Renaming across system partitions may be internally done by a copy and delete operation on some systems.
This command is valid only at the Begin Level.
应该是这里有问题 给你一个参考
/nopr
!This is a macro for renaming a group of files in a directory
!It works at ansys5.6 and later
! arg1 = extension of files to change
! arg2 = string to add to file name
! ex:renam,'tif','_1'
/dirget,_str,all,arg1 ! get list of files with requested extension
/nop
*GET,_n,PARM,_str,DIM,z ! determine number of files
*if,_n,gt,0,then
*dim,_str2,string,64,_n ! create working array
*do,_i,1,_n
_str2(1,_i) = strcat(_str(1,1,_i),arg2) ! add string to filename
*enddo
*do,_i,1,_n
/rename,_str(1,1,_i),_str(1,2,_i),,_str2(1,_i),_str(1,2,_i) ! rename
*enddo
_i=
_str2(1,1)=
*endif
_n=
_str(1,1,1)=
/gop 原帖由 16443 于 2008-5-28 11:30 发表 http://www.chinavib.com/forum/images/common/back.gif
这样可以直接用硬coby啊。
批处理方式下硬拷不好使。
/ui,copy,save,bmp 原帖由 16443 于 2008-5-28 12:07 发表 http://www.chinavib.com/forum/images/common/back.gif
给你一个参考
*do,_i,1,_n
/rename,_str(1,1,_i),_str(1,2,_i),,_str2(1,_i),_str(1,2,_i) ! rename
*enddo
这个程序核心部分还是用/rename,可是在现在/rename不好使。
[ 本帖最后由 Denzel 于 2008-5-28 15:13 编辑 ] 根据这个地址http://www.simwe.com/forum/thread-834579-1-1.html,用finish推出求解器就到了Begin level。我用finish试过了,仍旧不好使。
所以是不是和这句有关“Only ANSYS binary files should be renamed”,jpeg和bmp文件算不算binary file?如果不算,怎样对jpeg重命名? 批处理情况下/rename二进制文件好使,但图片不好使,下帖有测试程序。
批处理方式下怎样对生成的图片改文件名(jpeg)?
http://forum.vibunion.com/forum/thread-65490-1-1.html
问题解决了,参看下面这个帖子
Ansys在批处理(batch)方式下的图形图片输出(/show,/rename)http://www.simwe.com/forum/viewthread.php?tid=834465&page=1&extra=page%3D1
页:
[1]