999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于CatiaComposer的三維模型Web瀏覽平臺開發

2019-06-24 08:25:34沈剛官雄明馮衛星張杰銘
軟件工程 2019年4期
關鍵詞:二次開發

沈剛 官雄明 馮衛星 張杰銘

摘 ?要:Composer player是法國達索公司開發的一款輕量化三維模型播放軟件,輕量化模型的展示在產品驗證、推廣、銷售等環節起著至關重要的作用。本文結合控件提供的開發接口,簡要介紹了Web網頁內調用該控件的方法,并輔以實例講解控件所提供方法、事件、屬性的調用步驟。

關鍵詞:Composer API;二次開發;輕量化模型;網頁開發

中圖分類號:TP311.1 ? ? 文獻標識碼:A

Abstract:Composer player is a 3D model desktop application developed by Dassault Systèmes,which plays significant role in the fields of marketing,sales,customer service,etc.In combination with the API in the ActiveX control,this paper introduces how to use the control and how to call the methods,events,and properties provided by the ActiveX control in a web page.

Keywords:Composer API;secondary development;simplified models;web development

1 ? 引言(Introduction)

Composer是法國Dassault Systèmes研發的一款桌面應用程序,旨在為非CAD用戶提供一個可以直接從3D源文檔創建相關的2D、3D輕量化產品文檔的平臺,被廣泛應用于銷售、市場推廣、客戶服務、培訓、支持等領域[1]。Composer支持直接打開大部分3D CAD設計軟件的原始設計文檔(Catia、UG、Creo、Solidworks、Inventor),以及各類中間格式,并可以在原始設計文檔發生變更時,將變更更新到Composer內,避免了Composer文檔的重建。

目前,基于Composer的輕量化三維模型可視化系統在各大行業得到了廣泛的應用,相關研究人員分別提出了三維模型裝配工藝可視化系統[2-4];基于Flash的網絡教學虛擬仿真課件平臺[5],這些成果重點研究了輕量化模型的展示效果,未對輕量化平臺與其他系統集成的具體實施過程進行介紹。本文將重點討論輕量化軟件Composer Player與網頁集成的詳細方法。

2 ?網頁與3D模型的結合(Combination of 3D modelsand web pages)

Composer最初是達索公司的獨立軟件3D Via Composer,后來被分別集成到CatiaV6和Solidworks的安裝包內供用戶選擇購買安裝,相應的名稱分別變更為Catia Composer和Solidworks Composer,但其在使用方法與內核上保持一致。

當下,越來越多的行業將產品3D模型置于WEB網站供用戶瀏覽,以此提高客戶對產品的感知度,幫助客戶制定精準可靠的采購計劃。WEB作為企業宣傳的有力保障,相對于傳統的Word、PPT,其適用面更廣泛,用戶群體更大,更方便用戶通過WEB與產品進行互動交流操作,更有利于企業產品的宣傳推廣。

在工業領域,3D模型零件數量龐大,產品結構復雜。為降低企業設計圖紙泄密風險,同時提高用戶體驗,3D模型發布至網頁端前的精簡輕量化必不可少。Composer為企業提供了可靠的模型輕量化解決方案,同時開放眾多的API接口,用戶可以靈活地定制符合工作需求的各類命令及功能[6]。

3 ? 二次開發準備(Secondary development preparation)

本文將結合Catia Composer Player Pro的ActivX控件所提供的API,使用Visual Studio 2015作為開發工具,介紹如何在HTML網頁內調用接口內的事件、方法和屬性。

在進行網頁開發前,需在電腦上安裝Composer Player軟件并取得相應許可。其中,Player ActiveX 內的部分功能需取得Pro許可證后方可訪問。控件會在軟件安裝過程中自動注冊到計算機,用戶也可通過安裝路徑內的批處理文件“\bin\Register.bat”進行手動注冊[1]。

4 ? 網頁框架構建(Web framework construction)

4.1 ? 初始化控件

首先,新建一個ASP.NET空網站,本文以Visual C#語言為例。在新建的空網站項目上添加一個WEB窗體,并命名為MyWebPlayer。接下來,在該WEB窗體內聲明Composer Player ActiveX.ocx控件,OCX控件存放在Composer安裝路徑下。要聲明OCX控件,首先需要獲得控件的ClassID,ClassID是ActiveX控件的唯一標識符,ClassID可以從注冊表編輯器中獲得。”\HKEY_CLASSES_ROOT\CLSID\{410B702D-FCFC-46B7-A954-E876C84AE4C0}”,花括號內的字符串即為所需ClassID。

在MyWebPlayer.aspx文件的 間使用標簽聲明該控件。

classid="CLSID:410B702D-FCFC-46B7-A954-E876C84AE4C0">

聲明語句中,“id”是用戶為該控件定義的身份標識,用戶通過該id在WEB應用程序內調用控件的屬性和方法;“height”和“width”定義了控件在WEB窗口中的大小,WEB應用程序通過“classid”調用ActiveX控件。

同時,在“”標簽內通過“”定義控件的一系列屬性值,如模型渲染模式、燈光效果、大地柵格、自動播放、循環播放等模型加載后的顯示效果,也可以定義控件加載時是否顯示視圖框、標準工具條、協同窗口等用戶操作菜單欄。需要說明的是,禁用不必要的工具欄能夠極大地提高控件加載速度、改善用戶體驗。文中僅定義了控件初始化時打開的文檔路徑及名稱,自動播放“AutoPlay”處于關閉狀態。用戶可以查閱編程手冊定制更多的屬性值。

至此,WEB網頁完成了控件的聲明,用戶可在以IE為內核的瀏覽器中查看效果。

4.2 ? 控件交互

網頁內的按鈕、文本框、進度條是實現用戶與操作界面交互的基本手段,交互界面的設計應力求簡潔。簡單易懂的界面設計既可以提升用戶使用過程中的易用性,又能夠降低使用者的培訓成本[7]。

在WEB頁面內設計三個按鈕,分別用于改變所選零件的顏色、位置,重載默認屬性;插入一個文本框,用于顯示信息。

在標簽內聲明鼠標左鍵單擊事件,當用戶單擊3D零件時,在文本框內顯示所選零件名稱;同時聲明"EndLoadModel"事件,當模型加載完畢后,觸發該事件,獲取并備份所有幾何模型的默認屬性值,默認屬性值用于在用戶誤操作后將零件屬性重置為初始值。

ShowName(); ?//鼠標左鍵單擊事件

5 ? 功能實現(Function implementation)

為實現用戶的定制化需求,控件內提供了大量事件與方法供用戶訪問。本文將控件提供的方法封裝到JavaScript文件內,簡化代碼編寫和調用過程。

為項目添加一個Js文件,命名為“MyFunctions.js”。在文件內添加函數以實現按鈕功能,添加事件響應函數以處理鼠標單擊事件。

文中主要使用了API提供的以下接口函數,如表1所示。

“MyFunctions.js”文件中,各函數的實現代碼如下所示:

function SetColor() { ? //改變所選零件的顏色

var strSelection;

var bValue;

var strPropertySet;

strPropertySet=""

strSelection=document._ComposerPlayerActiveX.Selection();

bValue=document._ComposerPlayerActiveX.SetPropertySet(strSelection,strPropertySet);

document._ComposerPlayerActiveX.RefreshScene(1);

}

function MovePart() { ? ? //零件平移

var strSelection;

var bValue;

strSelection=document._ComposerPlayerActiveX.Selection();

bValue=document._ComposerPlayerActiveX.TranslateInWCS(strSelection,30,0,25);

document._ComposerPlayerActiveX.RefreshScene(1);

}

function ShowName() { ? //鼠標單擊事件響應

var strSelection;

var TextBox;

TextBox=document.getElementById("MsgBox");

TextBox.value=document._ComposerPlayerActiveX.Selection();

}

function RstDft() { ? ? //恢復默認屬性

var bRtn;

bRtn=document._ComposerPlayerActiveX.SetPropertyMap(strProps);

document._ComposerPlayerActiveX.RefreshScene(1);

}

function GetNeutralProps() { ? ?//獲取默認屬性,在模型加載完畢后觸發事件

var strSelection;

strSelection = document._ComposerPlayerActiveX.GetAllActorsByType("CLitActorMesh");

strProps = document._ComposerPlayerActiveX.GetActorsProperties(strSelection);

}

在瀏覽器內打開網頁,驗證各命令按鈕功能是否與設計相符,如圖1所示。

6 ? 結論(Conclusion)

本文以Visual Studio 2015為開發平臺,簡單介紹了Catia Composer Player ActiveX在WEB端二次開發的基本流程,并結合實例講解了實際應用過程中的關鍵步驟。定制化的瀏覽器端產品三維展示平臺的搭建,能夠極大地增強企業產品的展示效果,助力銷售、研發、制造等環節。

參考文獻(References)

[1] Dassault Systèmes.Composer Programming Guide R2015x.D Systèmes,2014.

[2] 屈力剛,魏佩振,苑俊超.基于三維工藝模型的裝配現場可視化[J].制造業自動化,2013,35(20):83-87.

[3] 周亞麗,江征風,王立偉,等.基于3 DVIA Composer 的金剛石線切割機裝配工藝可視化研究[J].現代制造工程,2015(3):71-74.

[4] 彭煜,盛步云,潘陽芬,等.基于3DVIA Composer的汽輪機裝配工藝可視化研究[J].智能制造,2012(4):87-89.

[5] 谷艷華,朱艷萍,楊得軍,等.用于網絡教學的虛擬仿真交互式課件研究[J].圖學學報,2016,37(4):545-549.

[6] DS SOLIDWORKS公司.SolidWorks Composer使用指南[M].北京:機械工業出版社,2014.

[7] 馬躍.SolidWorksComposerAPI應用小窺[J].智能制造,2015(11):56-59.

作者簡介:

沈 ?剛(1990-),男,碩士,助理工程師.研究領域:軟件開發.

官雄明(1988-),男,碩士,助理工程師.研究領域:虛擬仿真.

馮衛星(1972-),男,本科,助理工程師.研究領域:機械設計.

張杰銘(1987-),男,本科,工程技術員.研究領域:前端設計.

猜你喜歡
二次開發
淺談基于Revit平臺的二次開發
甘肅科技(2020年20期)2020-04-13 00:30:02
西門子Operate高級編程的旋轉坐標系二次開發
淺談Mastercam后處理器的二次開發
模具制造(2019年3期)2019-06-06 02:11:02
基于C#的AutoCAD建筑構件庫二次開發
江西建材(2018年2期)2018-04-14 08:01:14
西門子Easy Screen對倒棱機床界面二次開發
基于全站儀二次開發的覆冰厚度測量與實現
電測與儀表(2016年9期)2016-04-12 00:29:52
Micaps3.2 版本二次開發入門淺析
西藏科技(2015年12期)2015-09-26 12:13:51
基于VB的ANSYS二次開發在變壓器抗短路性能分析中的應用
基于CATIA的橡皮囊成形毛料展開的二次開發
機械工程師(2015年9期)2015-02-26 08:38:10
ANSYS Workbench二次開發在汽車穩定桿CAE分析中的應用
汽車零部件(2014年5期)2014-11-11 12:24:32
主站蜘蛛池模板: 亚洲高清中文字幕在线看不卡| 国产噜噜在线视频观看| 久久香蕉国产线看观看式| 四虎永久免费在线| 国产在线视频欧美亚综合| 国产精品女主播| 蜜桃视频一区二区三区| 国产天天射| 99热精品久久| 日韩无码真实干出血视频| 99热国产这里只有精品9九| 日韩欧美中文亚洲高清在线| 99er精品视频| 91在线无码精品秘九色APP| 亚洲永久视频| 欧美精品aⅴ在线视频| 亚洲人成在线精品| 美女免费精品高清毛片在线视| 国产成人免费| 日韩第九页| 亚洲免费毛片| 久草视频中文| 99久久精品视香蕉蕉| 久久婷婷五月综合色一区二区| 青青草国产在线视频| 欧洲av毛片| 国产国产人在线成免费视频狼人色| 伊人国产无码高清视频| 91无码网站| 992Tv视频国产精品| 久久人午夜亚洲精品无码区| 精品国产aⅴ一区二区三区| 国产欧美日韩精品第二区| 一本大道无码日韩精品影视| 亚洲国产精品不卡在线| 国产精品久久久久婷婷五月| 男人天堂亚洲天堂| 亚洲AV无码乱码在线观看代蜜桃| 一本大道在线一本久道| 美女无遮挡免费视频网站| 青草91视频免费观看| av无码久久精品| 特黄日韩免费一区二区三区| 国产精品视频观看裸模| 亚洲一区网站| 国产人成乱码视频免费观看| 精品久久久久成人码免费动漫 | 国产在线自在拍91精品黑人| 欧美另类第一页| 一本无码在线观看| 日韩小视频在线播放| 999国内精品视频免费| 午夜少妇精品视频小电影| 欧美日韩国产在线人| 狠狠综合久久久久综| 人妻21p大胆| 欧美一级夜夜爽www| 国产高清自拍视频| 亚洲AV无码不卡无码| 亚洲精品自产拍在线观看APP| 国产视频欧美| 久青草网站| 亚洲六月丁香六月婷婷蜜芽| 无码AV高清毛片中国一级毛片 | 狠狠色婷婷丁香综合久久韩国| 欧美日韩专区| 999在线免费视频| 亚洲 欧美 偷自乱 图片 | 久久中文字幕av不卡一区二区| 波多野结衣国产精品| 欧美成人精品在线| 国产本道久久一区二区三区| 国产在线观看91精品亚瑟| 日韩视频免费| 日韩欧美中文字幕在线韩免费| 2021天堂在线亚洲精品专区 | 国产乱人激情H在线观看| 超清无码一区二区三区| 国产视频一区二区在线观看| 精品91在线| 免费啪啪网址| 婷婷午夜天|