entmake失败原因
本帖最后由 hndwl 于 2012-12-1 20:19 编辑大家看看,错误在哪里,为什么不能生成呢?看了 entmake的帮助,没有找到原因,先谢谢!
(entmake '((0 . "LWPOLYLINE")
(100 . "AcDbEntity")
(67 . 0)
(410 . "Model")
(8 . "0")
(100 . "AcDbPolyline")
(90 . 3)
(70 . 0)
(43 . 0.0)
(38 . 0.0)
(39 . 0.0)
(10 217.208 703.749)
(40 . 0.0)
(41 . 0.0)
(42 . 0.0)
(10 477.857 472.286)
(40 . 0.0)
(41 . 0.0)
(42 . 0.0)
(10 692.51 668.008)
(40 . 0.0)
(41 . 0.0)
(42 . 0.0)
(210 0.0 0.0 1.0)
)
)
为什么用到程序中就不行呢?大家再看看,这是为什么?
(setq ss (ssget))
(if ss
(progn
(setq i 0)
(setq j 0)
(setq len (sslength ss))
(while (< i len)
(setq stm (ssname ss i))
(setq es (entget stm))
(setq kzsx (assoc -3 (entget stm '("*"))))
;;;;;;;;;;;;;;;;
;(setq es (vl-remove (nth 3 es) es)) ;删除句柄5组码
;(setq es (vl-remove (nth 2 es) es)) ;删除图元名330组码
;(setq es (vl-remove (nth 0 es) es)) ;删除图元名-1组码
(if (/= kzsx nil) (setq es (append es (list kzsx))))
(entdel stm)
(if (entmake es)
(progn (setq j (+ j 1))
(princ (strcat "\n总计选择了"
(rtos len 2 0)
"个目标,已经转换了"
(rtos j 2 0)
"个目标。"
)
)
)
)
(setq i (+ i 1))
)
cad2012测试,可!
查看组码,你的不行有可能要输入90组码;
教你一个方法:
先手工沿“三个点”绘出LWPOLYLINE,然后:
command: (entget(entlast))
查看组码,对比你的程序的组码就知道了。 试过了,没有问题啊,可以生成pl线! 谢谢,我已经处理好了,是我的图形的问题,谢谢!
页:
[1]