- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我知道必须有一种方法可以从 Autocad 绘图中提取自定义 Xdata。
有人可以指出我在哪里搜索的正确方向吗?
我正在寻找一种方法或 AutoLISP 来收集/提取自定义添加的 Xdata
从一堆折线。这些折线将具有以下自定义 Xdata;
最佳答案
要获取与特定应用程序 ID 或多个应用程序 ID 关联的 xdata,只需提供 entget带有可选 applist
的函数实体名称参数之后的参数。
此参数是要为其返回 xdata 的应用程序 ID 列表(如果存在于与提供的实体关联的 DXF 数据中)。
例如,如果您的应用程序 ID 是 "MyAppID"
,您将评估 entget
以下列方式发挥作用:
(entget <entity-name> '("MYAPPID"))
entget
从绘图中选择多段线应用程序列表参数为
("MYAPPID")
,您可以获得一个 DXF 数据,例如:
(
(-1 . <Entity name: 7ffff706880>) ;; Pointer to self
(0 . "LWPOLYLINE") ;; Entity Type
(330 . <Entity name: 7ffff7039f0>) ;; Point to parent
(5 . "FFF") ;; Handle
(100 . "AcDbEntity") ;; Class
(67 . 0) ;; Tilemode
(410 . "Model") ;; Layout
(8 . "0") ;; Layer
(100 . "AcDbPolyline") ;; Subclass
(90 . 4) ;; Vertices
(70 . 1) ;; Bitwise flag (1=Closed)
(43 . 0.0) ;; Constant width
(38 . 0.0) ;; Elevation
(39 . 0.0) ;; Thickness
(10 18.9133 17.6315) ;; Vertex coordinate (OCS)
< ... additional vertex data ... >
(10 18.9133 12.7863) ;; Vertex coordinate (OCS)
(40 . 0.0) ;; Segment starting width
(41 . 0.0) ;; Segment ending width
(42 . 0.0) ;; Segment bulge
(91 . 0) ;; Vertex identifier
(210 0.0 0.0 1.0) ;; Extrusion (normal) vector
;; xData starts here:
(-3
(
"MYAPPID" ;; Application ID
(1002 . "{") ;; Data grouping opening brace
(1040 . 1.2345) ;; Real-valued (Double) data (your area value)
(1070 . 123) ;; Int-valued data (your polyline number)
(1000 . "MyPolyline") ;; String-valued data (your polyline name)
(1002 . "}") ;; Data grouping closing brace
)
)
)
(assoc -3 (entget <entity-name> '("MYAPPID")))
(-3
(
"MYAPPID" ;; Application ID
(1002 . "{") ;; Data grouping opening brace
(1040 . 1.2345) ;; Real-valued (Double) data (your area value)
(1070 . 123) ;; Int-valued data (your polyline number)
(1000 . "MyPolyline") ;; String-valued data (your polyline name)
(1002 . "}") ;; Data grouping closing brace
)
)
(cdr (assoc "MYAPPID" (cdr (assoc -3 (entget <entity-name> '("MYAPPID"))))))
(cdadr (assoc -3 (entget <entity-name> '("MYAPPID"))))
cdadr
是
(cdr (car (cdr)))
的缩写.
(
(1002 . "{") ;; Data grouping opening brace
(1040 . 1.2345) ;; Real-valued (Double) data (your area value)
(1070 . 123) ;; Int-valued data (your polyline number)
(1000 . "MyPolyline") ;; String-valued data (your polyline name)
(1002 . "}") ;; Data grouping closing brace
)
assoc
从中检索相关值如果组代码是唯一的,或者遍历列表并依赖关联对定位。
(defun c:test ( / ent )
(if (setq ent (car (entsel)))
(print (cdadr (assoc -3 (entget ent '("MYAPPID")))))
)
(princ)
)
关于excel - Autocad 2017 提取 Xdata excel lisp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48538688/
AutoCAD 允许将 SPLINE 实体存储在仅由 拟合点,问题是,这样的样条定义有无限 数值正确的解决方案,Autodesk 不提供必要的 从给定的拟合点计算所需参数的信息。 tl;dr - 缺失
是否有用于解析 AutoCAD 文件(DWG 或 DXF)的库(最好是开源的)? 最佳答案 重复(或至少相关)Open source cad drawing (dwg) library in C# &
我看到了 v2.0: 75% there帖子提到 Autocad 并且有一个 AutoCADApp.cs文件,但我似乎找不到使用 Rubberduck 的引用在 Office 之外,在一些随机主机应用
我想提取 Autocad 文件的坐标(纬度、经度)和一些属性,例如名称和颜色。我可以通过 Java 程序执行此操作。 在 Autocad 中,哪种格式是正确的导出格式,以便我可以通过编程方式解析文件、
我使用 dot net 3.50 添加了一个 autocad,我引用了 autocad 2012 中的 acdbmgd.dll、acmgd.dll我该怎么做才能让它在 autocad 2010 和 a
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 3年前关闭。 Improve thi
这可能是我一直想念的简单的东西,但是...... 我可以获得实体名称,但是是否可以使用分配给变量的实体名称来让 Autocad 命令使用该实体作为要操作的选定对象? 最佳答案 要在“立即”模式下使用,
我开发了一个外部 WPF 应用程序来用 C# 生成绘图。我已经能够使用 Autodesk.AutoCAD.Interop 绘制、标注尺寸、添加 block 以及应用程序所需的所有其他内容,但是我似乎无
我已经运行 win32com 来访问 AutoCAD 相当长一段时间了,没有出现任何问题。我了解到应用 makepy 实用程序可以在交互式提示下创建更加用户友好的体验,因此我运行它并添加了“AutoC
我有一个 Autocad 绘图,它是一个土地方 block 的平面图,每个方 block 都包含一个数字。 我尝试通过选择将其转换为图像:文件->导出数据->和文件格式位图(bmp)。 (我有 Aut
我有一个三角形作为折线,我想画一个高度。我发出命令 "line"或 "_line"正确的点,但 AutoCAD 绘制从顶点到相邻顶点的线。 不只是在 AutoLISP 中,AutoCAD 不允许我在折
我想使用代码来分析 dwg 文件。任何人都知道任何 SDK 工具可以开始使用吗? 最佳答案 来自 Wikipedia : Autodesk 根据选择性许可条款销售名为 RealDWG 的读/写库,用于
本文为大家分享了AutoCAD .Net禁止图元被删除的具体代码,供大家参考,具体内容如下 禁止图元被用户删除可以通过 ObjectOverrule 实现。 以下代码: 1、命令 AddEra
我正在使用 C# 编写 AutoCAD 插件,需要在阴影对象的中间(例如,圆心)显示阴影属性。我在代码中有两个问题: 如何访问圆心? 如何获取hatch的属性? 我在 autocad 中的这一行遇到错
我正在研究一个autoCAD .net项目,在其中创建了MVVM模式以选择和修改实体。我想将所选实体的信息/值存储到 View 模型中,更改信息/值(通过弹出的WPF UI以及我的代码),然后将更改应
我正在实现一个应用程序,该应用程序在 AutoCAD 的 ObjectARX 界面中使用 COM 来自动执行绘图操作,例如打开和另存为。 根据文档,我应该能够调用 AcadDocument.SaveA
我对开发 AutoCAD 插件感兴趣,并试图了解几种不同类型的 AutoCAD 插件文件之间的关系: 随 AutoCAD 插件一起提供的托管 DLL ARX files附带 AutoCAD 插件 CU
我正在使用 C#.NET 编写 AutoCAD 插件。我需要一种方法来将 Table.IsReadEnabled 和 Table.IsWriteEnabled 设置为 true。我有一个名为 addR
使用 ObjectARX (C++) for AutoCAD 2010,AutoCAD 实体可以序列化吗? 我们需要将序列化的实体保存在数据库(Oracle、PostgreSQL 等,不是 AcDbD
我正在尝试制作一个表格,当用户提交更多数据时动态添加行: public void addRow(String[] data) { Transaction tr = doc.TransactionMan
我是一名优秀的程序员,十分优秀!