NX/UG二次开发—CAM—UDOP与UDO结合的应用方法

2024-01-16 09:30

本文主要是介绍NX/UG二次开发—CAM—UDOP与UDO结合的应用方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

      用户自定义铣削(UDOP),创建的程序大多通过属性与选择的对象和输入的参数关联,来达到二次编辑的目的。但当选择对象移动或者删除后,并不能象NX自带策略那样,程序状态自动变成未生成的状态(即程序前是一个红色圆圈的标识)。

一、选择对象的关联

 在用户自定义特征(UDO)中,存在删除、选择、更新等事件,通过利用UDO关联对象更新事件,来达到对程序状态的控制。

主要注意事项:

1、将udop的程序链接为LinkType1,这样程序删除,UDO对象自动删除;

2、将选择对象链接为LinkType3,这样只跟随对象更新,链接对象删除,UDO还依旧存在;

3、参数建议还是以属性传递,这样可以方便作为模板调整默认参数;

4、UDO回调建议只注册删除和更新,利用回调卸载刀路,达到提升用户的目的;

5、UDO对象设置不可选择,也不要添加到选择类型中;

二、选择导航器程序节点,高亮显示关联的对象

1、可以通过鼠标钩子

2、通过内部函数注册选择节点回调

3、高版本也可以尝试使用选择回调

三、不同的用户自定义铣图标设置

通过Hook函数,改变NX节点图标返回值来实现设置图标,当卸载或在没有安装自己写的dll时,则恢复到原始状态

四、UDOP中的程序获取

      目前常规方式是通过UDOP的入口ID来获取程序ID,通过程序ID的名字,来检索创建的程序Tag值,按常规流程没有问题,但存在一些工具重命名时,导致程序名重名,这样创建或生成的用户自定义铣会异常。通过移刀命令观察,发现程序ID就是程序Tag的内部指针地址,通过转换将内部指针地址转换为UFUN用的Tag即可。

 

这篇关于NX/UG二次开发—CAM—UDOP与UDO结合的应用方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/612097

相关文章

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

JavaScript中的高级调试方法全攻略指南

《JavaScript中的高级调试方法全攻略指南》什么是高级JavaScript调试技巧,它比console.log有何优势,如何使用断点调试定位问题,通过本文,我们将深入解答这些问题,带您从理论到实... 目录观点与案例结合观点1观点2观点3观点4观点5高级调试技巧详解实战案例断点调试:定位变量错误性能分

Python中 try / except / else / finally 异常处理方法详解

《Python中try/except/else/finally异常处理方法详解》:本文主要介绍Python中try/except/else/finally异常处理方法的相关资料,涵... 目录1. 基本结构2. 各部分的作用tryexceptelsefinally3. 执行流程总结4. 常见用法(1)多个e

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完

JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法

《JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法》:本文主要介绍JavaScript中比较两个数组是否有相同元素(交集)的三种常用方法,每种方法结合实例代码给大家介绍的非常... 目录引言:为什么"相等"判断如此重要?方法1:使用some()+includes()(适合小数组)方法2

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

504 Gateway Timeout网关超时的根源及完美解决方法

《504GatewayTimeout网关超时的根源及完美解决方法》在日常开发和运维过程中,504GatewayTimeout错误是常见的网络问题之一,尤其是在使用反向代理(如Nginx)或... 目录引言为什么会出现 504 错误?1. 探索 504 Gateway Timeout 错误的根源 1.1 后端

MySQL 表空却 ibd 文件过大的问题及解决方法

《MySQL表空却ibd文件过大的问题及解决方法》本文给大家介绍MySQL表空却ibd文件过大的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录一、问题背景:表空却 “吃满” 磁盘的怪事二、问题复现:一步步编程还原异常场景1. 准备测试源表与数据