实例介绍
【实例简介】在UG二次开发中用NXOPEN测量距离的例子很难找到,在上传一个供大家砸砖
【实例截图】
【核心代码】
using System; using NXOpen; using NXOpen.UF; using NXOpen.Utilities; public class Program { // class members private static Session theSession; private static UI theUI; private static UFSession theUfSession; public static Program theProgram; public static bool isDisposeCalled; public static double ada,adb; static TaggedObject body1, body2; static Point3d point1, point2; public static Part workpart = null; public static ListingWindow lw = null; bool dir; //------------------------------------------------------------------------------ // Constructor //------------------------------------------------------------------------------ public Program() { try { theSession = Session.GetSession(); theUI = UI.GetUI(); theUfSession = UFSession.GetUFSession(); lw = theSession.ListingWindow; workpart = theSession.Parts.Work; isDisposeCalled = false; } catch (NXOpen.NXException ex) { // ---- Enter your exception handling code here ----- // UI.GetUI().NXMessageBox.Show("Message", NXMessageBox.DialogType.Error, ex.Message); } } //------------------------------------------------------------------------------ // Explicit Activation // This entry point is used to activate the application explicitly //------------------------------------------------------------------------------ public static int Main(string[] args) { int retValue = 0; try { theProgram = new Program(); int ii, jj; ii = 2; jj = 3; string[] sta = { "保持当前Z轴", "Z轴反向", "3" }; jj=theUfSession.Ui.DisplayMenu("确认坐标系", 1, sta, 2); lw.Open();lw.WriteLine(jj.ToString()); int face_1 = 1;double re; int face_2 = 5; int c;Point3d pt1, pt2; fun k = new fun(); k.theSession = theSession;k.workPart = workpart;k.theUI = theUI;k.theUfSession = theUfSession; theUI.SelectionManager.SelectTaggedObject("选择实体", "选择", Selection.SelectionScope.WorkPart, false, false, out body1, out point1); theUI.SelectionManager.SelectTaggedObject("选择实体", "选择", Selection.SelectionScope.WorkPart, false, false, out body2, out point2); // Measurement.GetMinimumDistance((NXObject)body1, (NXObject)body2, out point1, out point2, out ccs); re=k.measu_dist(body1, body2, out c, out pt1, out pt2); lw.Open(); lw.WriteLine(re.ToString()); theProgram.Dispose(); } catch (NXOpen.NXException ex) { // ---- Enter your exception handling code here ----- } return retValue; } //------------------------------------------------------------------------------ // Following method disposes all the class members //------------------------------------------------------------------------------ public void Dispose() { try { if (isDisposeCalled == false) { //TODO: Add your application code here } isDisposeCalled = true; } catch (NXOpen.NXException ex) { // ---- Enter your exception handling code here ----- } } public static int GetUnloadOption(string arg) { //Unloads the image explicitly, via an unload dialog //return System.Convert.ToInt32(Session.LibraryUnloadOption.Explicitly); //Unloads the image immediately after execution within NX return System.Convert.ToInt32(Session.LibraryUnloadOption.Immediately); //Unloads the image when the NX session terminates // return System.Convert.ToInt32(Session.LibraryUnloadOption.AtTermination); } }
好例子网口号:伸出你的我的手 — 分享!
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论