轉(zhuǎn)帖|其它|編輯:郝浩|2012-04-25 22:21:20.000|閱讀 653 次
概述:在CAD/CAM/CAE/PLM/EDA/AEC、科學數(shù)據(jù)的可視化顯示以及娛樂等領域,3D圖形技術有著廣泛的應用。強大的3D圖形功能可以為軟件使用 者提供直觀、逼真的3D可視化效果以及便捷的人機交互。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
在CAD/CAM/CAE/PLM/EDA/AEC、科學數(shù)據(jù)的可視化顯示以及娛樂等領域,3D圖形技術有著廣泛的應用。強大的3D圖形功能可以為軟件使用 者提供直觀、逼真的效果以及便捷的人機交互。在3D應用程序開發(fā)早期,雖然直接使用OpenGL或Direct3D等圖形編程接口就可以滿足一 般的可視化需要,但如果3D應用程序需要更加高級的圖形功能(如隱藏線消除,高級渲染和貼圖、動畫、文字處理、2D矢量圖輸出、高級動畫等)或需要對圖形 性能進行優(yōu)化時,開發(fā)人員還需要做大量的工作,如建立自己的圖形數(shù)據(jù)庫以及對包括OpenGL、Direct3D在內(nèi)的多種硬件驅(qū)動提供支持等,而這些圖 形功能的實現(xiàn)需要很多專業(yè)圖形開發(fā)人員通過多年的努力才可能完成。
圖1 HOOPS在CAD方面的應用
為了使用戶能夠快速開發(fā)出高品質(zhì)的,Spatial公司不僅提供了ACIS造型組件、InterOp數(shù)據(jù)接口組件,還和著名的可視化組件開發(fā) 商美國TSA公司進行緊密合作,提供HOOPS可視化組件的授權和技術服務,使用戶可以在更高層次的圖形平臺上開發(fā)3D軟件,從而提升軟件產(chǎn)品的競爭力, 降低開發(fā)成本并加快產(chǎn)品上市。
一、可視化組件HOOPS簡介
HOOPS組件是建立在OpenGL、Direct3D等圖形編程接口之上的更高級別的應用程序框架,由美國TSA公司開發(fā)并由TSA和Spatial公司負責發(fā)布和提供技術支持。
HOOPS不僅為軟件開發(fā)人員提供了強大的圖形功能,如高質(zhì)量的模型顯示、便捷的人機交互、包括OpenGL和Direct3D在內(nèi)的多種渲染管道的支 持、高級渲染、2D圖形的矢量化輸出、動畫、動態(tài)干涉檢查以及圖形數(shù)據(jù)流化處理等,此外HOOPS中還內(nèi)嵌了多邊形優(yōu)化和大模型處理等技術,能夠大大提高 3D可視化的性能。另外HOOPS開發(fā)包中提供的大量應用程序級的實例源碼,可以幫助用戶在很短的時間內(nèi)搭建出商業(yè)級的3D圖形應用程序。目前有170多 個商業(yè)應用程序是基于HOOPS組件開發(fā)出來的。
HOOPS組件按功能可進一步分為HOOPS/3dAF、HOOPS/Stream以及HOOPS/ NET三個子組件,其中HOOPS/3dAF組件是一個,采用了保留模式的圖形數(shù)據(jù)庫和多種渲染管道來管理和繪制圖形對象;HOOPS/Stream組件可以用來對場景圖數(shù)據(jù)進行流化處理;而HOOPS/NET組件則可以用于網(wǎng)絡協(xié)同。這三個子組件既可以單獨授權,也可以結合在一起使用。
圖2 HOOPS在CAE方面的應用
二、HOOPS組件技術優(yōu)勢
1.更高級別的3D應用程序框架
HOOPS是一個建立在OpenGL、Direct3D等圖形編程接口之上的更高級別的開發(fā)平臺,提供了很多應用層的功能以及相應的實現(xiàn)源碼,如文檔視圖 管理、打印、事件處理、視圖瀏覽(包括3D虛擬行走)、檢取和動態(tài)高亮、動畫、材質(zhì)貼圖、測量和批注、動態(tài)干涉檢查以及和造型引擎接口等,如果開發(fā)人員直 接利用OpenGL和Direct3D等圖形編程接口來開發(fā)專業(yè)級別的3D應用程序,則需要大量的時間、精力以及資源來實現(xiàn)這些高層次的功能。
2.保留模式圖形數(shù)據(jù)庫
HOOPS采用保留模式的圖形數(shù)據(jù)庫用于記錄圖形對象之間的位置和層次關系信息,具有更快的選擇、查詢和渲染功能,而且使用起來更加靈活方便,而采用OpenGL 和Direct3D等立即模式圖形編程接口則需要用戶進行實時管理。HOOPS采用保留模式圖形數(shù)據(jù)庫的優(yōu)勢包括:1)圖形數(shù)據(jù)庫中記錄了圖形對象之間的 層次關系和修改標記,因此可以快速判斷出哪些對象需要被發(fā)送到繪制管線中進行繪制,基于修改標記的增量更新模式可以大大減少需要繪制的三角片數(shù)目,提高圖 形性能;2)由于采用了圖形數(shù)據(jù)庫技術,HOOPS中封裝了一系列用于對圖形數(shù)據(jù)中的對象進行排序的算法,排序的結果可以用于隱藏面快速消除、隱藏線的精 確繪制以及透明效果的實現(xiàn)等;3)大模型處理——對于靜態(tài)場景,HOOPS中的快速移動技術可以使用戶以很小的代價實現(xiàn)在大場景中重新繪制小的對象;對于 動態(tài)場景,HOOPS中集成了背面剔除、視錐體剔除、遮擋剔除以及多種細節(jié)層次(LOD)繪制等算法,大大減少了需要發(fā)送到繪制管線的對象的數(shù)目,有效提 高了大模型處理的能力。另外,HOOPS中內(nèi)嵌的多邊形優(yōu)化算法可以用于生成長的三角條帶或三
角扇形。另外,刪除冗余的頂點也會大大加快圖形的繪制。
圖3 HOOPS在AEC方面的應用
3.高級可視化能力
HOOPS對于光照、陰影、反走樣、環(huán)境紋理映射、alpha貼圖、凹凸貼圖和霧化效果等也提供了很好的支持,可以幫助用戶實現(xiàn)非常逼真的渲染效果。另外,HOOPS中提供的全局和局部剖切平面的功能可以使用戶查看模型內(nèi)部信息。
4.靈活的設備驅(qū)動
交互式的圖形應用程序需要為每個底層的2D/3D API準備一個單獨的映射層,或者是軟件設備驅(qū)動。如目前很多商業(yè)3D程序是直接使用OpenGL來用于可視化的,但隨著Windows Vista發(fā)布的期限越來越近,這些軟件開發(fā)商也需要考慮盡快對Direct3D接口提供支持;如果用戶需要進行2D信息的矢量化輸出,那么很可能會用到 WindowsGDI和Postscript等設備驅(qū)動。因此一個商業(yè)3D應用程序往往需要處理多種設備驅(qū)動,使最終用戶可以根據(jù)需要選擇最適合的設備驅(qū) 動。
不過,創(chuàng)建一個最簡單的設備驅(qū)動也許會需要1個月的時間,并且根據(jù)應用程序的執(zhí)行需求不同,所需的時間還有可能成倍地增加,另外還需要解決由于圖形編程接 口版本升級和硬件接口規(guī)范變化等因素所帶來的問題。通過多年的努力,HOOPS幾乎對所有主流設備驅(qū)動(包括OpenGL、Direct3D、 Windows GDI、Postscript等)都提供了很好的支持。
圖4 HOOPS在CMM方面的應用
5.全面的圖形卡測試
圖5 HOOPS渲染示例
每個HOOPS版本都會進行全面的圖形卡測試,以保證對于不同的渲染管道,圖形卡都可以達到最佳的效果。HOOPS對OpenGL和Direct3D驅(qū)動的支持在很多 圖形卡上都測試通過了,而很少有公司愿意將資源投入在這種級別的顯卡認證上。另外,相關的測試結果一方面可以供用戶參考,另一方面也是圖形卡供應商改善顯 卡性能的重要依據(jù)。
6.專業(yè)的3D/2D文字處理
立即模式的3D API對文字的支持非常有限,而HOOPS具有非常專業(yè)的3D/2D文字處理能力,比如:
(1)健壯和便攜的TrueType字體支持——HOOPS通過一個嵌入的字體引擎,提供了對TrueType等字體便攜的支持,這些字體可以像位圖一樣在場景空間進行繪制或像在場景中的其他3D幾何對象一樣進行操作,如對文字進行選擇、編輯和屬性設置等操作;
(2)對Unicode字符串的支持——國內(nèi)用戶可以用來插入中文字體;
(3)大量的文字擴展屬性的支持,其中包括多行文字一次性繪制,字符間距調(diào)整、傾斜和跟隨路徑的能力,文字簡化處理,下劃線、頁眉和刪除線文字,用戶可控的文字自動縮放與回調(diào),在字串中修改部分文字的屬性等,這些功能的實現(xiàn)需要數(shù)個編程人員多年的努力。
7.HOOPS/Stream高度壓縮和流化處理能力
圖6 3D模型和2D文字共存處理
HOOPS/Stream組件可以讓開發(fā)人員創(chuàng)建高度壓縮和經(jīng)過流化處理的自定義HOOPS流文件,這樣不僅可以在加載文件時快速顯示場景,還可以將輕量 化信息直接提取出來用于下游應用程序中,如瀏覽和批注等。如果用戶自己在原有的格式中嵌入輕量化信息或重新定義一個壓縮的3D格式并提供導入/導出功能, 那么至少需要幾個月的努力,而采用HOOPS/Stream技術則可以幫助他們快速實現(xiàn)這點。經(jīng)過高度壓縮和流化處理的HSF文件不僅便于下游的瀏覽器進 行瀏覽、查詢和批注,而且也非常適合在網(wǎng)絡上發(fā)布和操作。目前為止已經(jīng)有很多公司提供對HSF文件格式的支持,如CATIA、SolidWorks等軟件 都可以直接輸出HSF格式的輕量化文件,HOOPS中也提供對Autodesk公司DWF輕量化文件格式3D信息的讀寫接口。
三、HOOPS的組件商業(yè)價值
采用Spatial的HOOPS組件不但可以在技術方面領先一步,而且具有以下商業(yè)價值。
1.性能和可靠性
H O O P S組件是被證明了的具有高性能和高可靠性的商業(yè)開發(fā)平臺,目前有包括Autodesk、SolidWorks、IronCAD、Fluent、LK等著名公司在內(nèi)的170多家商業(yè)用戶在使用HOOPS組件。
2.專業(yè)的技術支持和服務
Spatial的商業(yè)模式是建立在用戶成功的基礎上的,因此Spatial的專業(yè)技術支持和服務團隊將會竭力協(xié)助用戶盡快取得成功,Spatial的本地化支持也會幫助國內(nèi)用戶快速開發(fā)出高性能的軟件產(chǎn)品。
3.降低開發(fā)成本和縮短產(chǎn)品上市時間
大大減少用戶自己開發(fā)的投入或風險,用戶通過授權HOOPS產(chǎn)品即可使用已被業(yè)界證明了的功能強大且穩(wěn)定的3D可視化組件,使用戶無需花費大量的人力物力 和時間去自行開發(fā)和維護自己的圖形內(nèi)核,而是將精力集中到具有更大附加值的專業(yè)功能的開發(fā)上,從而可以更早地發(fā)布產(chǎn)品,使效益最大化。
4.保持持續(xù)競爭力
HOOPS每個新的版本或補丁都會有功能增強和性能提升,用戶通過將自己的產(chǎn)品發(fā)布和HOOPS產(chǎn)品發(fā)布緊密結合起來,就可以盡早使用到這些新功能并提高產(chǎn)品性能,從而保持持續(xù)的競爭力。
5.降低用戶風險
HOOPS的與客戶分享成功的合作方式和有競爭力的價格定位使用戶在使用HOOPS組件進行軟件開發(fā)和維護的過程中可以更好地管理成本,降低用戶的風險。
四、HOOPS和ACIS、InterOp之間的關系
HOOPS組件不但可以單獨用于3D模型的可視化,而且可以和其他造型內(nèi)核(如ACIS)和數(shù)據(jù)接口組件(如InterOP)結合使用。圖7所示非常直觀 地說明了HOOPS和ACIS、InterOp之間的關系以及如何使用這三個組件來構建3D應用程序的基本框架。
3D應用程序通過HOOPS/GUI和ACIS、HOOPS組件建立連接,從而實現(xiàn)利用ACIS內(nèi)核進行造型,并利用HOOPS組件進行可視化和人機交 互。ACIS和HOOPS之間通過HOOPS/ACIS bridge來進行通信,從而實現(xiàn)文檔和視圖分開;InterOp組件用于讀寫實現(xiàn)ACIS模型和其他格式3D模型之間的相互轉(zhuǎn) 換;HOOPS/Stream組件則可用于讀寫3D場景圖數(shù)據(jù)。
圖7 利用HOOPS、ACIS和InterOp開發(fā)3D應用程序的框架
五、結束語
經(jīng)過HOOPS圖形專家多年的開發(fā)努力,HOOPS組件提供了商業(yè)級別的CAD/CAM/CAE/AEC等領域3D應用程序所需要的圖形功能,和一些 HOOPS用戶合作的經(jīng)驗告訴我們,沒有其他與場景圖相關的組件可以在深度、廣度、靈活性和可靠性方面與HOOPS所具有的特征相媲美,而HOOPS在圖 形顯示效果、速度和易用性等方面的不斷進步也將會給用戶帶來更大的價值。數(shù)百家3D軟件開發(fā)商和Spatial合作的實例表明,通過授權Spatial所 提供的ACIS造型組件、InterOp數(shù)據(jù)接口組件和HOOPS可視化組件大大減輕了他們自行開發(fā)和維護的負擔,縮短了開發(fā)時間,從而使他們可以更加專 著于具有更高附加值的專業(yè)功能的開發(fā),創(chuàng)造出更大的價值。
免費下載3D可視化方案:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務必注明出處、不得修改原文相關鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:網(wǎng)絡轉(zhuǎn)載