首页/文章/ 详情

ANSA二次开发的学习之路

1年前浏览7170

        学习ANSA二次开发也有一段时间了,在做项目的过程中也逐渐积累了一些开发经验。ANSA不管是界面操作还是二次开发的相关学习资料相较于Hypermesh来说都少得可怜,网上仅有的例子也只能是帮助入门。想要真正掌握ANSA二次开发,能够利用其在项目中真正提高效率、解决问题还需要更加系统地学习,为了后边的同学们能够少走我踩过的坑,这里我特别写了一篇关于ANSA二次开发的学习路线的文章,希望能够帮助到已入坑和即将入坑的小伙伴。

        ANSA使用Python语言进行二次开发,针对ANSA编写了相应的库,大家开发过程总在使用相应的库时import进来即可。当然进行ANSA二次开发并不需要过高的编程语言,相反更需要的时对于ANSA界面及操作的了解,这里的原因后面细说。在学习Python二次开发前了解Python的字符串、列表、数字、字典、循环(for/while)、函数、类(基础)相关知识点就行了,这是最基础的,如果想让你的程序运行的更快,代码更简洁,高级的语法是必不可少的。但是我认为初学者先让代码能够跑起来,实现相应的功能就好了,优化留给以后。至于Python相关学习视频,网上有很多,这里也就不做推荐了。

        学习完Python基础语法后你就成功了一半,接下来你只需要了解ANSA自带的Python库中对应界面操作的函数即可。工欲善其事必先利其器,下面先介绍一下ANSA自带的二次开发工具,除了不能自动补充外其他的功能还是能够满足日常需求的。

        以ANSA19为例,这里说句题外话,如果大家开发的程序需要运行在低版本的ANSA,建议大家开发时候使用低版本自带的开发工具,因为高版本会兼容低版本的程序运行。

        首先打开界面,有两种方式可以进入ANSA二次开发界面:

  1.      Tools-Script-Script Editor

    1.png

2.     界面上方的工具栏

2.png

        打开后会出现下图的界面,最常用的就是中间的编辑界面,右侧的函数搜索界面,下方的结果输出与函数帮助显示界面。右侧的函数搜索界面能够帮助我们快速定位到需要的函数,双击后还能够在下方的Help窗口中显示函数的参数、使用方法以及例子,这是我们学习二次开发的最好工具,当然你也可以在ANSA的官方网站中找到在线的帮助文档。如果某一个窗口缺失,大家可以从最上方的菜单栏中的Window中调取出来。

3.png

        在进行二次开发前通常我会手动在界面中进行相应的操作,一是理清楚思路,二是了解每一步操作中的命令名称。ANSA界面中的每一步操作90%以上在二次开发中都有对应的函数,且按钮或操作的名称与函数名称基本一样,是不是极其方便。

        这样说可能还是有些小伙伴不太明白,我下面举个例子。

4.png

        假如我们在界面中经常会进行删除实体的操作,就是下面这个按钮

5.png

        我们把鼠标放在上面会出现图标的名字以及功能解释。当然你也可以通过右键工具栏,勾选Show labels来直接显示按钮的名称。记住按钮的名字:Delete

6.png

        接下来我们进入Script Editor界面中,在右侧的函数搜索栏搜索Delete,这里大家注意ANSA中自带的库中的函数每一个单词都是大写开头,其余字母小写。

7.png

        可以看到有很多关于Delete的命令,有些是关于界面中的删除操作例如guitk库中的,有些一些是excel文档中的删除操作比如带xlsx的(没错ANSA二次开发可以对excel文档进行操作),而base库中的一般是对实体进行删除操作。

        上图红框中的命令是最常用的删除实体的操作,这里通过函数的名称很容易就能理解这个命令的作用。确定好函数后我们双击,查看左下角的Help窗口中的详细帮助信息。这里我们以base.DeleteEntity()函数为例。双击后Help窗口中有下述信息

8.png

        我们逐一来看:

1部分是函数的名称及参数信息

2部分是解释函数的用途,有时还会提示你一些注意事项,大家仔细阅读

3部分是函数参数的具体用法,这部分是关系到你写出来的程序好坏的一个关键性因素,有时候修改默认的函数参数能够大大提高程序的运行效率

4部分是函数的返回值,很多时候我们需要利用函数的返回值进行下一步操作

5部分是帮助示例,看懂了例子基本这个函数你就了解其使用方法了。

        有时候按钮或操作的名称和函数的名字可能相差很多,这里就需要一些经验了。比如我们对塑料件以及铸件进行网格划分的Casting操作,在二次开发中的对应命令为MidSurfAuto()。完全没关系好不。当时我也是花了老长时间才找到这个命令。

9.jpg

        最后还有一个小技巧教给大家,其实ANSA自带了宏录制功能,虽然只能录制一部分操作,但是对于初学者来说却可以提供一定的帮助。按照下图顺序将Record的工具条调出。

10.png

        我们打开录制(红色按钮),如果该命令支持录制,最右侧的电灯符号会变黄,完成操作后点击蓝色按钮会在ScriptEditor中出现刚刚操作对应的代码。例如我们进行创建Point的操作,这里我们以坐标形式进行创建,会出现如下面右图所示的代码。

11.png12.png

        当然想要学好ANSA二次开发实际上还是要下很大的功夫的,有很多命令、很多参数也是需要很多遍试错才能了解具体用法和注意事项,以后我也会在仿真秀上推出《ANSA二次开发从入门到精通》课程,从:1.实体概念及用法2.几何清理3.网格划分4.连接转换及实例化5.GUI界面设计五个方面进行更加细致讲解,希望能够帮助到大家。

二次开发代码&命令网格处理几何处理船舶航天航空工程车汽车新能源静力学结构基础ANSAHyperMeshFemap
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2022-11-08
最近编辑:1年前
ANSA攻城狮
硕士 | 仿真工程师 用编程解放双手
获赞 125粉丝 166文章 14课程 6
点赞
收藏

作者推荐

未登录
还没有评论

课程
培训
服务
行家

VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈