当前位置: 首页 > news >正文

UGNX二次开发——截图功能

        在NX中没有截图功能,为了方便加工工艺人员制定工艺是制作缩略图,本文介绍三种方法,也许会有第四种,参考【NX二次开发】视图对象截图。但是个人认为适合自己的才是最好。因为要制作一个案例,参考知网论文:一种自动输出数控程序清单的NX二次开发方法中用到该功能,因此提前进行实验功能是否可以使用。本人做过Creo二次开发,sw二次开法,NX二次开发,截至目前最感兴趣的是NX二次开发,作为新生真的有太多的无奈了,程序有太多的BUG了,能坚持到现在,其中要感谢各位博客博主,也要感谢王牌飞行员_里海,以及其他大佬,自学这个已经一年有余,每次遇到BUG是总会有人伸出援手,对此万分感谢。因此博主会分享给各位自己在学习中的一些问题以及解决方案。当然也有自己的小专题,有时需要一瓶饮料,内容可能不是那么完美,但是足够给新手提供思路。

第一种方法,使用单选函数进行截图。个人评价代码太多,哈哈哈,好像之高清截图。

//用户定义
#include <uf_ui.h>
#include <uf_part.h>
#include <uf_csys.h>
#include <uf_disp.h>
#include <uf_modl.h>
#include <uf_trns.h>
#include <uf_ui.h>
#include <uf_vec.h>
#include <uf_view.h>
#include <afx.h>//用户定义
// 获取输入体相对于NX视图的左上角与右下角坐标
static void GetTwoPoints(tag_t body, double leftT[3], double rightB[3])
{// 创建临时坐标系UF_initialize();double temp = 0.0;double csys[12] = { 0.0 };tag_t mtxId = NULL_TAG, csysId = NULL_TAG;uc6430("", &csys[0], &temp);uc6433("", &csys[3]);UF_CSYS_create_matrix(&csys[3], &mtxId);UF_CSYS_create_temp_csys(&csys[0], mtxId, &csysId);// 计算包围盒并求得左上角与右下角的坐标double min[3] = { 0.0 };double dists[3] = { 0.0 };double dirs[3][3] = { { 0.0 },{ 0.0 },{ 0.0 } };UF_MODL_ask_bounding_box_aligned(body, csysId, 0, min, dirs, dists);UF_VEC3_affine_comb(min, dists[1], &dirs[1][0], leftT);UF_VEC3_affine_comb(min, dists[0], &dirs[0][0], rightB);// 将绝对坐标系的点转换为NX视图坐标int status = 0;double matrix[12] = { 0.0 };double abs[9] = { 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0, 0.0 };uf5940(abs, &csys[0], matrix, &status);uf5941(leftT, matrix);uf5941(rightB, matrix);UF_terminate();
}
// NX视图坐标转屏幕像素坐标
static bool GetScreenPt(double p1[3], double p2[3], POINT pts[2])
{UF_initialize();HWND nxHwnd = (HWND)UF_UI_get_default_parent();HWND drawZone = FindWindowEx(nxHwnd, NULL, L"NX

http://www.mrgr.cn/news/96580.html

相关文章:

  • 蓝桥杯专项复习——二分
  • 将 PyTorch Model 用可视化方法浏览 torchview,onxx, netron, summary | 撰写论文 paper
  • PDF解析黑科技:从OCR-Free到多模态大模型的进化之旅
  • DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)之添加行拖拽排序功能示例14,TableView16_14 拖拽自动保存示例
  • 《异常检测——从经典算法到深度学习》30. 在线服务系统中重复故障的可操作和可解释的故障定位
  • 基于PX4和Ardupilot固件下自定义MAVLink消息测试(QGroundControl和Mission Planner)
  • SQL注入之盲注技术详解
  • DataPlatter:利用最少成本数据提升机器人操控的泛化能力
  • 大模型时代的基础架构 读书笔记
  • Android设计模式之代理模式
  • 项目上传github——SSH连接配置文档
  • 【MySQL】从零开始:掌握MySQL数据库的核心概念(四)
  • 【MySQL】从零开始:掌握MySQL数据库的核心概念(五)
  • Transformer-BiLSTM、Transformer、CNN-BiLSTM、BiLSTM、CNN五模型多变量回归预测
  • 车载以太网网络测试-25【SOME/IP-报文格式-1】
  • Cocos Creator Shader入门实战(七):RGB不同算法效果的实现,及渲染技术、宏定义、属性参数的延伸配置
  • AIGC1——AIGC技术原理与模型演进:从GAN到多模态融合的突破
  • 01-Docker 安装
  • 五.ubuntu20.04 - ffmpeg推拉流以及Nginx、SRS本地部署
  • YOLOv11模型的常见处理