太極圖形程式語言的視覺化使用者介面GUI

之前關於太極程式語言的文章,介紹的都是TaiChi的資料型別這類的基本概念和知識。雖然說太極程式語言是一種圖形程式語言,不過到現在我們都沒有接觸到關於太極程式設計怎麼建立渲染圖形的基本程式設計知識。而這正是這篇文章的學習的內容,更具體一點,機智客此時學習的一個基本的概念,也就是ti。GUI的知識。

雖然說,3D的圖形、動畫往往容易比2D的內容吸引人,不過太極程式語言的ti。GUI則是一個不折不扣

建立2D圖形window的介面。所以我們可以用gui

=

ti。GUI(“jizhike”,res=(1024,768))這樣的程式碼建立一個標題為jizhike解析度為1024*768的畫布視窗。如果我們手寫了一些東西,就可以直接用gui。set_image()畫到視窗上去。

太極圖形程式語言的視覺化使用者介面GUI

另外,作為原生態的GUI,太極圖形當然提供了一些建立基本的畫圖功能的函式。比如gui。circles(),gui。lines(),gui。rects()等。除此之外,還提供了一些方便互動的控制元件,比如gui。button(),gui。slider(),gui。text()等。這樣就能靈活互動了。既然有互動,就免不了要有事件驅動和捕獲滑鼠鍵盤等事件,所以太極圖形程式語言還有類似於gui。get_events(),gui。get_key_event(),gui。running這樣的函式。

總之,這個gui=GUI()並不複雜,而且目前而言,這個本身也並不算強大。機智

看有介紹說,是考慮到可移植性做的一個選擇。而如果我們想做3D圖形,也不是不可能。畢竟,一個成熟完整的計算機圖形庫,怎能不支援3D?除了官方在做的GGUI外,這個功能實現還可以用到offline:ti。PLYWriter匯出成其他軟體能識別的通用3D資料格式,用其他軟體來實現3D渲染。

換句話說,我們可以

用做

更多並行執行計算,而要渲染3D動畫之類的可以在其他專業軟體中完成。理解,畢竟太極圖形是一個開源的計算機圖形庫,雖然它能模擬模擬建模,然而它畢竟不是完整的3D建模或渲染軟體。如果我們要實現一些動畫或模擬,需要藉助一款專業的3D軟體,機智客記得在網上就有Blender匯入太極庫的實現,具體沒了解,需要的可以去看下官方進展。所以,一個視覺化的太極程式專案,往往是由引入模組、初始化和定義資料、呼叫kernel完成實現,然後才是視覺化的GUI之類的功能。