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.hqwc.cn/news/469892.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

跟着pink老师前端入门教程-day26

一、计算机编程基础 &#xff08;一&#xff09;编程语言 1、编程 编程&#xff1a;就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码&#xff0c;并最终得到结果的过程。 计算机程序&#xff1a;就是计算机所执行的一系列的指令集合&#xff0c;而程序全部…

160基于matlab的负熵和峭度信号的盲分离

基于matlab的负熵和峭度信号的盲分离。基于峭度的FastICA算法的收敛速度要快&#xff0c;迭代次数比基于负熵的FastICA算法少四倍以上。SMSE随信噪比增大两种判据下的FastICA算法都逐渐变小&#xff0c;但是基于峭度的算法的SMSE更小&#xff0c;因此基于峭度的FastICA算法性能…

【区块链技术开发语言】在ubuntu18 系统环境下命令操作安装GO语言开发环境

要在Ubuntu 18系统上安装GO语言开发环境,您可以按照以下步骤进行: 打开终端(Ctrl + Alt + T)。 使用以下命令下载GO语言安装包: 或者手动打开链接下载: wget https://golang.org/dl/go1.17.5.linux-amd64.tar.gz确保替换链接中的版本号为最新版本。 解压下载的安装包…

详解tomcat中的jmx监控

目录 1.概述 2.如何开启tomcat的JMX 3.tomcat如何实现JMX的源码分析 1.概述 本文是博主JAVA监控技术系列文章的第二篇&#xff0c;前面一篇文章中我们介绍了JAVA监控技术的基石——jmx&#xff1a; 【JMX】JAVA监控的基石-CSDN博客 本文我们将从使用和源码实现两个方面聊…

Codeforces Round 924(Div.2) A~E

A.Rectangle Cutting (模拟) 题意&#xff1a; 给出一个长方形&#xff0c;通过平行于原始矩形的一条边进行切割&#xff0c;将该矩形切割成两个边长为整数的矩形。询问是否能通过旋转和移动这两个矩形&#xff0c;得到新的矩形。 分析&#xff1a; 可以发现拼成的新长方形…

应用进程跨越网络的通信

目录 1 系统调用和应用编程接口 应用编程接口 API 几种应用编程接口 API 套接字的作用 几种常用的系统调用 1. 连接建立阶段 2. 传送阶段 3. 连接释放阶段 1 系统调用和应用编程接口 大多数操作系统使用系统调用 (system call ) 的机制在应用程序和操作系统之间传递控制…

Python 中实现线性搜索算法

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站零基础入门的AI学习网站~。 前言 线性搜索算法&#xff0c;也称为顺序搜索算法&#xff0c;是一种简单但常用的搜索技术&#xff0c;用于查…

给定n个结点的树,其中有k个结点是特殊结点(未知),定义好结点:该结点到k个特殊结点的距离之和最小。若随机k个结点为特殊结点,求好结点个数的期望值

题目 思路&#xff1a; 举例&#xff1a; 其中黑色结点为特殊结点&#xff0c;可以看出&#xff0c;每种情况都有一个结点的s值不等于k / 2&#xff0c;但是是好结点&#xff0c;所以最后答案加一。 #include <bits/stdc.h> using namespace std; #define int long lon…

5种风格非常经典的免费wordpress主题

免费wordpress主题下载 高端大气上档次的wordpress主题&#xff0c;也可以是免费的&#xff0c;可以在线免费下载。 https://www.wpniu.com/themes/288.html wordpress免费主题 高端大气的wordpress免费主题&#xff0c;LOGO在顶部左侧&#xff0c;导航菜单在顶部右侧。 ht…

codechef121轮(A-G)

codechef121轮&#xff08;A-G)题解 ⭐️A.Leg Space 题目&#xff1a; &#x1f31f;题解&#xff1a; 很简单&#xff0c;比较就行 代码&#xff1a; #include <bits/stdc.h> using namespace std; int main() {// your code goes here int n,m;cin>>n>>…

(一)【Jmeter】JDK及Jmeter的安装部署及简单配置

JDK的安装和环境变量配置 对于Linux、Mac和Windows系统&#xff0c;JDK的安装和环境变量配置方法略有不同。以下是针对这三种系统的详细步骤&#xff1a; 对于Linux系统&#xff1a; 下载适合Linux系统的JDK安装包&#xff0c;可以选择32位或64位的版本。 将JDK的安装包放置…

error An unexpected error occurred: “https://registry.npm.taobao.org

背景&#xff1a; 想使用yarn命令结果报错 问题原因&#xff1a; 原来证书到期了 http://registry.npm.taobao.org/ 把这个放到浏览器搜索的时候自动换成https://registry.npmmirror.com/ 方案&#xff1a; npm cache clean --forcenpm config set registry https://registry…