Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能

问题:

    Ansys workbench的框选功能只能按住Ctrl增加选项,却没有反向选择框选减少的功能!!!

Ansys workbench的connect创建连接非常方便,但是很多时候几何面的区域和实际想要做连接的区域大相径庭。这个时候一个较好的连接区域选择方法是使用element Faces进行连接区域的定义。但是遗憾的是ansys workbench的框选功能也是不咋滴,单元选择较为麻烦——没有反向选择,框选减除的功能!!!!

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图1


Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图2

   虽然两种方式对计算结果没有什么影响,但是第二个选着方式在甲方看来,仿真工程师是有认真在干活的。。。。。。。。。。

使用hypermesh的同事都知道,ansys workbench在鼠标框选这个功能上差了很多。Ansys workbench的框选功能只能按住Ctrl增加选项,却没有反向选择框选减少的功能!!!

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图3

解决方案:

    这里使用ansys workbench 的二次开发功能,增加一个针对单元面选择的ACT插件。实现框选增加和框选减除的功能,虽然不能与hypermesh的右键反选功能相比肩,但实际应用还是可以带来很多便捷之处,尤其使用快捷键操作后,有很大提升。

功能实现逻辑

   1.首先用户自己调整到element Faces 选择类型,程序读取当前界面中加亮的element face单元的id号并存储在global变量中。

   2.用户框选其它element faces单元,程序继续读取当前选择单元id号。再对global中存储的id号进行比较。

   3.如果是增加操作,就合并两次框选;如果是减除操作,就对global集合去除当前选择的集合。

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图4

具体实现方法:

    首先,创建xml文件——在mechanical界面上方创建新的按键。

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图5

再创建按键对应执行命令.py文件,按下对应按键后调用子程序。

示例:

Add Selection 按钮对应的子程序

# 在全局单元面集合基础上,增加新选择的单元面

def AddSelection(sender=None):

# 两个全局变量,均用于存储单元id和faceid

global backup_selections , global_selections

# 读取当前界面 加亮显示的单元

current_selection = ExtAPI.SelectionManager.CurrentSelection

# 保证当前选择类型为elementFaces

if current_selection.SelectionType != SelectionTypeEnum.MeshElementFaces:

print("请选择单元面")

return

# 对上一步global_selections中的单元面进行暂存到backup_selections,备用撤销操作

backup_selections.clear()

backupSelection()

# 当前新选择的单元面,添加到global_selections中

for i in range(len(current_selection.Ids)):

elem_id = current_selection.Ids[i]

face_idx = current_selection.ElementFaceIndices[i]

global_selections[elem_id][face_idx] = True

# 显示合并后的单元面集合

UpdateSelectionDisplay()

    

在ansys workbench 加载ACT插件,重启mechanical即可加载完成用户自己开发的ACT插件。

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图6

加载完成后操作示例:

    以创建和修正element Faces 为元素的Named Selection为例:

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图7

增加操作,先选定加亮集合1

点击current按键,将当前加亮的单元集作为操作对象

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图8

再框选/点选需要增加的单元,再点击Add 按键即可。(可多次累加,)

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图9

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图10

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图11

减除操作,先选定加亮集合2

点击current按键,将当前加亮的单元集作为操作对象

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图12

再框选/点选需要减少的单元,再点击Delete 按键即可。(可多次重复操作,)

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图13

Ansys Workbench制作ACT插件实现,快速框选element faces单元的功能的图14

创建快捷键:

以下内容为付费内容,请购买后观看

   1人购买

欢迎使用并指正 1.ACT插件程序内容xml文件和py文件以及图标 2.版本是2021R1,其它版本没有试,但估计也行。

App下载
技术邻APP
工程师必备
  • 项目客服
  • 培训客服
  • 平台客服

TOP

12
2
2