首页
发现
课程
培训
文章
案例
问答
需求
服务
行家
赛事
热门搜索
发布
消息
注册
|
登录
首页
/
文章
/
详情
二次开发下的仿真结果反复导图?ANSYS Viewer 自定义 UI 才是正解
精品
作者优秀
平台推荐
详细信息
文章亮点
作者优秀
优秀教师/意见领袖/博士学历/特邀专家/独家讲师
平台推荐
内容稀缺
仿真圈
6月前
浏览531
关注
大家好,我是小郭老师,硕士毕业于中科院,专注于运用 Python 深度集成 ANSYS 进行工程数值计算与仿真自动化开发,精通基于 Python实现ANSYS Workbench众多模块的全流程脚本驱动(建模、求解、后处理),并具备将复杂仿真流程封装为高效、可复用软件工具的专业能力,上一篇文章
效率直接拉满!Python+ANSYS二次开发,让我从此告别重复仿真
正式在我的仿真秀技术专栏为用户提供技术服务和视频教程。今天我继续给大家分享一些ANSYS二次开发方面的干货。
在ANSYS仿真工程师的日常工作里,
最头疼的场景之一莫过于仿真结果分享 了。
明明只是想让同事看一眼应力分布,对方却得安装几十个G的ANSYS主程序。想和客户同步模型装配情况、各部位的云图情况,反复导图片的操作又繁琐又容易出错。
其实,
ANSYS早就给我们准备了轻量化工具—— ANSYS Viewer
。它能直接打开AVZ格式的模型和结果文件,不用启动主程序。但是,原生Viewer没法集成到我们二次开发的业务流程里。今天就教大家一个硬核二次开发技巧:
把ANSYS Viewer嵌入自定义UI界面 ,打造专属的仿真结果查看平台
!
零基础快速入门Ansys Workbench二次开发应用
01
先搞懂基础:AVZ文件与ANSYS Viewer
在动手开发之前,我们得先把两个核心工具的用法摸透。
1. 什么是AVZ文件?怎么导出?
AVZ是ANSYS专属的轻量化模型文件格式。它能同时打包三维几何模型和仿真结果数据。
导出路径特别简单:打开ANSYS Mechanical,在模型树选中需要导出的内容,直接用 Export功能 就能生成AVZ文件。
2. ANSYS Viewer核心功能,够用又好用
ANSYS Viewer是基于Web GL的三维查看器,
它的优点就是轻量化、零门槛 。
无需安装ANSYS主程序,双击就能打开AVZ文件;支持模型平移、旋转、缩放,还能生成爆炸图查看装配结构,比如铰链四杆机构的零件配合关系一目了然;鼠标悬停在模型任意点位,就能直接显示该位置的仿真结果数值。
3. ANSYS Viewer安装指南(超简单)
(1)去ANSYS官方网站下载2024 R1版本安装包(Windows 64-bit)
(2)解压压缩包到指定位置,解压、运行ANSYSViewer.exe
(3)选择以ANSYSViewer.exe打开 AVZ文件
02
为什么要做二次开发?嵌入UI的刚需场景
原生的ANSYS Viewer虽然好用,但在工程实战中还是不够灵活,无法根据企业需求定制功能按钮,更无法和我们的项目管理、数据归档流程结合。
我们的二次开发目标很明确:
打造一个集文件选择、模型查看、结果分析于一体的定制化工具
。 实现思路也不复杂: 用Python+PySide6搭建UI界面,通过调用外部进程启动ANSYS Viewer,再把Viewer窗口嵌入到我们自定义界面中 。
03
核心实战:代码逐行拆解,小白也能看懂
接下来就是最关键的代码环节,我们会把核心逻辑拆解开,确保大家能跟着复现。
1. 环境准备:先装这两个库
开发前需要安装两个Python库,直接用pip命令:
pip
install PySide6 pywin32
PySide6:用来搭建我们的自定义UI界面
pywin32:用来操作Windows窗口句柄,实现Viewer嵌入功能
2. 关键函数解析: find
window
by_pid
这个函数是实现窗口嵌入的核心,作用是 根据进程PID找到对应的Viewer窗口句柄 。具体思路为,枚举所有可见窗口,再反查窗口对应的PID,才能精准定位到Viewer窗口。
3. 主窗口类开发:界面布局+核心逻辑
主窗口类 MainWindow 是我们整个工具的载体,主要分为 界面布局 和 核心方法 两部分。
(1)界面布局:简单又实用
在
init
初始化函数中,我们完成了整个自定义 UI 界面的搭建,界面结构清晰地分为三个核心区域:
路径输入区,通过两个输入框分别填写 ANSYS Viewer 的程序安装路径和 AVZ 文件的本地存储路径,为启动 Viewer 和加载模型提供基础参数。
功能按钮区,仅设置了一个 “Open And Embed” 按钮,点击该按钮即可触发后续的 Viewer 启动与嵌入逻辑。
窗口容器区,作为专门承载嵌入后的 Viewer 窗口的区域,是实现界面整合的关键载体。
除了界面布局的定义,初始化函数中还创建了进程( QProcess )与定时器( QTimer )两个核心组件。
其中,进程对象用于启动外部的 ANSYS Viewer 程序,实现独立进程的调用与管理;定时器则负责周期性触发 try_embed 方法,轮询检测 Viewer 窗口是否创建就绪。
通过进程与定时器的配合,能够解决 “进程启动≠窗口就绪” 的问题,精准捕捉 Viewer 窗口的创建时机,确保窗口嵌入操作在合适的时机执行,避免因窗口未初始化完成导致的嵌入失败,让整个嵌入流程更稳定、更可靠。
(2)核心方法:三步实现嵌入
第一步: clear_container ——清理旧窗口,避免残留 这个方法用来处理多次点击按钮的情况,防止旧的Viewer窗口和进程占用资源。
第二步: open
and
embed ——启动进程,开始轮询 点击按钮后,先清理旧窗口,再启动Viewer进程,最后开启定时器轮询窗口状态。
这里要注意: process.start() 只是启动了进程,不代表Viewer窗口已经创建,所以需要定时器周期性检测。
第三步: try_embed ——核心嵌入逻辑,一步到位 这是整个程序的灵魂方法,实现了“找窗口→隐藏原生窗口→嵌入→显示”的完整流程。
4. 运行代码,看效果!
把完整代码保存为 .py 文件,直接运行:
确认 viewer
edit 和 file
edit 里的路径是你本地的正确路径,如下图所示
点击“Open And Embed”按钮
04
总结与拓展:二次开发的价值不止于此
通过这个小案例,我们实现了一个看似复杂的功能,但核心代码其实只有几十行。这就是ANSYS二次开发的魅力: 用低成本的Python代码,解决高价值的工程问题 。
在完成 ANSYS Viewer 嵌入自定义 UI 的基础功能后,还能基于这个框架进一步拓展实用功能,让工具更贴合工程实战需求。比如,增加多文件批量加载功能,支持同时打开多个 AVZ 模型并实现对比查看,方便工程师快速比对不同工况下的仿真结果;还能基于ANSYS Viewer的功能,在模型上直接添加工程注释、关键尺寸或问题标注,提升结果沟通的效率。
如果大家有这方面的需求,欢迎直接访问仿真秀官网或APP搜索【小郭老师】,我们可以做进一步的沟通讨论~
扫码立即咨询我
系统化二次开发教程
针对想要入门或进阶ANSYS二次开发的朋友,提供从基础到高阶的系统化教程《
ANSYS Workbench & Mechanical企业级二次开发程序与Python应用入门进阶
》,课程内容包括:
基础篇:基于 Python 的 ANSYS Mechanical 脚本开发,能够实现热力耦合、模态分析等工况求解、后处理结果批量导出
进阶篇:Workbench脚本化操作与自动化,掌握批处理脚本开发、Pycharm & ANSYS交互等关键命令
项目篇:某大型商业化电站高温熔盐储罐单向热力耦合下的多工况计算与软件开发,结合行业案例,手把手教学工具封装与UI界面开发,让知识快速落地。
在本系列课程中,我还为付费用户提供 VIP群 进行交流、 答疑服务 、 持续加餐 内容、提供 定制化培训和咨询服务 、 仿真人才库高薪内推就业 、仿真秀还提供 奖学金 、学完此课程,推荐学习者报名参加工程仿真技术(CAE分析职业能力等级评价证书)。
以下是
课程大纲及主要内容 :
在平常,我还会于仿真秀公众 号和仿真秀平台首发各种ANSYS二次开发技巧,并创建了二次开发交流群,
并于群里分享各种二次开发的源程序
。大家只需分享文章到朋友圈,即可凭借截图联系官方客服,还可以加入二次开发技术交流群。
扫码加入ANSYS二次开发
技术交流群
05
💡 写在最后
ANSYS二次开发不是“锦上添花”,而是AI时代工程仿真人的“必备技能”。
无论是想要提升个人工作效率,还是需要为企业定制化仿真解决方案,都可以随时找我交流。
后续我也会持续分享ANSYS二次开发的干货技巧、脚本案例、实战经验,助力大家少走弯路、快速进阶。有二次开发需求、学习疑问,或是想了解具体案例细节,欢迎私信我聊一聊~
来源:仿真秀App
登录后免费查看全文
立即登录
Mechanical
LS-DYNA
Fluent
Workbench
HyperMesh
UDF
电路
二次开发
爆炸
材料
机器人
控制
装配
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2026-02-02
最近编辑:6月前
仿真圈
技术圈粉 知识付费 学习强国
关注
获赞 12081
粉丝 23463
文章 4579
课程 276
点赞
收藏
0/200
清空
提交
还没有评论
课程
培训
服务
行家
ASNYS WORKBENCH基于UP耦合算法和非线性自适应网格的齿轮锻造挤压仿真
近邻干扰作用下驰振电磁俘能研究
非周期性任意网格RVE_分层失效
ANSYS流-固耦合计算方法与实例解析公开课
相关推荐
ANSYS显示动力学案例1-弹丸冲击(侵彻)靶板的破坏仿真-欧拉法和拉格朗日法材料本构模型及失效机理
ANSYS&ADAMS机械狗核心部件多物理场耦合仿真高级案例电磁流体热声学结构动力学实战
结构及流体付费答疑
LSDYNA甲烷气体在管廊巷道内爆炸仿真分析讲解
最新文章
MecAgent融资300万美元,推出CAD AI助手和3D转2D工程图平台
Abaqus 做汽车 NVH,需要哪些能力?——Abaqus NVH 学习笔记(十)
09 Fluent教程 | Fluent meshing 图形界面自定义
有限元每日一个知识点:什么是应力奇异?仿真报告最容易踩的坑
漂浮式风电基础疲劳计算方法比较研究
热门文章
通用/泛亚/蔚来/弗迪/上海电驱动等百位新能源专家确认发言,易贸三电活动6月苏州见
【机器人】2023-2024 Vex机器人竞赛Over Under小车结构3D图纸
【机器人】爬树小车3D数模图纸 Solidworks20设计
【机器人】FRC 772 Stark机器人车三维建模图纸 solidworks设计 附STEP格式
【机器人】isef crawling四足爬行机器人模型3D图纸 Solidworks设计
其他人都在看
动力电池系统制图规范
管道应力校核合格设备仍损坏?管道柔性与喷嘴载荷是核心隐患|懿朵科技
HIV-1脂质体全尺寸MD模拟
小米YU7的“假屏幕”,把阿维塔07的“真屏幕”按在地上摩擦了?天际屏VS远端屏谁更强?
NVH困局与破局:从“堆材料”到“玩物理”,新能源汽车如何练就“消音”神功?
VIP会员
学习计划
福利任务
下载APP
联系我们
微信客服
联系客服
人工服务时间为周一至周五的9:30-19:30
非工作时间请在微信客服留言
客服热线:
4000-969-010
邮箱:
service@fangzhenxiu.com
地址:
北京市朝阳区莱锦创意园CN08座
帮助与反馈
返回顶部