GLG Widgets是一個GLG工具包,包含一個或多個專用界面工具集,他提供自定義組件的應用程序,如儀表,圖表,航空電子儀表和過程控件工具集。
標簽:圖表Java工業(yè)4.0開發(fā)商: Generic Logic
當前版本: v4.0
產(chǎn)品類型:控件
產(chǎn)品功能:圖表
平臺語言:Activex & COM|JAVA|C++/ MFC
開源水平:不提供源碼
本產(chǎn)品的分類與介紹僅供參考,具體以商家網(wǎng)站介紹為準,如有疑問請來電 023-68661681 咨詢。
4.0版本引入了新的HTML5和JavaScript Web部署選項,該選項使使用客戶端JavaScript在Web瀏覽器中開發(fā)和部署GLG應用程序成為可能。使用提供的GLG JavaScript庫,可以在Web環(huán)境中使用所有現(xiàn)有的GLG工程圖,并且可以使用GLG JavaScript API在應用程序的Web版本中輕松重用已經(jīng)為桌面應用程序開發(fā)的編程邏輯。
其他新功能包括:
新的GLG JavaScript庫可用于在任何臺式機或移動設(shè)備上的瀏覽器中的網(wǎng)頁上部署GLG應用程序。JavaScript庫使用純HTML5和JavaScript,并提供相同的完整GLG API,該API以前僅適用于以C/C++,Java或C#編寫的桌面應用程序??梢允褂每蛻舳薐avaScript庫將任何現(xiàn)有的GLG圖形部署在網(wǎng)頁上,該JavaScript庫在HTML畫布中呈現(xiàn)圖形,使用實時數(shù)據(jù)更新圖形并處理用戶交互。
JavaScript庫在HTML畫布中呈現(xiàn)圖形,使用實時數(shù)據(jù)更新圖形并處理用戶交互。除了符合JavaScript語法的更改之外,GLG JavaScript API與相應的C/C++,Java和C#GLG API相同,這不僅使圖形可以重用,而且可以重用已經(jīng)使用的編程邏輯。為桌面版本的應用程序開發(fā)。通過使用GLG Graphics Builder創(chuàng)建圖形,然后使用HTML5和GLG JavaScript庫將其部署在網(wǎng)頁上,還可以從頭開始開發(fā)新的Web應用程序。
JavaScript庫支持所有主流瀏覽器,例如Chrome,Safari,F(xiàn)irefox和Microsoft Edge。它還提供了對移動和觸摸屏設(shè)備的支持,因此同一應用程序可以部署在臺式機或移動設(shè)備上。GLG工程圖的可擴展性使其可以更輕松地將其部署到具有不同屏幕尺寸的設(shè)備上,以及使用響應式Web設(shè)計的網(wǎng)頁上。API的SetCanvasScale方法提供了將繪圖調(diào)整為具有不同像素比率的屏幕的功能,從而可以確保清晰的圖形渲染并在小屏幕的移動設(shè)備上顯示GLG繪圖時自動增加文本對象的大小。該庫同時支持鼠標和觸摸事件。
以下鏈接提供了GLG JavaScript的文檔: http://www.genlogic.com/doc_html/javascript_doc/index.html
瀏覽標簽、資源或?qū)ο髮傩詴r,此自省功能可提供視覺反饋。使用“選項”、“跟蹤/突出顯示”、“跟蹤標簽”、“資源和約束”菜單選項激活此功能后,它將突出顯示圖形中依賴于在標簽瀏覽器中選擇的標簽,在資源瀏覽器中選擇的資源或?qū)傩缘乃袑ο?。顯示在“屬性”對話框中。
此功能可與同一菜單的“標記為Mark0的跟蹤屬性約束”選項一起使用,該選項在取決于標記為Mark0的屬性的屬性對話框中突出顯示屬性。
選項、跟蹤/突出顯示菜單具有兩個控制突出顯示的選項:
如果未選中任何一個選項,則將突出顯示被跟蹤對象的最接近的可繪制父對象。
該功能在Graphics Builder和HMI Configurator中以及在應用程序運行時均可用。應用程序可以使用TraceObject API方法來突出顯示圖形中依賴于標簽或資源的所有對象。
在內(nèi)部,突出顯示是通過可繪制對象的新HighlightFlag屬性處理的,該屬性也可以在程序中設(shè)置為突出顯示或取消突出顯示對象。
新的實時圖表功能允許向圖表添加自定義注釋。批注可以包含文本標簽和/或標記,并且可以在圖表中指定的時間和值放置。滾動或縮放圖表時,圖表會自動保持注釋的位置。
靜態(tài)注釋可用于將標簽添加到水平線,并與工程圖一起保存。X和Y方向上的注釋位置可以定義為相應軸范圍內(nèi)的值,也可以定義為圖表內(nèi)的絕對位置。由絕對位置定義的注釋不會隨圖表滾動。靜態(tài)注釋的數(shù)量由圖表的NumAnnotations屬性控制。
可以在運行時將動態(tài)注釋添加到圖表中,以使用AddAnnotation API方法對感興趣的數(shù)據(jù)樣本進行注釋,在這種情況下,應在運行時將NumAnnotations屬性設(shè)置為-1。圖表管理動態(tài)注釋,當圖表滾動以顯示新數(shù)據(jù)時,相應的數(shù)據(jù)樣本從圖表緩沖區(qū)中退出時,動態(tài)注釋將被刪除。
可以修改每個注釋的顏色,文本字符串和其他屬性,并與圖形一起保存(對于靜態(tài)注釋)??梢愿鶕?jù)應用程序數(shù)據(jù)或用戶交互來動態(tài)更改任何注釋屬性。即使已將注釋添加到圖表中,也可以隨時進行這些更改。例如,當用戶用鼠標選擇注釋時,可以更改其顏色。
GLG中級API的新AddDataSample方法可用于用大量數(shù)據(jù)樣本預填充歷史圖表。該方法不使用資源,而是將數(shù)據(jù)樣本直接推送到圖表的數(shù)據(jù)歷史記錄緩沖區(qū)中,當在Java,C?;騄avaScript環(huán)境中用數(shù)十萬個數(shù)據(jù)樣本填充圖表時,可以顯著提高性能。
新的小部件包括汽車里程表和轉(zhuǎn)速表,新的徑向和線性儀表,以及帶有附加設(shè)定指針或其他設(shè)定指示器的多個設(shè)定儀表。線性量規(guī)包括一個色條規(guī),它使用不同的顏色來標注超出指定閾值的條形部分。
“調(diào)色板”菜單的新的“使小部件視口透明”選項可用于添加具有透明背景的刻度盤和量規(guī)。如果選中,則從調(diào)色板添加基于視口的窗口小部件會將其轉(zhuǎn)換為使用具有透明背景的淺視口。如果未選中該選項,則使用背景不透明的視口對象。 以前,要使窗口小部件透明,必須將窗口小部件手動轉(zhuǎn)換為具有透明背景的亮視口,這不太方便。 該選項在Graphics Builder和HMI Configurator中均可用。
使用此新選項,不再需要以前版本中提供的無窗口撥號小部件。它們在新版本中已棄用,并已從編輯器選項板中刪除。如果仍需要它們以實現(xiàn)向后兼容,則可以通過取消注釋/widgets/palettes.pls文件中的controls/windowless_dials.pal行來啟用它們。
“手動小部件定位”選項也已從“選項”移至“調(diào)色板”菜單。
車速表
轉(zhuǎn)速表
在新版本中,Java,C#和JavaScript API支持異步圖像加載。以前,當最初顯示包含圖像的圖形時,它在渲染圖形之前等待所有圖像完成加載(同步加載)。 從遠程URL加載圖像時可能會導致延遲。
在新版本中,應用程序可以控制圖像是同步加載還是異步加載。它由GlgAsyncImageLoading全局配置資源全局控制,并且可以由單個圖像對象的AsyncMode屬性覆蓋。
如果圖像使用異步模式,并且在顯示圖形時尚未準備好圖像數(shù)據(jù),則將在不顯示圖像的情況下顯示圖形,并且在其數(shù)據(jù)可用時將顯示圖像。當具有異步模式的圖像完成其數(shù)據(jù)加載時,它會向Input回調(diào)發(fā)送ImageLoad消息,以通知應用程序可能需要更新圖形。可以查詢圖像對象的ImageLoaded屬性,以確定圖像是否準備好呈現(xiàn)。
默認情況下,GLG庫的Java和C#版本使用同步圖像加載模式。該庫的JavaScript版本使用異步加載模式,這是JavaScript支持的唯一模式。
異步圖像加載模式也可以用于GIS對象,該對象用于在GLG繪圖中顯示地圖。異步加載地圖時,在初始外觀時,或者在縮放或平移地圖時,在顯示地圖時不會顯示地圖,而在地圖圖像準備就緒時會顯示地圖。
GlgAsyncImageLoading全局配置資源控制圖像和地圖的加載模式,并且可以被GIS對象的AsyncMode屬性覆蓋。帶有異步地圖加載的GIS對象還會發(fā)送ImageLoad消息,以在新地圖準備好時通知應用程序,并且GIS對象的ImageLoaded屬性可用于查詢新地圖的狀態(tài)。
下文所述的“異步GIS地圖加載請求”可用于避免在處理縮放或平移請求時顯示沒有地圖的工程圖。
新的異步GIS地圖加載請求功能使GIS應用程序可以更好地處理Java,C#和JavaScript環(huán)境中的地圖縮放和平移。
此功能解決了處理地圖縮放或平移操作的問題,該問題要求從服務器獲取新的地圖圖像。在同步地圖加載模式下,應用程序?qū)鼋Y(jié)直到準備好新地圖。在異步地圖加載模式下,地圖上的動態(tài)符號將立即以新地圖縮放狀態(tài)顯示,但背景不會在背景中顯示,而從服務器接收到新地圖時就會出現(xiàn)。這兩種模式都是不可取的,并且“異步GIS請求”功能提供了以下描述的解決方案。
異步GIS地圖請求使應用程序可以向服務器發(fā)出縮放或平移地圖請求,同時繼續(xù)在舊地圖狀態(tài)下操作,直到準備好新地圖為止。當新地圖準備就緒時,顯示將立即切換到新地圖的縮放或平移狀態(tài)。
使用此功能,將永遠不會凍結(jié)應用程序等待新地圖,也不會在后臺沒有地圖的情況下顯示該應用程序。這對于Java,C#和JavaScript應用程序尤其重要,因為它們使用基于Web的GLG Map Server,與C/C ++應用程序使用的嵌入式GLG Map Server相比,引入了與Web相關(guān)的延遲。
應用程序可以完全控制地圖加載請求。當新地圖準備就緒時,將通知應用程序,此時它可以決定安裝新地圖,或者如果它被另一個具有更高優(yōu)先級的地圖請求所取代,則將其丟棄。添加了以下中間API方法來請求和處理地圖加載請求:
新的Min和Max轉(zhuǎn)換選項已添加到Compare轉(zhuǎn)換中,以從兩個參數(shù)返回最小或最大值。Compare轉(zhuǎn)換的其余選項比較其兩個參數(shù)的值,并根據(jù)所選比較條件返回布爾值(0或1)。
新的WriteStringFromWidget命令已添加到命令操作列表中。它可用于根據(jù)用戶輸入來寫入字符串(S)標記,并且類似于現(xiàn)有的寫入Double(D)標記的WriteValueFromWidget命令。
GlgNList處理程序現(xiàn)在支持一個可選的InitSelectedIndex資源,該資源保存在圖形中,并指定在初始外觀時應選擇的項目的從0開始的索引。如果未指定資源或?qū)⑵湓O(shè)置為-1,則在最初繪制列表時將不會選擇任何項目。
在保存圖形時,可以使用“選項”菜單中“保存”選項上的新“將字符串轉(zhuǎn)換為UTF8”選項將所有字符串屬性(例如文本對象的TextString)從當前語言環(huán)境轉(zhuǎn)換為UTF8。當在圖形中使用Windows上的本地化字符串(將在Web上使用JavaScript時)時,這特別方便。JavaScript支持使用UTF8作為默認字符集的有限數(shù)量的字符集,而Windows不支持UTF8系統(tǒng)區(qū)域設(shè)置?!氨4鏁r將字符串轉(zhuǎn)換為UTF8”選項提供了一種方便的方法,可以將圖形保存到UTF8語言環(huán)境中,而無需使用外部轉(zhuǎn)換器。
此外,“安排UTF8轉(zhuǎn)換”菜單提供了一些選項,可將圖形中的所有字符串從當前語言環(huán)境轉(zhuǎn)換為UTF8,從UTF8轉(zhuǎn)換為當前語言環(huán)境。這些選項可用于在保存之前驗證轉(zhuǎn)換后的圖形。
轉(zhuǎn)換選項將轉(zhuǎn)換為S(字符串)類型的數(shù)據(jù)對象的屬性字符串,而不轉(zhuǎn)換不是GLG對象的字符串屬性(例如對象和標記名)。
新的UnitsSeparator和SuffixSeparator參數(shù)已添加到“值顯示”和“文本顯示”預定義的轉(zhuǎn)換中。新參數(shù)用于在值和尾隨字符串之間提供空格或其他分隔符,而無需在尾隨字符串中嵌入分隔符。
現(xiàn)在,可以通過在HMI Configurator中的視口或淺視口上單擊Ctrl-Shift-單擊來執(zhí)行“設(shè)置焦點”操作。以前,此操作僅在“圖形生成器”中啟用。
當用戶調(diào)整對話框大小以增加其高度時,“變換屬性”對話框的布局策略已更改為顯示更多屬性。
所有支持的部署選項的擴展API中都添加了新的Flush方法。該方法將容器對象的大小設(shè)置為請求的大小。如果新大小小于容器大小,則將刪除多余的元素。如果新大小較大,則會通過復制最后一個元素來添加元素。
容器可以是組、視口、多邊形(作為點的容器)、樣條線或連接器。如果未設(shè)置容器,則只能調(diào)用該方法。如果設(shè)置(繪制)了容器,則該方法必須被SuspendObject和ReleaseObject調(diào)用包圍。
GlgIHGetCurrIH方法可用于獲取當前活動的接口處理程序的ID。GlgIHGetPrevIH方法返回當前活動接口處理程序的父處理程序的ID。父處理程序是已安裝處理程序堆棧中當前處理程序之前的處理程序。
Linux版本的工具包已移植到具有ARM8 64位體系結(jié)構(gòu)的嵌入式板上,例如Jetson Nano。現(xiàn)在,GLG編輯器和GLG C/C ++應用程序都可以在ARMv8 AArch64嵌入式板上本地運行。
在以前的版本中,僅支持32位ARM6和ARM7嵌入式板,例如Raspberry Pi和BeagleBone。
更改了GLG運行時引擎的Java版本,以按對象的AntiAliasing屬性控制,按對象處理抗鋸齒。這使其與其他編程環(huán)境(C/C ++,C#和JavaScript)的其余GLG運行時引擎兼容。以前,AntiAliasing在Java中被忽略,而抗鋸齒由GlgAntiAliasing全局配置資源全局控制。在新版本中,默認情況下,GlgAntiAliasing設(shè)置為-1,以使對象的AntiAliasing屬性控制抗鋸齒渲染。如果將GlgAntiAliasing設(shè)置為0,則將禁用抗鋸齒。
新的GlgURLTimeout全局配置資源已添加到GLG庫的Java和C#版本。當應用程序在繼續(xù)渲染圖形之前,等待應用程序等待圖像或GIS地圖完成加載時,新資源指定以同步加載模式加載圖像和GIS地圖的超時(以秒為單位)。如果未在指定的超時時間內(nèi)加載圖像或地圖,則將終止圖像或地圖的加載,并且在生成錯誤消息后,應用程序?qū)⒗^續(xù)運行。圖像或GIS對象的ImageLoaded屬性可用于查詢其加載狀態(tài)。
SetTag和SetResourceIf方法的if_changed參數(shù)用于優(yōu)化更新性能。如果將其設(shè)置為True,則僅當資源或標記值已更改時才會更新圖形。使用標簽提供數(shù)據(jù)時,通常使用if_changed=True。
即使數(shù)據(jù)值未更改,某些資源(例如用于將數(shù)據(jù)推入圖表中的圖表入口點)也需要更新,因為即使繪圖值不會隨時間變化,圖表也必須滾動。如果使用標簽將數(shù)據(jù)推入圖表的入口點,則應將if_changed參數(shù)設(shè)置為False。
在以前的版本中,應用程序開發(fā)人員必須編寫代碼以根據(jù)將值壓入圖表還是其他對象來有條件地設(shè)置if_changed標志。在新版本中,它將自動處理,而忽略圖表入口點的if_changed參數(shù)。
數(shù)據(jù)對象的新AlwaysChanged屬性在內(nèi)部用于處理圖表入口點。設(shè)置工程圖后,對于用作圖表入口點的數(shù)據(jù)對象,該屬性設(shè)置為True。將數(shù)據(jù)推入對應于圖表入口點的標記中時,無論SetTag方法的if_changed參數(shù)設(shè)置如何,都將更新圖形。
可以通過GLG API查詢該屬性,以查明資源或標簽是否是圖表入口點。
Java,C#和JavaScript標準API中現(xiàn)在提供了SetResourceObject方法,用于設(shè)置作為對象的全局配置資源,例如默認字體表對象或默認滾動條。
需要擴展API才能將此方法用于全局配置資源以外的資源。
添加了兩個新的全局配置資源以幫助在沒有鼠標的情況下在觸摸屏設(shè)備上進行部署:GlgDisableMouseButtonCheck和GlgDisableControlKeyCheck。這兩種資源都會禁用沒有鼠標就無法在觸摸屏設(shè)備上使用的操作條件。
可以將GlgDisableMouseButtonCheck資源設(shè)置為true以禁用鼠標按鈕檢查,以便所有配置為在鼠標右鍵單擊上執(zhí)行的動作都可以更改為在觸摸動作上執(zhí)行,該動作作為鼠標左鍵單擊處理。
可以將GlgDisableControlKeyCheck資源設(shè)置為true,以禁用對配置為在使用鍵盤的設(shè)備上按Ctrl鍵單擊時激活的操作的“控制鍵修改器”檢查。當在沒有外部鍵盤的觸摸屏設(shè)備上將此資源設(shè)置為true時,將在觸摸時激活這些操作,而無需進行Control鍵檢查。
在以前的GLG版本中,將Linux上的C/C ++ GLG OpenGL驅(qū)動程序配置為在未正確配置硬件OpenGL驅(qū)動程序時自動切換到軟件OpenGL。在較新的Linux版本中,對OpenGL庫的更改導致錯誤地觸發(fā)了這種情況,即使在某些系統(tǒng)上正確設(shè)置了圖形卡,也會導致切換到軟件OpenGL。
在新版本中,禁用了在GLG OpenGL驅(qū)動程序中自動切換到軟件OpenGL的功能,以便在可用時正確使用硬件加速的OpenGL。如果硬件OpenGL不可用,驅(qū)動程序仍將切換到軟件OpenGL。如果硬件OpenGL可用,但系統(tǒng)OpenGL有問題,則可以通過使用-glg-disable-hardware-opengl命令行選項禁用硬件OpenGL或通過將GLG_DISABLE_HARDWARE_OPENGL環(huán)境變量設(shè)置為True來強制使用軟件OpenGL。
在新版本中修復了以下錯誤:
更新時間:2020-09-17 15:11:57.000 | 錄入時間:2008-09-03 14:38:11.000 | 責任編輯:何家巧