首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >一文读懂!CAE 软件二次开发的应用意义

一文读懂!CAE 软件二次开发的应用意义

原创
作者头像
智造AI-CAE
发布2025-05-14 15:17:19
发布2025-05-14 15:17:19
6350
举报

HyperWorks二次开发功能

HyperWorks二次开发指在HyperWorks基础上使用其提供的Tcl接口函数进行编程,扩展HyperWorks本身的功能,以达到用户高级使用需求的目的。

HyperWorks发布和提供软件本身的同时,也发布其二次开发的相关API函数及其参考文档,在HyperWork12.0下提供了HyperWorks Desktop Reference Guide文档用以记录和说明二次开发的方法和其提供的API函数。

API函数根据其对应的具体应用程序分为如下几种:

  • HyperWorks桌面应用程序API
  • HyperView专属API
  • HyperGraph专属API
  • 其他对应函数API

二次开发资源

HyperWorks二次开发采用Tcl/Tk作为其标准开发语言,提供Tcl的API接口函数。Tcl/Tk是一种流行的跨平台脚本编程语言,其Tk包提供了一种简便、易用的界面元素。关于Tcl/Tk的使用方法请参考Tcl/Tk的相关书籍。

HyperWorks API函数

HyperWorks以对象操作的形式为其中定义的对象提供API函数,在HyperWorks Desktop Reference Guide的下列位置:

HyperWorks Desktop Reference Guide 🡪 HyperWorks Desktop Reference Guide 🡪 Programming with Tcl/Tk Commands

HyperWorks API 函数
HyperWorks API 函数

开发环境&工具

HyperWorks12.0提供了HyperWork二次开发的集成开发环境(IDE), ScriptView。提供了如下功能:

  • 创建和管理Tcl脚本
  • 编辑和修改脚本程序
  • 脚本执行窗口
  • 脚本Debug工具
  • 启动ScriptView:
  • 在HyperWorks软件菜单找到ScriptView
  • 在HyperWorks Desktop上点击按钮“Debug Tcl/Tk Scripts”

ScriptView窗口:

ScriptView界面
ScriptView界面

运行开发脚本

在HyperWorks中,可以通过下列方法运行Tcl/Tk脚本:

  • 在下拉菜单中,选择Run🡪Tcl Script
  • 在Standard toolbar,点击“Run Tcl Script”按钮
  • 注册Preference file
  • 采用带参数-tcl <文件名>的方式启动HyperWorks
  • 采用Altair Process Manager运行流程自动化模板
  • 在HyperWorks “Command 窗口”编写/载入Tcl脚本
  • 其中最后一种方法,在“Command 窗口”编写和载入Tcl脚本,在开发中最为常用,这种方法可以快速的运行编写地脚本代码,查看其工作结果,测试代码的有效性等交互操作。是HyperWorks二次开发中最重要的调试手段。
  • 对 HyperWorks 而言,通过 View->“Command Window”打开和关闭Command窗口。

HyperWorks 桌面环境

  • HyperWorks Desktop是一系列软件的集合,在HyperWorks12.0上,在原有的基础上将HyperMesh集成到了HyperWorks Desktop中,实现完美的无缝接合。关于HyperMesh方面的二次开发请参照相关章节。
  • HyperWorks Desktop包含HyperView,HyperGraph,HyperGraph 3D,TexView, MediaView,MotionView 和 HyperMesh。对HyperWorks进行二次开发也分为对上述软件的二次开发,每个单独的模块都有其特有的部分API函数,HyperWroks提供一个完整的二次开发体系,可以方便的在不同的应用模块间进行切换和组合工作,从而实现很多复杂而强大的功能。
  • 当HyperWorks桌面环境启动时 ,一个新的会话<session>将会被创建,它包含一个项目<Project>(有且只有一个),项目由一个或多个页面<Page>构成,页面是主要的图形界面(GUI)输出区域。每个页面中又可以包含1-16个窗口<Window>,每个窗口都可以是HyperWorks软件中的一个模块,如HyperView,HyperGraph,MotionView,HyperGraph3D等。
  • 一个会话中可以有任意个页面,但是每次只能有一个页面被显示并可操作,这样的页面就是当前页面。类似的,当前页面中只有一个窗口是活动的,称为当前窗口,HyperWorks主窗口可以被划分成为6个主要区域如下图
HyperWorks
HyperWorks

脚本语言

HyperWorks桌面软件采用的是一个开放的系统架构,可以使用Tcl/Tk对它进行功能扩展和二次开发。通过内置的Tcl/Tk,用户能够创建宏,自定义弹出菜单,对话框等其他界面部件。

当HyperWorks启动时,初始化Tcl/Tk解释器,载入一系列脚本命令,建立系统运行的命令层。HyperWorks本身包含多个应用模块,每个应用模块都与一个命令相对应,载入不同的应用模块时,命令层就会载入相应的脚本命令,形成该应用的用户界面和命令层环境。这些命令是

post ⇒ HyperView

hwplot ⇒ HyperGraph 2D plot3d ⇒ HyperGraph 3D texteditor ⇒ TextView

video ⇒ MediaView

model ⇒ MotionView

软件级层

HyperWorks桌面软件包含多种应用,在其启动时首先启动启动HyperWorks软件的基础应用层和软件架构,然后根据用户需要加载不同应用层如HyperView,载入该特定应用层的用户界面和面板。在命令层中也有同样的行为,命令层也被分成两个级别,首先加载用于构建HyperWorks基础的Tcl/Tk命令集合,然后根据应用的不同加载特定的Tcl/Tk命令集用于构建特定应用的面板及工作环境。

对象分级结构图

如下针对两个不同的级层,分别给出他们的“对象分级结构图”,清晰的表达出基础应用层和各个应用包含的对象及其继承和包含关系。

HyperWorks基础应用层“对象分级结构图”:

HyperWorks
HyperWorks

如下针对两个不同的级层,分别给出他们的“对象分级结构图”,清晰的表达出基础应用层和各个应用包含的对象及其继承和包含关系。

HyperView扩展应用层“对象分级结构图”(灰色框显示HyperWork的基础应用层):

HyperWorks
HyperWorks

HyperGraph扩展应用层“对象分级结构图”(灰色框显示HyperWork的基础应用层):

HyperWorks
HyperWorks

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档