通过内部函数SEL_ask_current_selection_context,获取到当前游标选择器指针,结合UF函数UF_UI_ask_sel_cursor_pos即可获取到当前光标在视图中的绝对坐标,此方法比通过获取窗口句柄再结合UF_VIEW_ask_current_xy_clip计算坐标更简单可靠。

在工程图中设置UF_UI_set_cursor_view为0,即可获取到光标在任意投影视图中的坐标。

/// <summary>
/// 获取当前光标的绝对坐标
/// </summary>
/// <param name="cursorView"></param>
/// <returns></returns>
public static double[] AskCursorPos(int cursorView = 1)
{NXOpen.UF.UFSession theUfSession = NXOpen.UF.UFSession.GetUFSession();Tag viewTag;double[] cursorPos = new double[3];theUfSession.Ui.SetCursorView(cursorView);//希望在工程图视图中获取到投影视图中的信息需要设置为0,默认为1NXOpen.Utilities.JAM.StartCall();IntPtr select = SEL_ask_current_selection_context();NXOpen.Utilities.JAM.EndCall();theUfSession.Ui.AskSelCursorPos(select, out viewTag, cursorPos);return cursorPos;
}
/// <summary>
/// 获取当前选择器指针
/// </summary>
/// <returns></returns>
[DllImport("libugui.dll", EntryPoint = "?SEL_ask_current_selection_context@@YAPAUUGUI_selection_s@@XZ")]
public static extern IntPtr SEL_ask_current_selection_context();

C# NX二次开发 使用内部函数获取当前光标在视图中的绝对坐标相关推荐

  1. UG NX二次开发(C#)-建模-获取圆柱面信息(轴向、半径、深度)

    获取圆柱面的信息 前言 一.在UG NX中面的类型有哪些? 二.获取圆柱面信息的函数 1.获取半径和轴向 2.计算圆柱面的深度值 3.测试用例 总结 文章目录 前言 一.在UG NX中面的类型有哪些? ...

  2. NX二次开发-调内部函数UGS::UICOMP_enum::set_width(int)更改BlockUI的枚举控件宽度

    版本 NX11+VS2013 内容说明 这个内部函数的设置方法,我之前不会,是QQ群里的一位大佬分享出来的. 关于这块,我也百度搜了一下,找到了几个相关的. 1.直接手动修改BlockUI界面 在低版 ...

  3. C# NX二次开发 NX6.0获取视图中心绝对坐标

    在NX8.5以上版本可以使用NXOpen.View.AbsoluteOrigin或UF_VIEW_ask_center等方式获取视图中心绝对坐标 但NX6.0版本的.NET中没有UF_VIEW_ask ...

  4. NX二次开发-UF_DRF_ask_dim_info获得图纸尺寸属于哪个视图和图纸页

    需求:获得图纸上的尺寸属于哪个视图和图纸页 今天看到有个兄弟问了这个问题,这个需求,我以前给公司开发的工具中用到过. 但以前好像是忘记写到博客上了,今天专门记录一下. NX9+VS2012#inclu ...

  5. NX二次开发-UFUN获取part的单位(公制/英制)UF_PART_ask_units

    NX二次开发-UFUN获取part的单位(公制/英制)UF_PART_ask_units NX11+VS2013#include <uf.h> #include <uf_part.h ...

  6. UG\NX二次开发 获取曲线上某个位置的点坐标、切线矢量、主法线矢量、副法线矢量 UF_MODL_ask_curve_props

    文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan 简介: UG\NX二次开发 获取曲线上某个位置的点坐标.切线矢量.主法线矢量.副法线矢量 U ...

  7. NX二次开发-UFUN获取工程图所有视图tag UF_DRAW_ask_views

    NX二次开发-UFUN获取工程图所有视图tag UF_DRAW_ask_views #include <uf.h> #include <uf_draw.h> #include ...

  8. NX二次开发-UFUN获取工程图详细信息UF_DRAW_ask_drawing_info

    NX二次开发-UFUN获取工程图详细信息UF_DRAW_ask_drawing_info NX9+VS2012#include <uf.h> #include <uf_draw.h& ...

  9. UG\NX二次开发 获取相切面的三种方法

    文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan 简介: UG\NX二次开发 获取相切面的三种方法 方法1: 使用NX Open C++ 的面 ...

最新文章

  1. PaddleClas
  2. android什么时候会产生ANR
  3. centertrack
  4. EOS 帐户权限操作--你找不到的干货 (原创) 续集-EOS 3.0
  5. 写出下列的中文意思 HTML,计算机网络技术考试试题纸B卷
  6. 最小二乘法拟合直线 c++程序
  7. phpcms v9 打开网站特别慢 增加数据库缓存方法
  8. 计算机应用与技术大赛,关于举办2017年燕山大学第一届计算机应用技术与程序设计大赛的通知...
  9. 鸿蒙系统下滑线怎么设置,微信下划线昵称教程来了,快来试试!
  10. cass参考手册_什么?你还不会测绘?南方CASS教程+视频讲解+插件汇总,快来学!...
  11. Android签名机制学习笔记
  12. 游戏服务器开发技术栈
  13. 利用python生成图片验证码
  14. 读书笔记 · AI产品经理的工作流程
  15. 周凯:如何利用数据挖掘让RTB广告效果倍增?
  16. Cocos Creator 入门笔记
  17. 台式机1080ti最低多少起_配一台1080ti的电脑要多少钱,不是土豪,最低
  18. C#编程基础——综合项目实践:KTV点歌系统项目第九课:制作歌曲排行窗体
  19. Oracle 报错ORA-00904: 标识符无效 ,但是列名和表名没有写错
  20. Ubuntu 挂载U盘

热门文章

  1. 多线程与多进程(转)
  2. [ECCV2020](3DDFA-V2)Towards Fast, Accurate and Stable 3D Dense Face Alignment
  3. Linux常用命令(中)、时间日期类、date 显示当前时间、ntpdate命令、cal 查看日历、useradd 添加新用户、passwd 设置用户密码、id 查看用户是否存在
  4. 介绍五种“去火”食疗法
  5. Collection体系结构图
  6. JavaScript中三个点(...)的意思
  7. 程序设计语言发展回顾与展望
  8. PyOpenGL初步
  9. RESTful架构简介
  10. php编译打包,解压即用,Ubuntu上Nginx/Apache/PHP编译打包