实体数据功能对图形所做的更改将反映在图形屏幕上,前提是要删除、取消删除、修改或创建的实体位于当前可见的区域和图层上。 有一个例外;修改子实体时,它不会更新整个(复杂)实体的图像。例如,如果应用程序通过 100 次调用修改旧式折线的 100 个顶点,则重新计算和重新显示整个折线所需的时间慢得令人无法接受。相反,应用程序可以执行一系列子实体修改,然后通过对函数的单个调用重新显示整个实体。entmodentmodentupd 请考虑以下事项;如果当前图形中的第一个图元是具有多个顶点的旧式折线,则以下代码将修改折线的第二个折点并重新生成其显示。 (setq e1 (entnext)) ; Sets e1 to the polyline's entity name. (setq v1 (entnext e1)) ; Sets v1 to its first vertex. (setq v2 (entnext v1)) ; Sets v2 to its second vertex. (setq v2d (entget v2)) ; Sets v2d to the vertex data. (setq v2d (subst '(10 1.0 2.0 0.0) (assoc 10 v2d) ; Changes the vertex's location in v2d v2d ; to point (1,2,0). ) ) (entmod v2d) ; Moves the vertex in the drawing. (entupd e1) ; Regenerates the polyline entity e1. 参数 to 可以指定主实体或子实体。在任一情况下,都会重新生成整个实体。虽然它的主要用途是复杂图元,但可以再生当前图形中的任何图元。entupdentupdentupd 注意:要确保块参照的所有实例都已更新,必须通过调用 AutoCAD REGEN 命令 (with) 来再生图形。如果修改后的实体位于块定义中,则函数是不够的。commandentupd
|
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )
GMT+8, 2024-5-19 14:01
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.