• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            eryar

            PipeCAD - Plant Piping Design Software.
            RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
            posts - 603, comments - 590, trackbacks - 0, articles - 0

            Tcl Tk Introduction

            Posted on 2014-01-05 22:38 eryar 閱讀(3836) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            Tcl Tk Introduction

            eryar@163.com

            摘要Abstract:Tcl/Tck腳本可以很容易實(shí)現(xiàn)用戶自定義的命令,方便的創(chuàng)建圖形化的用戶界面GUI,所以Tcl和Tk的應(yīng)用領(lǐng)域幾乎覆蓋了圖形和工程應(yīng)用的全部范圍,包括計(jì)算機(jī)輔助設(shè)計(jì)、軟件開(kāi)發(fā)、測(cè)試、儀器控制、科學(xué)可視化及多媒體方面。即可以使用Tcl/Tk實(shí)現(xiàn)AVEVA中的PML類似的功能,允許用戶自己編寫簡(jiǎn)單程序?qū)崿F(xiàn)程序的二次開(kāi)發(fā)。

            關(guān)鍵字Key Words:AVEVA, PDMS, PML, Tcl/Tk, Script Modeling

            一、PML of AVEVA

            看到AVEVA的解決方案中有一個(gè)方便靈活的用戶自定義語(yǔ)言PML(the AVEVA Programmable Macro Language),通過(guò)PML可以根據(jù)不同的用戶需求來(lái)對(duì)程序進(jìn)行擴(kuò)展,而AVEVA則可以專注于核心模塊的開(kāi)發(fā)與完善。這對(duì)軟件開(kāi)發(fā)而言,是很有益處的,可以在滿足各種用戶多變的需求的情況下保證軟件的質(zhì)量。使用PML實(shí)現(xiàn)一個(gè)簡(jiǎn)單的窗口代碼及效果如下圖所示:

            wps_clip_image-21292

            Figure 1.1 Hello World Form code of PML

            wps_clip_image-17853

            Figure 1.2 A simple Form of PML

            二、Tcl/Tk

            Tcl表示“Tool Command Language”。在學(xué)習(xí)OpenCascade的過(guò)程中,看到OpenCascade的一個(gè)測(cè)試工具Draw Test Harness就是使用了Tcl/Tk來(lái)實(shí)現(xiàn)自定義的命令。通過(guò)自定義的命令,即可以對(duì)一些功能進(jìn)行測(cè)試,如下圖所示,使用簡(jiǎn)單命令,即可以生成圖形:

            wps_clip_image-12745

            Figure 2.1 Draw Test Harness with Tcl/Tk

            Netgen是一個(gè)用于網(wǎng)格剖分的程序,它的用戶界面也是用Tcl/Tk來(lái)實(shí)現(xiàn)的,效果也不錯(cuò),如下圖所示:

            wps_clip_image-1432

            Figure 2.2 Pipe Model in Netgen

            三、結(jié)論 Conclusion

            Tcl和Tk一起為應(yīng)用程序開(kāi)發(fā)者和使用者提供了很多好處。首先是快速開(kāi)發(fā)。很多有意思的應(yīng)用程序完全可以用Tcl腳本編寫。這樣就可以在比C/C++或Java更高的層次上進(jìn)行開(kāi)發(fā),Tk隱藏了C或Java程序員必須關(guān)注的很多細(xì)節(jié)。與低級(jí)工具相比,要使用Tcl和Tk所需要學(xué)習(xí)的知識(shí)更少,需要編寫的代碼更少。通過(guò)幾個(gè)小時(shí)的學(xué)習(xí),Tcl/Tk新手用戶就可以創(chuàng)建有意思的用戶界面,很多開(kāi)發(fā)人員從其他工具集轉(zhuǎn)而使用Tcl和Tk工具集后,應(yīng)用程序開(kāi)發(fā)所需要的代碼數(shù)量和開(kāi)發(fā)時(shí)間都減少了90%。

            Tcl和Tk適于快速開(kāi)發(fā)的另一個(gè)原因在于Tcl是解釋語(yǔ)言,使用Tcl應(yīng)用程序時(shí),可以在運(yùn)行中生成和使用新腳本,而無(wú)需重新編譯和重啟應(yīng)用程序。

            Tcl可以跨平臺(tái),這意味著在一個(gè)平臺(tái)如Linux上開(kāi)發(fā)的程序,在大多數(shù)情況下可以不加改動(dòng)的在另一個(gè)平臺(tái)上運(yùn)行,如在Windows上或Macintosh上運(yùn)行。

            Tcl還是第一種擁有原生Unicode支持的動(dòng)態(tài)語(yǔ)言。因此,Tcl可以處理這個(gè)世界上幾乎所有的書面語(yǔ)言。

            使用Tcl的另一個(gè)顯著優(yōu)點(diǎn)在于它和它的大多數(shù)擴(kuò)展都是免費(fèi)的開(kāi)源軟件,允許所有人免費(fèi)下載、查看、修改及再發(fā)布。

            另外,Tcl還可以讓應(yīng)用程序很容易地?fù)碛袕?qiáng)大的腳本功能。例如為要一個(gè)已經(jīng)存在的程序添加腳本功能,您只需要實(shí)現(xiàn)幾條新的Tcl命令,用來(lái)為應(yīng)用程序提供相應(yīng)的基本功能。然后,把您的新命令和Tcl庫(kù)鏈接起來(lái)生成全功能的腳本語(yǔ)言,該語(yǔ)言就包含了Tcl提供的命令和您編寫的那些命令。

            Tcl還為用戶提供了方便。一旦學(xué)習(xí)了Tcl/Tk就能為任何Tcl和Tk應(yīng)用程序編寫腳本,只需要學(xué)習(xí)該應(yīng)用程序特有的少數(shù)幾條命令即可。這使得更多的用戶有能力對(duì)應(yīng)用程序進(jìn)行個(gè)性化改造和強(qiáng)化。

            如果不借助別的軟件自己來(lái)實(shí)現(xiàn)一個(gè)AVEVA中的PML類似的功能,可能要涉及很多知識(shí),如編譯原理,計(jì)算機(jī)系統(tǒng)等很多很多,編寫出來(lái)的程序即使能用,可能質(zhì)量也不好。正如荀子所言:“君子性非異也,善假于物也”;牛頓也說(shuō)“我不知道在別人看來(lái),我是什么樣的人;但在我自己看來(lái),我不過(guò)就像是一個(gè)在海濱玩耍的小孩,為不時(shí)發(fā)現(xiàn)比尋常更為光滑的一塊卵石或比尋常更為美麗的一片貝殼而沾沾自喜,而對(duì)于展現(xiàn)在我面前的浩瀚的真理的海洋,卻全然沒(méi)有發(fā)現(xiàn)。如果說(shuō)我比別人看得更遠(yuǎn)些,那是因?yàn)槲艺驹诹司奕说募缟稀?#8221;如果借助于巨人的力量,使用Tcl就可以方便的實(shí)現(xiàn)PML類似的功能,現(xiàn)在需要做的就是對(duì)前人知識(shí)的學(xué)習(xí)與使用。

            PDF Version: Tcl Tk Introduction

            久久婷婷国产综合精品 | 亚洲国产二区三区久久| 国产美女久久精品香蕉69| 丁香五月网久久综合| 久久久久无码国产精品不卡| 久久国语露脸国产精品电影| 国产精品久久久久天天影视| 午夜福利91久久福利| 久久91精品国产91久久户| 亚洲伊人久久综合影院| 久久久精品一区二区三区| 亚洲欧美日韩中文久久| 久久国产精品偷99| 久久se精品一区精品二区| 东方aⅴ免费观看久久av| 久久久久久久久久久免费精品| 精品久久8x国产免费观看| 偷窥少妇久久久久久久久| 精品久久久久久久中文字幕| 国产Av激情久久无码天堂| 日韩精品久久久久久免费| 久久国内免费视频| 久久久久一本毛久久久| 麻豆精品久久久一区二区| 91精品国产高清久久久久久io | 久久综合综合久久综合| 色99久久久久高潮综合影院 | 久久精品视频免费| 久久午夜羞羞影院免费观看| 久久人人爽人人爽人人片AV麻烦| 久久久久亚洲AV综合波多野结衣| 青青青伊人色综合久久| 人人狠狠综合久久亚洲婷婷| 嫩草影院久久99| 久久久久久久久久免免费精品| 久久国产影院| 久久久午夜精品| 三上悠亚久久精品| 99久久精品免费国产大片| 久久99久久成人免费播放| 亚洲Av无码国产情品久久|