自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 UG 使用 AddFilterHandler filter_cb 进行选择过滤

把基础打扎实了,进才进行更好的开发,有很多二次开发的,可能对UG比较熟悉,在网上简单的学习一下C++的知识,就进行开发,有些连C++ 指针都不清楚怎么样,数据结构也不怎么了解,就一直往下干,当然,对于自己的小项目,这些倒是问题不大,但是,一旦用于公司项目开发,随着项目越来越大,就没有办法控制了。WINDOWS API, 是WINDOWS 提供接口,有很多UG 的API函数,也是WINDOWS API的一个封装 ,比如文件保存,文件对话框等。不要发现一个问题,到处修改。下面是添加过滤函数添加的过程。

2025-03-03 22:26:46 72

原创 UG 二次开发使用 UF_MODL_check_interference 进行干涉检查

把基础打扎实了,进才进行更好的开发,有很多二次开发的,可能对UG比较熟悉,在网上简单的学习一下C++的知识,就进行开发,有些连C++ 指针都不清楚怎么样,数据结构也不怎么了解,就一直往下干,当然,对于自己的小项目,这些倒是问题不大,但是,一旦用于公司项目开发,随着项目越来越大,就没有办法控制了。在UG 二次开发,经常UF_MODL_check_interference进行体,或者面的干涉检查,UF_MODL_check_interference 是一个执行比较慢的函数,所以我们经常进行批量检查。

2025-03-03 22:13:54 186

原创 UG 二次开发 使用 UF_PART_export 导出实体

导出实体是UG常用的操作,下面我们一个UG二次开发中,执行导出实体。

2025-02-27 23:38:07 205

原创 UG 二次开发,使用属性设置电极火花位信息

在UG update_cb函数中,要根据checkbox的状态,设置对应火花位,数量控件的可用状态。

2025-02-27 22:09:54 98

原创 UG 二次开发 UF_OBJ_set_name 和 UF_OBJ_cycle_by_name 函数的使用

参数2, 指定对象的名字,名字的最大长度不能超过 UF_OBJ_NAME_LEN。UF_OBJ_cycle_by_name 可以查询出指定名字对象的tag_t。在UG中,我们可以通过 UF_OBJ_set_name 给一个对象命名。我们可以使用一个循环,对读取符合我们指定名字的实体。参数2,接收返回的对象的TAG_T。参数1,指定一个对象的tag_t。参数1,要查询的对象的名字。

2025-02-18 21:20:56 50

原创 UG 二次开发 与点相关的API函数 UF_CURVE_ask_point_data UF_CURVE_create_point

通过参数 tag_t point,传入点的tag_t, point_coords [ 3 ]接收返回的坐标点数据。UG二次开发中,使用经常需要使用点操作进行,下面我们介绍一下相关的函数。UF_CURVE_ask_point_data 查询一个点的坐标点数据。UF_SO_ask_parents 查询一个对象的父对象列表。UF_CURVE_create_point创建一个点。我们通过它,可以查询出点所在面。参数2接收创建的点的tag_t。参数1传入点的坐标点数据。

2025-02-18 21:01:50 161

原创 UG 二次开发基础- IUGTOOL 模具钢件属性设置

在模具的UG二次开发中,钢件属性设置,是一个比较基础和常用的功能,毕竟我们需要知道一个图档中,哪些实体是我们的钢件,哪些实体是我们的电极,才能进行后面的操作,包括放电图纸,电极编程,钢件编程等功能。下一篇将实现电极的初始化功能,功能比较复杂,可能更新得比较慢一点。利用我们之前封装好的API函数,轻松实现。相关封装API,可以查阅之前发布的文章。这里主要通过写入实体的属性值来识别。

2025-02-12 22:06:04 164

原创 UG 二次开发 UF_ATTR_assign、UF_ATTR_read_value 读写对象属性

写入字符串类型的时候,比较注意的是,要使用new char字符串指针的方式写入,用完之后,要使用delete[]释放内存。我们可以通过 UF_ATTR_value_p_t成员变量 type 判断是否读到数据值之后,才去读取结果数据。UF_ATTR_value_p_t value UF_ATTR_value_t 对象指针,接收读取到的数据。在UG中,我们通过 UF_ATTR_read_value 可以读取对象的属性值。tag_t object 要读取的对象的tag_t值。

2025-02-12 20:26:57 318

原创 通过 uf5947 移动实体 UG二次开发

移动实体,在UG二次开发中,是比较常用的功能。const double rp1 [ 16 ] 变换后的矩阵数据,我们通过 uf5943 ,可以得变换后的矩阵数据。const int * dest_layer 移动、复制后的实体放到哪个图层。tag_t * copies 如果是复制的话,接收复制出来的体的tag。const int * move_or_copy 移动还是复制实体。const tag_t objects [ ] 要移动的实体数组。const int * n_objects 实体的数量。

2025-02-11 20:08:32 79

原创 UG 通过 UF_MODL_transform_entities 移动实体,摆正体 -三面摆正体代码分析

在UG中,我们经常需要对工件进行摆正,虽然UG本身也提供了相关的功能,下面我们看下UG 给我们提供的API 函数:UF_MODL_transform_entities。得到变换后的矩阵数据后,我们就可以通过UF_MODL_transform_entities进行移动实体了。const double from_x_axis [ 3 ] 原坐标系X轴法向。const double from_y_axis [ 3 ] 原坐标系Y轴法向。所以这里还涉及到另一个UF 函数 UF_MTX4_csys_to_csys。

2025-02-11 19:20:48 200

原创 三面摆正体代码分析 CAPIFace::GetFaceVector UG UF_MODL_ask_face_props 获取面的法向

【代码】三面摆正体代码分析 CAPIFace::GetFaceVector 获取面的法向。

2025-02-10 20:05:00 60

原创 UG二次开发之 三面摆正体代码分析

CIUGUIBlock 是一个从UIBlock 派生的一个类,为什么要从UIBlock 派生出CIUGUIBlock,这是为了兼容低版的UG。如果我们不从的UIBlock 派生控件类对象指针,在UG 8.5以下的版本,会出现编译错误的问题。这是一个简单的入门功能,包括了不少的常用的UF函,下面我们将结合成品代码一起分析一下常用的函数,这对初学者是必要的。根据创建好的UI控件,在 initialize_cb 中创建控件的指针对象。//根据选定的面,指定 X,Y坐标系轴。//根据变换的矩阵,平移实体。

2025-02-10 19:50:32 168

原创 vc++ 读写INI, c++读写TXT文件实例

附上源代码:https://download.csdn.net/download/u014657217/89797099。读取INI,主要用到 API GetPrivateProfileString 函数。主要用到 WritePrivateProfileString API函数。在开发过程中,txt文件读写,INI文件读写是经常用到的功能。下面我们介绍一下具体功能的实现。

2024-09-25 19:45:27 273

原创 UG二次开发基础篇-图层管理

添加现有项,把之前DLX生成的两个C++文件复制到工程目录下,并添加到工程中。之前已经做好了IUGTOOL外挂的配置,这里我们就把DLX放到这个文件夹。提示Dlx文件缺失,刚才创建的DLX文件,要放到我们设置好的外挂目录。第一步,获取当前工作图层,并显示到编辑框中.点击上方保存按钮,即可生成控件的基本代码。工程向导中选择DLL, C++,点击完成。通过Ctrl+U加载我们生成的DLL。今天我们来实现第一个UG的应用功能。打开VS,新建一个向导工程。21-29,大类1,小类2。30-48,大类2,小类1。

2024-09-24 23:19:57 720

原创 UG 二次开发-菜单与工具条(二、 应用DLL入口编写)

在上一篇中,我们编写了UG 加载DLL入口写入,这一篇,我们将继续编写应用DLL入口,上一篇中,最后是入加DLL,加载应用DLL,并入口函口数。字符集,我们更改为多字节的,因为UG提供的API,都是多字节的,如果是Unicode字符集的话,调用API时,都需要进行转换,会很麻烦的。工程编译通过,至此,我们已经把外挂的基础框架构建完成了,下一篇开始,我将逐一的把市面上在售外挂的一些基本功能,实现出来,将做具体分析。首先,我们新建应用DLL主工程,工程名称我们就叫做IUGMain。1、把工程更改为64位应用。

2024-09-15 16:52:38 547

原创 UG二次开发,菜单工具栏入口DLL编写

在 extern DllExport void ufusr 函数中,我们首先要获取当前打开UG的怎么版本,因为不同的UG版本,需要对应版本编译的DLL。当然,还要判断当前系统是否为32位系统,如果是32位,我们还要使用32的DLL加载,因为使用32的比较少,这里就不进行介绍了。下一篇我们将进行应用DLL入口的编写,主要是工具栏菜单的绑定,窗口的调用等。根据获取到的UG版本号,这里我们就加载不同的应用DLL了。

2024-09-13 23:35:36 638

原创 UG 二次开发-菜单与工具条

这样子在,在UG启动的时候,就会从 G:\csdnwork\iugtool\startup 加载我们的外挂。我们后面会编写,我们继续介绍菜单和工具条。下一篇,我们将介绍 startup 加载DLL的编写,这涉及到多UG版本的加载方法,以后实际功能DLL的加载方法,菜单栏,工具栏与功能的绑定。打开UG安装目录下面的 UGII\menus\custom_dirs.dat 文件。这三个文件,再打开UG,就可以看到我们的工具栏和菜单已经添加到UG上面。文件我已经上传,大伙可以下载来看下具体的格式。

2024-09-13 20:35:21 784

原创 UG NX二次开发基础篇-外部模式与DLL内部模式(二 DLL内部模式)

通常情况下,我们希望我们的外挂,在UG启动的时候,就自动加载我们的外挂,并以菜单和工具条的方式,显示在UG上面。当然,这也是市面上所有外挂的操作,因为您不可能要求你的用户,以手工加载的方式,去调用你的外挂吧。在上一篇中,有粉丝留言说,启动 bat 文件,启动EXE外挂,会提示无法找到DLL的错误,这是因为UG的环境变量设置有问题,这里,我们把BAT文件作一个修改,直接改为实际目录。EXE外部模式,还有很多部分需要添加的,如参数的传递、输出消息的显示、UG操作的消息显示,等等。Dll执行结束后,会调用。

2024-09-13 19:44:06 1000

原创 UG NX二次开发基础篇-外部模式与DLL内部模式

UG 二次开发,可以发为EXE外部模式和DLL内部模式,这两种有什么不一样呢?

2024-09-13 13:11:25 670

原创 UG 二次开发中多版本管理

从此处复制设置中,我们选择“DEBUG”,实际上,我们最终在UG中使用时,最是好编译成Release版本,为了避免多个版本存在时,名字混乱,我们可以将编译配置做一个命名规则 ,比如UG 11 Release版本的,我们就命名为,UG11R, 调试版本命名为UG11D。我们开发出来的UG 插件,可能在不同的UG版本中使用,如果我们每一个UG版都新建一个工程,这样管理起来会非常的麻烦,下面教大家,如何在一个工程中,同时编译不同版本的UG 插件。从UG11D处复制,这样复制的方法,是减少我们工程的配置。

2024-09-13 00:01:30 637

原创 UG NX二次开发-入门篇(新建第一个工程)

UG 二次开发,由浅入深,C++开发

2024-09-12 23:31:43 1139

VC 读写txt文件,INI文件实例

文件读写, ini 文件读写,是开发过程中经常要用到的功能,这里举个简单的例子,让小白们学习学习

2024-09-25

UG二次开发基础篇-图层管理

功能包括:设置工作图层、图层类别管理、打开、关闭图层。

2024-09-24

UG 菜单工具条文件格式

UG 外挂开发时,使用的工具栏,菜单文件格式。

2024-09-13

TeshHash.zip

由于项目需要Hash加密算法处理,网上找了一些文章,都是 ANSI编码的,于是自己改了一些代码,希望可以帮有需要的人.

2021-12-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除