NXOpen.UF.UFView.CycleObjects 的使用
- Public Sub CycleObjects(ByVal view As NXOpen.Tag, ByVal type As NXOpen.UF.UFView.CycleObjectsEnum, ByRef _object As NXOpen.Tag)
- NXOpen.UF.UFView 的成员
在指定视图中循环对象
1.如果视图(view)为NULL_TAG(.NET:NXOpen.Tag.Null),则使用工作视图。
2.type=UF_VIEW_VISIBLE_OBJECTS(.NET:NXOpen.UF.UFView.CycleObjectsEnum.VisibleObjects),返回视图矩形边界内的所有可见对象;不会返回跨越边界或在边界外的对象。不支持制图成员的非矩形边界,如果想获取制图成员的非矩形边界视图的可见对象,或跨越视图边界的对象,请使用UF_VIEW_ask_visible_objects。
3.在结束遍历循环之前,不能删除或者擦除对象,不能通过添加或移除视图进行边界。如果需要删除遍历查找的对象,请创建一个数组,在遍历结束以后,对对象数组进行删除操作。
PS:这个功能将会返回用于显示的实体轮廓边缘(包括面和边)。在用户定义图层(1~256层)中。
个人的理解是:
type=UF_VIEW_VISIBLE_OBJECTS,返回视图边界内的可见对象,包括实体轮廓。
type=UF_VIEW_DEPENDENT_OBJECTS ,返回视图内的可以显示的制图对象(包括隐藏但可以显示的制图对象),不包括不能显示的对象,不包括实体轮廓。
type=UF_VIEW_ERASED_OBJECTS,
type=UF_VIEW_MODIFIED_OBJECTS ,
下面的代码,是获取在工作视图可以显示的40层里的注释。
- Dim theSession = Session.GetSession()
- Dim workPart As Part = theSession.Parts.Work
- Dim theUfSession = UFSession.GetUFSession()
- Dim lw = theSession.ListingWindow
- lw.Open
- Dim _object = NXOpen.Tag.Null
- Do
- theUfSession.View.CycleObjects(NXOpen.Tag.Null, NXOpen.UF.UFView.CycleObjectsEnum.DependentObjects, _object)
- If _object = NXOpen.Tag.Null Then
- Exit Do
- Else
- Dim _type, _subtype As Integer
- theUfSession.Obj.AskTypeAndSubtype(_object, _type, _subtype)
- 'lw.WriteLine(String.Format("Type:{0} Subtype:{1}", _type, _subtype))
- If _type = UFConstants.UF_drafting_entity_type AndAlso _subtype = UFConstants.UF_draft_note_subtype Then
- Dim note1 As Annotations.Note = TryCast(Utilities.NXObjectManager.Get(_object), Annotations.Note)
- If note1 IsNot Nothing Then
- If note1.Layer = 40 Then
- 'TODO:位于40层的注释
- 'theSession.Information.DisplayObjectsDetails({note1})
- End If
- End If
- End If
- End If
- Loop While _object <> NXOpen.Tag.Null
NXOpen.UF.UFView.CycleObjects 的使用的更多相关文章
- 【NXOpen.UF扩展】修改表达式
public static class UFExpEx { /// <summary> /// 修改当前部件的表达式 /// </summary> /// <param ...
- NX二次开发-使用NXOPEN C#手工搭建开发环境配置
新建类库 进来后编译代码,成功 添加NXOPEN的库到项目中 不同NX版本,可能dll所在位置不一样,NX11以上版本在NXBIN这里,NX11以下版本大概在UGII. 添加头文件 using NXO ...
- NX二次开发-C#使用DllImport调用libufun.dll里的UF函数(反编译.net.dll)调用loop等UF函数
在写这篇文章的时候,我正在头晕,因为下班坐车回家,有些晕车了.头疼的要死.也吃不下去饭. 版本:NX11+VS2013 最近这一年已经由C++过度到C#,改用C#做应用程序开发和NX二次开发. C#在 ...
- C#实现创建、编辑NX表达式
在NX8.5中使用C#编辑表达式中有个坑,part.Expressions.Edit该方法鲁棒性很差,当表达式有错时也能编辑成功(手动在NX中增加错误表达式会有弹框,无法创建,而该方法却可以,疑是bu ...
- NX二次开发 克隆
NXOpen.UF.UFSession theUfSession = NXOpen.UF.UFSession.GetUFSession(); try { //初始化 NXOpen.UF.UFClone ...
- 【错误分析】NX error status: 32
在进行NX 制图里面的表格注释合并单元格时,总是报错NX error status: 32,找了很久都不知道问题所在. 报错提示如下: NXOpen.NXException: NX error sta ...
- NX CAM 读取加工参数
'取加工几何试图程序组 Function GetGemoGroup_Name(ByVal camObjectTag As NXOpen.Tag) As String Dim theGemoGroupT ...
- 使用.NET(C#或VB.NET)开发NX外部程序
1.如何不用将exe程序拷贝到UGII目录下运行? 答:在调用NX Open命令函数前,将当前目录移动到NX安装目录\UGII\,NX安装目录必须和环境变量UGII_BASE_DIR的值一致,否则报错 ...
- .NET下使用ufun函数取CAM操作的进给速度
UF_PARAM_ask_subobj_ptr_value,这个函数在封装的时候,给了很大一个坑啊. NXOpen.UF.UFParam.AskSubobjPtrValue(ByVal param_t ...
随机推荐
- 为 Memcached 构建基于 Go 的 Operator 示例
Operator SDK 中的 Go 编程语言支持可以利用 Operator SDK 中的 Go 编程语言支持,为 Memcached 构 建基于 Go 的 Operator 示例.分布式键值存储并管 ...
- IKE~多预共享密钥问题~解决方案
原文链接:Configuring more than one Main-Mode Pre-Shared Key (PSK) *dialup* IPSec phase1 可能需要梯子来翻过高墙.文章内容 ...
- msf宏钓鱼
kali下载python脚本,生成rtf文件: 下载脚本:git clone https://github.com/bhdresh/CVE-2017-8759.git 生成rtf文件: python ...
- 删除数组中指定的元素,然后将后面的元素向前移动一位,将最后一位设置为NULL 。 String[] strs={“aaa”,”ccc”,”ddd”,”eee”,”fff”,”ggg”}; 指定删除字符串“ccc”,把后的元素依次向前移动!!!
public static void main(String[] args) { int temp = -1; String[] strs = {"aaa", "ccc& ...
- list使用详解
List双向链表 再谈链表 List链表的概念再度出现了,作为线性表的一员,C++的STL提供了快速进行构建的方法,为此,在前文的基础上通过STL进行直接使用,这对于程序设计中快速构建原型是相当有必要 ...
- Elasticsearch(ES)的高级搜索(DSL搜索)(下篇)
1. 概述 之前聊了Elasticsearch(ES)的高级搜索(DSL搜索)的一部分内容,今天把剩下的部分聊完. 2. 场景说明 2.1 创建索引同时创建映射 PUT http://192.168 ...
- 网页兼容最新IE声明meta方法
第三种,总是使用最新版本文档模式. 以下是例子: <meta http-equiv="X-UA-Compatible" content="IE=edge" ...
- Centos8.X 搭建Grafana+Jmeter+Influxdb 性能实时监控平台
前言 本篇文章引用了小菠萝测试笔记,大部分内容非原创,基于自身实操过程中,完善了部分. 本篇随笔是在Linux上搭建的,后面会补充在docker以及k8s上如何部署安装 工具介绍 工具 介绍 Jmet ...
- LeetCode2-链表两数和
目录 LeetCode2-链表两数和 题目描述 示例提示 经验教训 参考正解 题目描述 示例提示 经验教训 链表题的判空条件不是万能的,有时候示例会极其复杂,根本难以通过判空来区分不同情况. /** ...
- Linux服务器通用安全加固指南
一.基本系统安全 1.保护引导过程(以Grub引导为例) 在 /etc/inittab 中添加 sp:S:respawn:/sbin/sulogin,以确保当切换到单用户模式时 运行级的配置要求输入 ...