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

C# CAD SelectionFilter下TypedValue数组

SelectionFilter是用于过滤AutoCAD实体的类,在AutoCAD中,可以使用它来选择具有特定属性的实体。构造SelectionFilter对象时,需要传入一个TypedValue数组,它用于定义选择规则。

在TypedValue数组中,每个元素表示一个选择条件,它由两个参数组成:DxfCode和值。DxfCode是一个整数枚举值,用于表示选择条件的类型,而值则是与之对应的具体属性值。根据不同的需求,可以定义不同的TypedValue对象,并将它们组合成一个数组,从而实现各种自定义的选择规则。

下面是一些常用的DxfCode枚举值及其对应的属性值:

  • DxfCode.Start(0):选择开始实体
  • DxfCode.End(1):选择结束实体
  • DxfCode.Text(1):选择包含指定文本的实体
  • DxfCode.BlockName(2):选择位于指定块名称的实体
  • DxfCode.LayerName(8):选择位于指定图层的实体
  • DxfCode.Color(62):选择指定颜色的实体
  • DxfCode.LinetypeName(6):选择位于指定线型的实体
  • DxfCode.LinetypeScale(48):选择具有指定线型比例的实体
  • DxfCode.LineWeight(370):选择具有指定线宽的实体
  • DxfCode.EntityHandle(5):选择具有指定句柄的实体
  • DxfCode.XCoordinate(10):选择具有指定X坐标的实体
  • DxfCode.YCoordinate(20):选择具有指定Y坐标的实体
  • DxfCode.ZCoordinate(30):选择具有指定Z坐标的实体
  • DxfCode.Radius(40):选择具有指定半径的实体
  • DxfCode.Diameter(41):选择具有指定直径的实体
  • DxfCode.Angle(50):选择具有指定角度的实体
  • DxfCode.Elevation(38):选择具有指定高度的实体
  • DxfCode.Thickness(39):选择具有指定厚度的实体
  • DxfCode.TextStyleName(7):选择使用指定文本样式的实体
  • DxfCode.TextHeight(40):选择具有指定文本高度的实体
  • DxfCode.TextRotation(50):选择具有指定文本旋转角度的实体
  • DxfCode.TextString(1):选择包含指定字符串的实体
  • DxfCode.ObjectId(330):选择具有指定对象ID的实体

// 选择颜色为1(红色)且位于图层“Layer1”的线段
TypedValue[] values = new TypedValue[] {new TypedValue((int)DxfCode.Color, 1),new TypedValue((int)DxfCode.Start, "LINE"),new TypedValue((int)DxfCode.LayerName, "Layer1")
};

 下面是一个示例代码,演示如何实现选择图层名为"权利人"和"预编号",并且类型为TEXT的实体:

    SelectionFilter innerFilter = new SelectionFilter(new TypedValue[] {new TypedValue((int)DxfCode.Operator, "<or"),new TypedValue((int)DxfCode.LayerName, "权利人"),new TypedValue((int)DxfCode.LayerName, "预编号"),new TypedValue((int)DxfCode.Start, "TEXT"),  // 实体类型为TEXTnew TypedValue((int)DxfCode.Operator, "or"),new TypedValue((int)DxfCode.End, "or"),
});// 使用多边形窗口选择方式让用户选择位于外部多段线内的实体PromptSelectionResult innerSelRes = ed.SelectWindowPolygon(outerPoints, innerFilter);

  
//感谢大家的点赞,收藏,转发,关注 

http://www.lryc.cn/news/300592.html

相关文章:

  • python 爬虫篇(3)---->Beautiful Soup 网页解析库的使用(包含实例代码)
  • 第十二周学习报告
  • Redis面试题整理(持续更新)
  • 一周学会Django5 Python Web开发-Django5 Hello World编写
  • 讲解用Python处理Excel表格
  • WEB APIs(1)
  • C++重新入门-基本输入输出
  • 【C语言】解析刘谦春晚魔术《守岁共此时》
  • 剑指offer——数值的整数次方
  • Tied Block Convolution: 具有共享较薄滤波器的更简洁、更出色的CNN
  • 算法沉淀——BFS 解决 FloodFill 算法(leetcode真题剖析)
  • wordpress外贸成品网站模板
  • 如何使用六图一表七种武器
  • 阿里云游戏服务器租用费用价格组成,费用详单
  • 【C++】C++11上
  • 【前端高频面试题--git篇】
  • c++创建对象
  • 软件实例分享,洗车店系统管理软件会员卡电子系统教程
  • 【Docker进阶】镜像制作-用Dockerfile制作镜像(一)
  • 数据密集型应用系统设计
  • 分布式文件系统 SpringBoot+FastDFS+Vue.js【一】
  • 【PyQt】11-QTextEdit、QPushButton
  • 初识webpack(二)解析resolve、插件plugins、dev-server
  • 什么是自编码器Auto-Encoder?
  • openGauss学习笔记-219 openGauss性能调优-确定性能调优范围-硬件瓶颈点分析-网络
  • SAP PP学习笔记- 豆知识01 - 怎么查询既存品目
  • 相机的机身马达有什么用?
  • 拿捏c语言指针(上)
  • JVM指令手册
  • Linux之多线程