列文章目录

UG/NX二次开发Siemens官方NXOPEN实例解析—2.1 AssemblyViewer(树列表)
UG/NX二次开发Siemens官方NXOPEN实例解析—2.2 Selection(选择过滤器)
UG/NX二次开发Siemens官方NXOPEN实例解析—2.3 Selection_UIStyler(边倒角)
UG/NX二次开发Siemens官方NXOPEN实例解析—2.4 File2Points(读取文本)
UG/NX二次开发Siemens官方NXOPEN实例解析—2.5 QuickExtrude(拉伸)
UG/NX二次开发Siemens官方NXOPEN实例解析—2.6 CreateNote(注释)
UG/NX二次开发Siemens官方NXOPEN实例解析—2.7 DiameterSymbol(标注符号) 
UG/NX二次开发Siemens官方NXOPEN实例解析—2.8 DrawingCycle(图纸打印)
UG/NX二次开发Siemens官方NXOPEN实例解析—2.9 InteropCallCFromDotNet(VB调用VC++ DLL实践)
UG/NX二次开发Siemens官方NXOPEN实例解析—2.10 InteropNXOpenWithUFWrap(NXOPEN与Ufun混合使用)​​​​​​​

​​​​​​​前言

随着工业智能化的不断发展,UG二次开发的需求越来越多,也吸引了大批的二开从业人员,本人作为一名资深IT从业者(10年+)也毅然加入二次开发大军。

然而,和流行IT行业(互联网、金融、医疗等)相比,工业智能化的门槛显得更高一点,专业的工业软件,相对封闭的开发理念和更小的开发圈子,让刚进入二开的从业者有点举步维艰。边学边整理,希望通过这系列文章的整理能给二开的生态增添一叶绿。


一、知识点提取

本案例实现了在尺寸标注前添加符号的功能,主要知识点如下:

1、选择尺寸标注,实现标注选择过滤器

2、在标注前添加直径符号

二、案例需求分析

1、效果图

2、需求分解

1、选择尺寸标注,实现标注选择过滤器

2、在标注前添加直径符号

三、程序分析

1、源码所在目录

UGOPEN\SampleNXOpenApplications\C++\DiameterSymbol

2、主要功能分析

1、选择尺寸标注,实现标注选择过滤器

int dimpref::filter_cb(NXOpen::BlockStyler::UIBlock* block, NXOpen::TaggedObject* selectedObject)
{if (dynamic_cast<Annotations::Dimension*>(selectedObject) != NULL){return UF_UI_SEL_ACCEPT;}return UF_UI_SEL_REJECT;
}

上一个案例也实现了一个注释选择过滤器,但是实现方法和我们这里不同,有兴趣的同学可以去对比一下,点击进入链接地址

selectNote->GetProperties()->SetSelectionFilter("SelectionFilter",action,selectionMask_array)

2、 在尺寸标注前添加直径符号

void dimpref::EditPrefix(std::vector<NXOpen::TaggedObject*>dimensions, NXString option)
{   Session* session = Session::GetSession();Session::UndoMarkId mark = session->SetUndoMark(Session::MarkVisibilityInvisible, "Edit Appended Text");for (int loop = 0; loop < (int)dimensions.size(); ++loop) {NXOpen::Annotations::Dimension* dimensionPt =dynamic_cast<NXOpen::Annotations::Dimension*>(dimensions[loop]);if (dimensionPt != NULL){Annotations::AppendedText* appendedText = dimensionPt->GetAppendedText();if(strcmp(option.GetText(), "Diameter Symbol") == 0){std::vector<NXString> lines(1);lines[0] = "<O>";appendedText->SetBeforeText(lines);}else if (strcmp(option.GetText(), "None") == 0){std::vector<NXString> lines(0);appendedText->SetBeforeText(lines);}dimensionPt->SetAppendedText(appendedText);delete appendedText;}}session->UpdateManager()->DoUpdate(mark);
}

实现方法如下:

1、通过dimensionPt->GetAppendedText()方法获取选择的标注文本

2、添加直径符号appendedText->SetBeforeText(lines);

3、更新标注session->UpdateManager()->DoUpdate(mark);

UG/NX二次开发Siemens官方NXOPEN实例解析—2.7 DiameterSymbol(标注符号)相关推荐

  1. UG/NX二次开发Siemens官方NXOPEN实例解析—2.8 DrawingCycle(图纸打印)

    列文章目录 UG/NX二次开发Siemens官方NXOPEN实例解析-2.1 AssemblyViewer(树列表) UG/NX二次开发Siemens官方NXOPEN实例解析-2.2 Selectio ...

  2. UG/NX二次开发Siemens官方NXOPEN实例解析—2.6 CreateNote(注释)

    列文章目录 UG/NX二次开发Siemens官方NXOPEN实例解析-2.1 AssemblyViewer(树列表) UG/NX二次开发Siemens官方NXOPEN实例解析-2.2 Selectio ...

  3. UG/NX二次开发Siemens官方NXOPEN实例解析—2.5 QuickExtrude(拉伸)

    列文章目录 UG/NX二次开发Siemens官方NXOPEN实例解析-2.1 AssemblyViewer(树列表) UG/NX二次开发Siemens官方NXOPEN实例解析-2.2 Selectio ...

  4. UG/NX二次开发Siemens官方NXOPEN实例解析—1.6 BlockStyler/SelectionExample

    列文章目录 UG/NX二次开发Siemens官方NXOPEN实例解析-1.1 BlockStyler/ColoredBlock UG/NX二次开发Siemens官方NXOPEN实例解析-1.2 Blo ...

  5. UG/NX二次开发Siemens官方NXOPEN实例解析—1.8 BlockStyler/UDB_CreateCylinder

    列文章目录 UG/NX二次开发Siemens官方NXOPEN实例解析-1.1 BlockStyler/ColoredBlock UG/NX二次开发Siemens官方NXOPEN实例解析-1.2 Blo ...

  6. UG/NX二次开发Siemens官方NXOPEN实例解析—1.2 BlockStyler/EditExpression

    列文章目录 UG/NX二次开发Siemens官方NXOPEN实例解析-1.1 BlockStyler/ColoredBlock UG/NX二次开发Siemens官方NXOPEN实例解析-1.2 Blo ...

  7. UG/NX二次开发Siemens官方NXOPEN实例解析—1.3 BlockStyler/ExtrudewithPreview

    列文章目录 UG/NX二次开发Siemens官方NXOPEN实例解析-1.1 BlockStyler/ColoredBlock UG/NX二次开发Siemens官方NXOPEN实例解析-1.2 Blo ...

  8. UG/NX 二次开发(C#)自动出2D零件图(标准件配置Bata版)

    一.前言 昨天分享了自动出2D零件图的思路(UG/NX 二次开发(C#)自动出2D零件图思路),今天整理了Q群里各位大佬的意见,结合当前实际项目情况,做了一个可配置的半自动出图版本,暂且称之为标准件配 ...

  9. UG NX二次开发(C#)-装配-添加组件AddComponent

    在UG NX的使用过程中,装配是很重要的一环,本文是为了实现组件的批量装配,采用UG NX二次开发,采用的主要函数为AddComponent. AddComponent()的帮助说明如下: 其是属于N ...

最新文章

  1. Kubernetes and Cloud Native Meetup (广州站)资料下载
  2. 方案 mysql 优点_mysql高可用方案分析
  3. 三星Nexus S刷回官方4.0.4教程
  4. 阿里公开自研AI集群细节:64个GPU,百万分类训练速度提升4倍
  5. CSS 文本方向 direction属性
  6. List集合排序总结
  7. jmeter 调试取样器
  8. 计算机打印错误,打印机错误正在打印处理方法,教您电脑打印机错误正在打印处理方法...
  9. Macbook鼠标调节外接显示器亮度 - Shades for Mac(屏幕亮度调节软件) V1.2 苹果电脑版
  10. 道格拉斯简化_简化组织变革:困惑的指南
  11. 现金流量表的编制 (by shany shang)
  12. 2021版小新Pro14 Ubuntu 20.04 配置指南
  13. 关于手机游戏市场的调研方案(终结版)
  14. Android小技巧
  15. html object flash,HTML Flash Object属性(摘)
  16. YOLO自带的图像数据增强方法
  17. Springboot集成百度地图实现定位打卡功能
  18. 【软件群英会】QQ群 12月1日晚上聊天记录
  19. Spring中的applicationContext.xml与SpringMVC的xxx-servl
  20. 2022年618活动4000价位笔记本推荐

热门文章

  1. mui h5+文档最详版
  2. 用好免费crm软件,事半功倍
  3. linux文件描述符泄漏,文件描述符(fd)泄漏排查一篇就够了
  4. Oracle使用实例:exp和expdp导出数据
  5. 论文阅读| 《An Integrated Pipeline Architecture for Modeling Urban Land Use, Travel Demand, and Traffic 》
  6. knn的python代码_《机器学习实战》之一:knn(python代码)
  7. 【连载】《linux入门很简单》电子版——作者:刘金鹏(第一章初来乍到——抵达)...
  8. 自定义 View(一)仿 QQ 列表 Item 侧拉删除功能
  9. html背景图片手机端全屏,css 背景图全屏显示,兼容移动端
  10. 二进制0和1的个数,2的次幂