应用程序可以通过调用函数将实体添加到图形数据库。entmake 与此类似,参数 to 是一个列表,其格式类似于返回的列表。列表描述的新图元将追加到图形数据库中(它将成为图形中的最后一个图元)。如果实体是复杂实体(旧式折线或块),则在完成之前不会追加到数据库中。entmodentmakeentget 以下示例代码在 MYLAYER 层上创建一个圆圈: (entmake '((0 . "CIRCLE") ; Object type (8 . "MYLAYER") ; Layer (10 5.0 7.0 0.0) ; Center point (40 . 1.0) ; Radius )) 以下限制适用于所有实体:entmake
对于 AutoCAD 版本 13 及更高版本中引入的实体类型,还必须在创建实体时指定子类标记(DXF 组代码 100)。所有 AutoCAD 实体都具有 AcDbEntity 子类标记,并且必须显式包含在列表中。此外,还需要一个或多个子类标记条目来标识特定的子实体类型。这些条目必须遵循组代码 0,并且必须位于专门用于定义列表中的实体属性的组代码之前。例如,以下是创建 MTEXT 实体所需的最低代码:entmakeentmakeentmake (entmake '( (0 . "MTEXT") (100 . "AcDbEntity") ; Required for all post-R12 entities. (8 . "ALAYER") (100 . "AcDbMText") ; Identifies the entity as MTEXT. (10 4.0 4.0 0.0) (1 . "Some\\Ptext") )) 下表标识了不需要传递到的列表中的子实体标记条目的实体:entmake
该函数验证是否提供了有效的图层名称、线型名称和颜色。如果引入了新的图层名称,则会自动创建新图层。在冻结图层上创建的对象在解冻之前不会再生。该函数还会检查块名称、标注样式名称、文本样式名称和形状名称(如果实体类型需要)。如果函数无法创建有效的实体,则该函数将失败。entmakeentmakeentmake |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )
GMT+8, 2024-6-10 18:16
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.