亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        簡述ANSYS圖形界面二次開發(fā)

        2019-07-19 09:00:58周凱旋
        四川建筑 2019年3期
        關(guān)鍵詞:用戶界面管理器調(diào)用

        周凱旋

        (西南交通大學(xué)土木工程學(xué)院,四川成都 610031)

        從20世紀(jì)70年代以來,隨著計(jì)算機(jī)技術(shù)的迅速發(fā)展,有限元分析軟件在結(jié)構(gòu)分析中的作用日益顯著,其中ANSYS作為大型通用有限元軟件之一,擁有結(jié)構(gòu)、熱、電、磁、流體等分析功能[1]。由于ANSYS是作為一種通用有限元軟件而使用,故在某些特定專業(yè)問題分析上流程復(fù)雜、操作繁瑣、不易掌握,為了便于專業(yè)用戶使用,ANSYS為二次開發(fā)提供了多種語言接口,用戶可根據(jù)自身專業(yè)特點(diǎn),對ANSYS進(jìn)行功能擴(kuò)充和系統(tǒng)集成。在ANSYS二次開發(fā)的過程中,主要用到APDL、UIDL、UPFs等語言,此外,ANSYS的運(yùn)行依賴于TCL/TK腳本語言,因而ANSYS可以采用該種語言進(jìn)行用戶自定義界面編寫,配合使用上述語言,極大的方便了用戶根據(jù)自身需要對ANSYS進(jìn)行二次開發(fā)。

        1 UIDL

        1.1 UIDL簡介

        UIDL是User Interface Design Language的縮寫,就是用戶界面設(shè)計(jì)語言。在ANSYS中主要完成以下三種圖形界面的設(shè)計(jì):主菜單系統(tǒng)及菜單項(xiàng)、對話框和拾取框、對話框幫助系統(tǒng)。一個(gè)完整的UIDL至少包含一個(gè)控制文件頭及若干個(gè)結(jié)構(gòu)塊,控制文件頭及結(jié)構(gòu)塊中各個(gè)位置代碼均有嚴(yán)格規(guī)定[2-3]。

        1.2 ANSYS調(diào)用UIDL

        在安裝有ANSYS的計(jì)算機(jī)上(15.0版本),UIDL在如下安裝目錄下,ANSYS15.0ANSYS INCV150ANSYSGUIEN-USUIDL,在UIDL文件夾下,主要有UIMENU.GRN、UIFUNC1.GRN、UIFUNC2.GRN、MENULIST150.ANS等文件,前三個(gè)用于菜單界面的制定,最后一個(gè)是ANSYS調(diào)用UIDL的文件路徑。也就是用戶在編寫UIDL語言時(shí),可以在原ANSYS安裝目錄下的UIMENU.GRN、UIFUNC1.GRN、UIFUNC2.GRN中進(jìn)行編寫,亦可在其他任意位置編寫自己的UIDL文件,只需要將ANSYS安裝目錄下的MENULIST150.ANS文件中的調(diào)用路徑做相應(yīng)修改即可。

        1.3 菜單界面的開發(fā)

        ANSYS菜單界面的開發(fā)基于UIDL即可,主要修改UIDL文件夾下的UIMENU.GRN與UIFUNC2.GRN文件即可完成菜單的添加[5]。根據(jù)編寫規(guī)則,在UIMENU.GRN中的任意兩個(gè)結(jié)構(gòu)塊之間編寫自己的菜單代碼即可。代碼所在的位置決定菜單在界面上顯示的位置,如圖1所示菜單界面,其對應(yīng)的一、二級菜單代碼見表1,并在表中對代碼所實(shí)現(xiàn)的功能做出解釋。

        圖1 菜單界面示例

        三級菜單的添加需要在UIFUNC2.GRN文件中進(jìn)行,在UIFUNC2.GRN中的代碼編寫規(guī)則與表1相同,同樣在任意兩個(gè)結(jié)構(gòu)塊之間編寫三級菜單的代碼,最后將Doproject添加至UIFUNC.GRN中的根菜單(Menuroot)下即完成圖1所示菜單界面的編寫。

        通過以上編寫,完成在ANSYS中添加自己的菜單界面,單擊菜單選項(xiàng)所響應(yīng)的界面,可以在UIDL中進(jìn)行編寫,也可以采用TCL/TK語言進(jìn)行編寫并生成一個(gè)TCL文件,只需在UIDL中調(diào)用該文件即可。

        表1 一、二級菜單源代碼

        2 TCL/TK編寫用戶界面

        2.1 創(chuàng)建窗口

        在創(chuàng)建用戶界面時(shí),窗口是最頂層結(jié)構(gòu),其他一切構(gòu)件的擺放均需要在窗口上實(shí)現(xiàn),如Toplevel.Dcck 可以創(chuàng)建一個(gè)名稱為Dcck的窗口。命令Wm Title.Dcck “建模窗口”設(shè)置窗口標(biāo)題顯示的文本內(nèi)容為“建模窗口”。在創(chuàng)建頂層窗口之后,才能在窗口上面進(jìn)行其他構(gòu)架的設(shè)計(jì)[6]。

        2.2 標(biāo)簽、標(biāo)簽框架及按鈕

        創(chuàng)建標(biāo)簽的命令是Lable,如“Label.H -Text “名稱”-Relief Sunken -Width 10 -Font {仿宋 25}”,.H是所創(chuàng)建標(biāo)簽的名稱,Text為標(biāo)簽顯示的文本內(nèi)容。標(biāo)簽的文本選項(xiàng)有Text與Textvariable兩種,Text是文本要顯示的字符串,Textvariable 選項(xiàng)可以將它的值設(shè)置為一個(gè)對全局的變量并顯示該變量的內(nèi)容,當(dāng)文本框中的內(nèi)容改變時(shí),該變量會發(fā)生相應(yīng)的改變。-Font用于設(shè)置標(biāo)簽字體。Labelframe命令與Label命令格式相似,用于創(chuàng)建標(biāo)簽框架,并將界面上的組件進(jìn)行分組,使界面整潔有序。

        創(chuàng)建按鈕的基本語句如:Button Cancel -Text “取消” -Command Quxiao。創(chuàng)建了一個(gè)名為“Cancel”的按鈕,按鈕上顯示的文本內(nèi)容為“取消”,-Command選項(xiàng)為按鈕創(chuàng)建一個(gè)名稱為“Quxiao”響應(yīng)過程,但這個(gè)過程的響應(yīng)功能還需要另外定義。

        創(chuàng)建輸入框的命令為Entry,如Entry.Entry -Width 20 -Relief Sunken,創(chuàng)建一個(gè)名為Entry的輸入框,指定其寬度為20,-Relief選項(xiàng)用于設(shè)置輸入框的凹凸樣式,其后面參數(shù)有Raised、Sunken、Flat、Groove、Ridge,同樣適用于標(biāo)簽框架。

        2.3 幾何管理器

        TK的幾何管理器決定組件在窗口上的位置及尺寸。TK中有三種幾何管理器分別是打包器(Pack),定位器(Place)與網(wǎng)格管理器(Grid)。最常用的為Grid,它將界面劃分網(wǎng)格,將組件在窗口上按行列布置,其后面的屬性有-Row(行位置),-Column(列位置)。Rowspan(跨行),Columnspan(跨列),如Grid $Lab1 -Row 2 -Column 1,將Lab1放在窗口上的第二行,第一列位置。

        2.4 圖像

        創(chuàng)建圖像的語句如:Image Create Type Name Option Value。Image Create是創(chuàng)建圖像的命令;Type是圖像的類型;Name是的圖像的名字;Option Value對參數(shù)指定圖像的屬性。圖像可以采用內(nèi)部命令創(chuàng)建也可以調(diào)用已有的圖片。圖片的顯示可以采用如下方法,先讀取圖片并將其顯示在一個(gè)標(biāo)簽上,然后通過Grid命令將帶有圖片的標(biāo)簽顯示在窗口上。

        2.5 事件綁定

        綁定事件可以實(shí)現(xiàn)圖形的動態(tài)刷新。綁定事件的命令為bind,可以用于綁定的事件有Key或Keypress—按下按鍵,Keyrelease—釋放按鍵,Button或Buttonpress—按下鼠標(biāo)鍵等。如語句:Bind.Entry {.Entry Delete Insert}。第一個(gè)參數(shù)指定了要創(chuàng)建綁定的窗口名,它也可以是組件的名稱;第二個(gè)參數(shù)指定了綁定組件將要響應(yīng)的事件,它可以是一個(gè)或多個(gè),在本例中是單個(gè)事件Keypress;第三個(gè)參數(shù)是任意的TCL腳本,定義組件所綁定的事件發(fā)生時(shí)所要執(zhí)行的過程,綁定可以觸發(fā)任意次,如果沒有解除綁定的命令,只要事件被觸發(fā),它會一直執(zhí)行。調(diào)用Bind.Entry {}帶空TCL腳本的語句可以解除綁定。

        綜合運(yùn)用以上功能,用戶即可根據(jù)自身需求編寫出自己的用戶界面,將編寫該界面所用的每一類代碼舉例列于表2,配合使用如下代碼,即可編寫出圖2所示用戶界面。

        表2 部分源代碼

        圖2 自定義用戶窗口界面

        2.6 TCL/TK與ANSYS的交互

        用TCL/TK編寫的界面文件以TCL為擴(kuò)展名,將編寫好的TCL文件放在電腦中,并在ANSYS中可以通過以下三種命令的方式調(diào)用TCL/TK所編寫的文件。

        (1)~Tcl,’Source Filename’;

        (2)~Tk,’Source Filename’;

        (3)~Tui, ’Source Filename’。

        其中’Source Filename’是TCL/TK程序,包括調(diào)用路徑和所要調(diào)用的TCL文件名。在用UIDL所編寫的菜單中也可以調(diào)用TCL文件,要實(shí)現(xiàn)該功能就要在用UIDL編寫菜單時(shí)使用:C命令,在該命令后編寫相應(yīng)調(diào)用語句。

        TCL文件亦可向ANSYS傳遞命令,實(shí)現(xiàn)該功能的命令為Ans_Sendcommand,在上述編寫界面的TCL文件中,在代碼開頭加入Ans_Sendcommand,那么在該代碼后面即可編寫ANSYS自身的APDL命令,用于建模計(jì)算等。也就是ANSYS的用戶界面編寫及后續(xù)的計(jì)算分析命令,均可集成于TCL文件中。

        3 結(jié)論

        本文介紹了在ANSYS中通過修改UIDL中相應(yīng)文件來定制用戶自定義菜單的方法,運(yùn)用TCL/TK中創(chuàng)建窗口、標(biāo)簽以及按鈕等功能編寫用戶界面,通過幾何管理器實(shí)現(xiàn)構(gòu)件在窗口上的合理擺放,并由綁定事件功能實(shí)現(xiàn)界面上構(gòu)件的過程響應(yīng),最后通過ANSYS與TCL文件互調(diào)命令,實(shí)現(xiàn)ANSYS調(diào)用集成的TCL文件與TCL文件向ANSYS傳遞命令。根據(jù)該方法,用戶可以方便的編寫符合自身需求的界面,并將部分ANSYS命令集成于TCL文件中,從而可以大大提高設(shè)計(jì)效率。此外,本文給出代碼示例,可以為其他用戶開發(fā)自身需求的界面提供參考。

        猜你喜歡
        用戶界面管理器調(diào)用
        自然用戶界面在智能家居系統(tǒng)中的應(yīng)用路徑創(chuàng)新研究:生成式人工智能技術(shù)的調(diào)節(jié)作用
        包裝工程(2023年16期)2023-08-25 11:40:58
        基于CiteSpace的國外用戶界面體驗(yàn)圖譜量化分析
        應(yīng)急狀態(tài)啟動磁盤管理器
        核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
        Windows文件緩沖處理技術(shù)概述
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        UI用戶界面色彩設(shè)計(jì)研究
        流行色(2017年12期)2017-10-26 03:08:44
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
        基于B/S的跨平臺用戶界面可配置算法研究
        高集成度2.5A備份電源管理器簡化鋰離子電池備份系統(tǒng)
        亚洲国产精品激情综合色婷婷| 午夜dj在线观看免费视频 | 丰满的少妇av一区二区三区| 夜夜夜夜曰天天天天拍国产| 欧美人和黑人牲交网站上线| 放荡的美妇在线播放| 亚洲国产精品日本无码网站| 屁屁影院ccyy备用地址| 亚洲中文字幕在线观看| av人摸人人人澡人人超碰小说| av手机在线天堂网| 少妇性l交大片免费1一少| av中文字幕一区不卡| 中文无码精品a∨在线观看不卡| 精品综合久久久久久97超人| 91尤物在线看| 久久久国产熟女综合一区二区三区| 国产欧美精品aaaaaa片| 久久精品中文字幕无码绿巨人| 边啃奶头边躁狠狠躁| 日韩精品国产自在欧美| 一道本中文字幕在线播放| 国产伦一区二区三区色一情| 日本最新免费二区| 欧美俄罗斯乱妇| 中文字幕亚洲乱亚洲乱妇| 少妇人妻无奈的跪趴翘起| 国产色欲av一区二区三区| 国产午夜精品久久久久免费视 | 亚洲欧美在线观看| 成人无码视频| 精品亚洲不卡一区二区| 高清不卡av一区二区| 亚洲av永久无码精品漫画| 国产一区二区三区在线观看免费| 免费99视频| 色婷婷久久免费网站| 亚洲综合小综合中文字幕| 国产精品久久久久久久久久红粉| 中文字幕在线播放| 在线观看精品国产福利片87|