用autolisp编写一个在直线和坐标标注交点位置插入块的程序
(defun c:sblock (/ ent blk ins)
;定义函数
(setq ent (entsel)) ;获取选择的实体
(if (and (setq blk (car (entget ent))) ;获取实体类型,以判断是否为直线或坐标标注
(= blk "LINE")
(= blk "DIMENSION")) ;如果是直线或者坐标标注,则执行以下命令:
(progn ;开始执行语句块
(command "-INSERT" "K1" "" "" "" "") ;插入K1块
(setq ins (entlast)) ;获取最后一个插入的实体
(entmod '(list '(-1 . <Entity name>)(100 . "Insert")(10 . <Point>))) ;修改最后一个实体的位置
) ;结束执行语句块
) ;结束函数
创作工场
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!