实例介绍
【实例简介】在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小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明


网友评论
我要评论