UG/NX 二次开发(C#) 程序自动切换制图模式
生活随笔
收集整理的這篇文章主要介紹了
UG/NX 二次开发(C#) 程序自动切换制图模式
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?作為C#語(yǔ)言的鐵粉,在做二次開發(fā)的時(shí)候,發(fā)現(xiàn)西門子在C#語(yǔ)言下的支持還是不夠完善。
就拿自動(dòng)切換制圖模式來(lái)說(shuō),C++可以直接調(diào)用內(nèi)部函數(shù)?UI_APP_change_application,還在網(wǎng)上找到有人推薦使用?::PostMessage切換模塊。
經(jīng)過(guò)一番模式,目前找到2種方法支持c#語(yǔ)言下切換模塊:
1、使用圖紙頁(yè)的Open方法,具體使用見代碼
/// <summary>/// 創(chuàng)建第一張圖紙/// </summary>/// <param name="dwgName">圖紙名稱(帶prt文件類型)</param>/// <param name="dwgTemplate">圖紙模板類型</param>/// <param name="sheetName">圖紙sheet名稱</param>public static void CreatDWG(string dwgName, string dwgTemplate, string sheetName, string asmName){Session theSession = Session.GetSession();theUFSession = UFSession.GetUFSession();FileNew fileNew1;fileNew1 = theSession.Parts.FileNew();fileNew1.TemplateFileName = dwgTemplate;fileNew1.Application = FileNewApplication.Drafting;fileNew1.Units = NXOpen.Part.Units.Millimeters;fileNew1.TemplateType = FileNewTemplateType.Item;fileNew1.NewFileName = "C:\\temp\\" + dwgName;fileNew1.MasterFileName = asmName;fileNew1.UseBlankTemplate = false;fileNew1.MakeDisplayedPart = true;NXObject nXObject1;nXObject1 = fileNew1.Commit();fileNew1.Destroy();Part workPart = theSession.Parts.Work;Part displayPart = theSession.Parts.Display;NXOpen.Drawings.DrawingSheet drawingSheet1 = (NXOpen.Drawings.DrawingSheet)workPart.DrawingSheets.FindObject("A3_1");drawingSheet1.Open();theUFSession.Draw.RenameDrawing(drawingSheet1.Tag, sheetName);//CreateView(drawingSheet1.Tag);}2、使用theUI.MenuBarManager.ApplicationSwitchRequest("UG_APP_DRAFTING")
int moduleid;theUFSession.UF.AskApplicationModule(out moduleid);if (moduleid != UFConstants.UF_APP_DRAFTING){theUI.MenuBarManager.ApplicationSwitchRequest("UG_APP_DRAFTING");}個(gè)人推薦第二種方法,因?yàn)槲沂褂玫腘X8.0,網(wǎng)上也發(fā)現(xiàn)高版本的方法。一起列舉如下:
NX10:
Session theSession = NXopen.Session.GetSession(); theSession.ApplicationSwitchImmediate("UG_APP_DRAFTING");NX11:
Part workPart = theSession.Parts.Work; workpart.Drafting.EnterDraftingApplication();總結(jié)
以上是生活随笔為你收集整理的UG/NX 二次开发(C#) 程序自动切换制图模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux endpoint,usb中的
- 下一篇: 从拳皇97中浅谈C#委托与事件