Hypermesh/Hyperview/ABAQUS 二次開發中新建下拉菜單的方法

       在有限元軟件使用過程中,有時候需要二次開發,編寫一些腳本,以實現相應的功能。在不同的軟件下,往往對應相應的執行語句,比如hypermesh ,采用的腳本語言是tcl 語言,在使用中既可以通過在命令行中輸入"source { ***.tcl}", 或者在菜單欄點擊“Edit>Tcl Tk Script" 調用相應的腳本,在abaqus 中,可以在命令行中輸入”execfile(**.py),或者點擊“File>Run Scripts",然而,每次使用過程中,使用者都需找到執行腳本的路徑,才能執行相應的代碼,因而也就都只是適應于單個腳本,對于多個腳本的開發,就有一些捉襟見肘了,通過在軟件中新建下拉菜單,根據用戶習慣開發相應的功能,讓用戶通過點擊鼠標或者使用快捷鍵就能調用相應的功能模塊,是一件十分有意義的事情。本人通過查閱相應的官方的文檔,發現了分別在hypermesh/hyperview/abaqus實現了增加下拉菜單的方法。

1. 相關效果如下:

hypermesh

pic1.png

Hyperview

pic2.png

abaqus 

pic3.png

2. 接下來,我將闡述如何實現以上功能。

2.1 hypermesh

hypermesh 在開始啟動時候,可以通過在啟動目錄設定一個名為”hmcustom.tcl“的文件以實現相關功能的定制,相關幫助文檔如下:

pic4.png

      默認狀態下,安裝路徑(可以通過"pwd"查詢安裝路徑),不存在hmcustom.tcl 文件,因此需要新建該文件。

     其中的關鍵代碼是“top_menu [hm_framework getpulldowns] 獲得菜單的api" 來操控相關的菜單,進而通過增加菜單來擴充相關的功能。

然而,使用該方法(在安裝目錄增加hmcustomt.cl 文件的方法)來增加下拉菜單存在一個bug,即在使用過程中當導入新的模板時(比如在使用中導入材料卡片時),該新建菜單會消失,也就是說hmcustom.tcl 今在啟動時候執行一次,當菜單欄更新時,hmcustom.tcl 不再執行,因此新建菜單會消失。

解決該問題的方法是在安裝目錄下新建一個名為”userpage.mac"的文件,通過該文件在Utility 新建一個按鈕,本文中姑且命名為“Command",當NewMenu 消失之后點擊該按鈕,調出新建菜單(本文中的”NemMenu"),且看下圖:

pic5.png

userpage.mac也是tcl 語句,通過執行“EvalTclScript   hmcustom.tcl"" 來調出菜單欄。

需要注意的是,hmcustom.tcl 和userpage.mac 都需要安裝在安裝目錄,使用者可以通過在命令行中敲下“pwd" 來獲得,如上圖所示的”C:/Users/hunan/Documents“ 即為安裝目錄。

2.2 hyperview

hyerview 在菜單欄中增加下拉菜單可以通過修改系統文件preferences.mvw完成。

本人的安裝路徑在”E:\Program Files\Altair\2018\hw" 目錄下,本文的第二張圖通過在此文件中增加以下代碼完成。

*Id("HyperWorks v17.0")

*BeginDefaults()

*BeginMenu(custom_menu,"NewMenu")

*MenuItem(dummy,"Menu Script1",TCL, "C:/mytcl.tcl")

*Separator()

*BeginMenu(filter_menu1,"Menu Script 2")

*MenuItem(dummy1,"Sub Menu Script 1", TCL,"C:/mysubmenu.tcl")

*EndMenu()

*EndMenu()

2.3 ABAQUS 

   在ABAQUS 增加下拉菜單的方法比較多,本文僅介紹最簡單的一種,即通過 點擊”Plug-in>Abaqus >RSG Dialog Builder"的方法通過綁定按鈕和相關函數來完成。

pic6.png

 用戶可以通過綁定可GUI和Kernel 來完成RSG的生成。

pic8.png

安裝之后,通過保存相關設置,abaqus 會相應的abaqus_plugins文件,下次打開之后,相應的按鈕會出現在plugs-in 菜單欄之下。

通過相應的設置即可分別在hypermesh/hyperview/abaqus 建立相應的下拉菜單,開發者可以借助這些菜單,更方便的集成相關的腳本,而無需每次為查找腳本而煩惱。

付費內容包括三個腳本:分別是上文提及的hmcustom.tcl,userpage.mac和preferences.mvw。

作者聯系方式:QingMingTianXia@126.com

Hypermesh/Hyperview/ABAQUS 二次開發中新建下拉菜單的方法的圖8

以下內容為付費內容,請購買后觀看

   2人購買

Hypermesh/Hyperview/ABAQUS 二次開發中新建下拉菜單的方法

App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

4
7
12